Initial commit
This commit is contained in:
BIN
resources/RoAMap.jpg
LFS
Executable file
BIN
resources/RoAMap.jpg
LFS
Executable file
Binary file not shown.
BIN
resources/RoAMap_unedited.jpg
LFS
Executable file
BIN
resources/RoAMap_unedited.jpg
LFS
Executable file
Binary file not shown.
BIN
resources/android-chrome-192x192.png
LFS
Executable file
BIN
resources/android-chrome-192x192.png
LFS
Executable file
Binary file not shown.
BIN
resources/android-chrome-384x384.png
LFS
Executable file
BIN
resources/android-chrome-384x384.png
LFS
Executable file
Binary file not shown.
103
resources/appeal/submit.php
Executable file
103
resources/appeal/submit.php
Executable file
@@ -0,0 +1,103 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<link href="/style.css" rel="stylesheet">
|
||||
<head>
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
||||
<link rel="manifest" href="/site.webmanifest">
|
||||
<link rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5">
|
||||
<meta name="msapplication-TileColor" content="#da532c">
|
||||
<meta name="theme-color" content="#ffffff">
|
||||
<div class="header">
|
||||
<a href="/"><img id="logo" src="/logo.png"></a>
|
||||
</div>
|
||||
</head>
|
||||
<body>
|
||||
<meta charset="UTF-8">
|
||||
<ul>
|
||||
<li><a href="/">Home</a></li>
|
||||
<li><a href="/chat">Chat</a></li>
|
||||
<li><a href="/rules">Rules</a></li>
|
||||
<li><a href="https://limework.craftingstore.net" style="color:lightgreen;">🛒 Store</a></li>
|
||||
<li><div class="dropdown">
|
||||
<button class="dropbtn">𝄘</button>
|
||||
<div class="dropdown-content">
|
||||
<a href="https://git.limework.net" style="color:lightgreen;">🏗 Gitea</a>
|
||||
<a href="https://video.govindas.net" style="color:lightgreen;">📺 PeerTube</a>
|
||||
<a href="https://creative.limework.net" style="color:lightgreen;">🗺 Creative Map</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
<div class='content'>
|
||||
<?php
|
||||
|
||||
$banid=htmlspecialchars($_POST['banid']);
|
||||
$banreason=htmlspecialchars($_POST['banreason']);
|
||||
$whyunban=htmlspecialchars($_POST['whyunban']);
|
||||
|
||||
$error=false;
|
||||
|
||||
if (strlen($banid) > 16) {
|
||||
echo "<p style='color:red;'>Error: Ban ID cannot be longer than 16 characters</p><br>";
|
||||
$error=true;
|
||||
} if (strlen($banid) < 16) {
|
||||
echo "<p style='color:red;'>Error: Ban ID cannot be shorter than 16 characters</p><br>";
|
||||
$error=true;
|
||||
} if (preg_match("#[^][A-Za-z0-9]#", $banid)) {
|
||||
echo "<p style='color:red;'>Error: Ban ID contains invalid characters</p><br>";
|
||||
$error=true;
|
||||
} if (strlen($banreason) > 100) {
|
||||
echo "<p style='color:red;'>Error: Ban reason cannot be longer than 100 characters</p><br>";
|
||||
$error=true;
|
||||
} if (strlen($whyunban) > 2000) {
|
||||
echo "<p style='color:red;'>Error: Why do you think you should be unbanned cannot be longer than 2000 characters</p><br>";
|
||||
$error=true;
|
||||
|
||||
} if (!$error) {
|
||||
ini_set('display_errors',1);
|
||||
error_reporting(E_ALL | E_STRICT);
|
||||
// webbanappeal has read-only access to bans table, nothing else. It can only be accessed in localhost. Publishing password to git is fine.
|
||||
$con = mysqli_connect("localhost","webbanappeal","UpUOZhRf5WLAy920wbDqyAKLySHl677juGgL","friends");
|
||||
if (!$con) {
|
||||
echo "<p style='color:red;'>Failed to connect to database: " . mysqli_connect_error();
|
||||
echo "</p>";
|
||||
$error=true;
|
||||
} else {
|
||||
echo "<p>SUCCESS</p>";
|
||||
}
|
||||
|
||||
$sanitized_banid = mysqli_real_escape_string($con, $banid);
|
||||
if ($result = mysqli_query($con, "SELECT `banid` FROM `bans` WHERE `banid` = '$sanitized_banid'")) {
|
||||
if (mysqli_num_rows($result) == 0) {
|
||||
echo "<p style='color:red;'>Error: There is no ban with the specified ban ID. Did you enter it correctly?</p><br>";
|
||||
$error=true;
|
||||
} else {
|
||||
// Free result set
|
||||
mysqli_free_result($result);
|
||||
}
|
||||
}
|
||||
mysqli_close($con);
|
||||
}
|
||||
//must not be else if, as error variable may be set above
|
||||
if ($error) {
|
||||
echo "<form action='/appeal'><input type='submit' value='Go back' /></form>";
|
||||
} else {
|
||||
echo "<p><i>Opening your ban appeal...</i></p>";
|
||||
$newcontent = file_get_contents("/var/www/html/template/index.html");
|
||||
$newcontent=str_replace("Replace this line", "<h1>Ban Appeal</h1><p><b>Ban ID</b><br> $banid</p><p><b>Ban Reason</b><br> $banreason</p><p><b>Why do you think you should be unbanned?</b><br> $whyunban</p><br><h2>Staff Reply</h2><p><i>None yet.</i></p>", $newcontent);
|
||||
if (!file_exists("/var/www/html/appeal/view/$banid.html")) {
|
||||
$handle = fopen("/var/www/html/appeal/view/$banid.html","w+");
|
||||
fwrite($handle,$newcontent);
|
||||
fclose($handle);
|
||||
}
|
||||
echo "<meta http-equiv='Refresh' content='0; url=https://limework.net/appeal/view/$banid' />";
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<p>© Govindas Limework 2015-present <a href="/privacy-policy"><span style="float:right;color:lightgreen;">Privacy Policy</span></a></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
BIN
resources/apple-touch-icon.png
LFS
Executable file
BIN
resources/apple-touch-icon.png
LFS
Executable file
Binary file not shown.
BIN
resources/banner.gif
LFS
Executable file
BIN
resources/banner.gif
LFS
Executable file
Binary file not shown.
BIN
resources/banner.jpg
LFS
Executable file
BIN
resources/banner.jpg
LFS
Executable file
Binary file not shown.
9
resources/browserconfig.xml
Executable file
9
resources/browserconfig.xml
Executable file
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<browserconfig>
|
||||
<msapplication>
|
||||
<tile>
|
||||
<square150x150logo src="/mstile-150x150.png"/>
|
||||
<TileColor>#da532c</TileColor>
|
||||
</tile>
|
||||
</msapplication>
|
||||
</browserconfig>
|
||||
BIN
resources/downloads/GovindaSK.jar
Executable file
BIN
resources/downloads/GovindaSK.jar
Executable file
Binary file not shown.
BIN
resources/favicon-16x16.png
LFS
Executable file
BIN
resources/favicon-16x16.png
LFS
Executable file
Binary file not shown.
BIN
resources/favicon-32x32.png
LFS
Executable file
BIN
resources/favicon-32x32.png
LFS
Executable file
Binary file not shown.
BIN
resources/favicon.ico
LFS
Executable file
BIN
resources/favicon.ico
LFS
Executable file
Binary file not shown.
BIN
resources/greenapple-server-icon.png
LFS
Executable file
BIN
resources/greenapple-server-icon.png
LFS
Executable file
Binary file not shown.
BIN
resources/logo.png
LFS
Executable file
BIN
resources/logo.png
LFS
Executable file
Binary file not shown.
BIN
resources/mstile-150x150.png
LFS
Executable file
BIN
resources/mstile-150x150.png
LFS
Executable file
Binary file not shown.
BIN
resources/resourcepacks/Unloading.zip
LFS
Executable file
BIN
resources/resourcepacks/Unloading.zip
LFS
Executable file
Binary file not shown.
BIN
resources/resourcepacks/VeteranPack1.12.zip
LFS
Executable file
BIN
resources/resourcepacks/VeteranPack1.12.zip
LFS
Executable file
Binary file not shown.
BIN
resources/resourcepacks/VeteranPack1.14.zip
LFS
Executable file
BIN
resources/resourcepacks/VeteranPack1.14.zip
LFS
Executable file
Binary file not shown.
BIN
resources/safari-pinned-tab.svg
LFS
Executable file
BIN
resources/safari-pinned-tab.svg
LFS
Executable file
Binary file not shown.
19
resources/site.webmanifest
Executable file
19
resources/site.webmanifest
Executable file
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"name": "Govindas Limework",
|
||||
"short_name": "Limework",
|
||||
"icons": [
|
||||
{
|
||||
"src": "/android-chrome-192x192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png"
|
||||
},
|
||||
{
|
||||
"src": "/android-chrome-384x384.png",
|
||||
"sizes": "384x384",
|
||||
"type": "image/png"
|
||||
}
|
||||
],
|
||||
"theme_color": "#ffffff",
|
||||
"background_color": "#ffffff",
|
||||
"display": "standalone"
|
||||
}
|
||||
1
resources/store/index.html
Normal file
1
resources/store/index.html
Normal file
@@ -0,0 +1 @@
|
||||
<meta http-equiv="refresh" content="0;url=https://limework.craftingstore.net">
|
||||
164
resources/style.css
Executable file
164
resources/style.css
Executable file
@@ -0,0 +1,164 @@
|
||||
#logo {
|
||||
display: inline-block;
|
||||
float: center;
|
||||
height: 7.0vmax;
|
||||
width: auto; /* correct proportions to specified height */
|
||||
|
||||
}
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
/* Header/Blog Title */
|
||||
.header {
|
||||
padding: 0px;
|
||||
font-size: 40px;
|
||||
text-align: center;
|
||||
background: gold radial-gradient(lightgreen, green);
|
||||
}
|
||||
body {
|
||||
font-family: "Verdana", sans-serif;
|
||||
background: gold radial-gradient(lightgreen, green);
|
||||
}
|
||||
|
||||
ul {
|
||||
list-style-type: none;
|
||||
margin: 2px;
|
||||
padding: 0;
|
||||
overflow: hidden;
|
||||
background-color: #333;
|
||||
border-radius: 25px;
|
||||
float: center;
|
||||
}
|
||||
|
||||
li {
|
||||
float: left;
|
||||
}
|
||||
|
||||
li a {
|
||||
display: block;
|
||||
color: white;
|
||||
text-align: center;
|
||||
padding: 15px 35px;
|
||||
text-decoration: none;
|
||||
font-size: 3.0vmin;
|
||||
}
|
||||
@media only screen and (max-width: 1000px) {
|
||||
li a {
|
||||
display: block;
|
||||
color: white;
|
||||
text-align: center;
|
||||
padding: 15px 35px;
|
||||
text-decoration: none;
|
||||
font-size: 3.0vmax;
|
||||
}
|
||||
}
|
||||
|
||||
li a:hover:not(.active) {
|
||||
background-color: #111;
|
||||
}
|
||||
/* Add a card effect for articles */
|
||||
.content {
|
||||
color: white;
|
||||
background-color: #333;
|
||||
padding: 1.5em;
|
||||
margin-top: 1.5em;
|
||||
border-radius: 1.1em;
|
||||
font-size: 2.0vmin;
|
||||
}
|
||||
@media only screen and (max-width: 1000px) {
|
||||
.content {
|
||||
color: white;
|
||||
background-color: #333;
|
||||
padding: 1.5em;
|
||||
margin-top: 1.5em;
|
||||
border-radius: 1.1em;
|
||||
font-size: 2.0vmax;
|
||||
}
|
||||
}
|
||||
.active {
|
||||
background-color: #04AA6D;
|
||||
}
|
||||
.footer {
|
||||
color: white;
|
||||
background-color: #333;
|
||||
padding: 1em;
|
||||
margin-top: 1em;
|
||||
font-size: 2.0vmin;
|
||||
}
|
||||
@media only screen and (max-width: 1000px) {
|
||||
.footer {
|
||||
color: white;
|
||||
background-color: #333;
|
||||
padding: 1em;
|
||||
margin-top: 1em;
|
||||
font-size: 2.0vmax;
|
||||
}
|
||||
}
|
||||
|
||||
/* URL color */
|
||||
a {
|
||||
color: lightgreen;
|
||||
}
|
||||
/* Dropdown button */
|
||||
.dropdown .dropbtn {
|
||||
display: block;
|
||||
border: none;
|
||||
color: white;
|
||||
text-align: center;
|
||||
padding: 15px 35px;
|
||||
text-decoration: none;
|
||||
font-size: 3.0vmin;
|
||||
background-color: inherit;
|
||||
}
|
||||
@media only screen and (max-width: 1000px) {
|
||||
.dropdown .dropbtn {
|
||||
border: none;
|
||||
display: block;
|
||||
color: white;
|
||||
|
||||
text-align: center;
|
||||
padding: 15px 35px;
|
||||
text-decoration: none;
|
||||
font-size: 3.0vmax;
|
||||
background-color: inherit;
|
||||
}
|
||||
}
|
||||
/* Dropdown content (hidden by default) */
|
||||
.dropdown-content {
|
||||
display: none;
|
||||
position: absolute;
|
||||
background-color: #333;
|
||||
min-width: 160px;
|
||||
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
|
||||
z-index: 1;
|
||||
}
|
||||
/* Links inside the dropdown */
|
||||
.dropdown-content a {
|
||||
float: none;
|
||||
color: white;
|
||||
padding: 12px 16px;
|
||||
text-decoration: none;
|
||||
display: block;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
/* Add a grey background color to dropdown links on hover */
|
||||
.dropdown-content a:hover {
|
||||
background-color: #ddd;
|
||||
}
|
||||
|
||||
/* Show the dropdown menu on hover */
|
||||
.dropdown:hover .dropdown-content {
|
||||
display: block;
|
||||
}
|
||||
input[type="submit"] {
|
||||
display: block;
|
||||
color: white;
|
||||
background-color: #04aa6d;
|
||||
text-align: center;
|
||||
padding: 5px 15px;
|
||||
text-decoration: none;
|
||||
font-size: 2.0vmin;
|
||||
border-radius:1.1em;
|
||||
border-color:green;
|
||||
}
|
||||
89
resources/txt/gui.txt
Executable file
89
resources/txt/gui.txt
Executable file
@@ -0,0 +1,89 @@
|
||||
on inventory click:
|
||||
name of event-inventory is "&6- &a&lPermanent Games &6-" or "&6- &a&lMinigames &6-" or "&a- &6&lList of Games &a-"
|
||||
clicked inventory is not player's inventory
|
||||
cancel event
|
||||
uncolored name of clicked item is set
|
||||
lore of clicked item does not contain "Temporarily down"
|
||||
set {_inventory} to player's current inventory
|
||||
set {_name} to uncolored name of clicked item
|
||||
if {_name} is "Snowball":
|
||||
make player execute command "/join snowball"
|
||||
else if {_name} is "Govindas Survival Games BETA":
|
||||
make player execute command "/join govindassg"
|
||||
else if {_name} is "Creative World":
|
||||
make player execute command "/join creative"
|
||||
else if {_name} is "Spleent":
|
||||
make player execute command "/join spleent"
|
||||
else if {_name} is "Mini Sky Walls":
|
||||
make player execute command "/join miniskywalls"
|
||||
else if {_name} is "Elemental Archers":
|
||||
make player execute command "/join ea"
|
||||
else if {_name} is "Knockout":
|
||||
make player execute command "/join knockout"
|
||||
else if {_name} is "The Mining Camp BETA":
|
||||
make player execute command "/jointmc"
|
||||
else if {_name} is "1v1":
|
||||
make player execute command "/join 1v1"
|
||||
else if {_name} is "Friendly Survival":
|
||||
make player execute command "/join survival"
|
||||
else if {_name} is "Checkers":
|
||||
make player execute command "/joincheckers"
|
||||
else if {_name} is "Parkour":
|
||||
make player execute command "/joinparkour"
|
||||
#else if {_name} is "Old-school Survival BETA":
|
||||
#rpGui(player, "OSS")
|
||||
else if {_name} is "Bomberman":
|
||||
make player execute command "/join bomberman"
|
||||
else if {_name} is "RTS Castle Wars BETA":
|
||||
make player execute command "/join castlewars"
|
||||
command /games [<text>]:
|
||||
trigger:
|
||||
set {_language} to epic variable "%uuid of player%::language"
|
||||
if {-inventorycache::games::%{_language}%} is not set:
|
||||
set {-inventorycache::games::%{_language}%} to chest inventory with 6 rows named "&a- &6&lList of Games &a-"
|
||||
|
||||
set {_sp} to translate("Friendly survival with tech and magic! Explore many dimensions, grow beautiful trees and more!", player)
|
||||
set slot 0 of {-inventorycache::games::%{_language}%} to bottle o' enchanting named "&aFriendly Survival" with lore colored "&7%{_sp}%", "", translate("&aThis game can be played &e&lalone&a.", player), "", "&6⇨ &a&l%translate(""CLICK TO PLAY"", player)%"
|
||||
|
||||
set slots (1, 10, 19, 28, 37, 46) of {-inventorycache::games::%{_language}%} to light green stained glass pane named "&a"
|
||||
|
||||
set {_sp} to translate("Creative world with a lot of useful features! WorldEdit, VoxelSniper, goBrush, goPaint, a huge collection of player heads and even a lot of furniture!", player)
|
||||
set slot 9 of {-inventorycache::games::%{_language}%} to brick block named "&aCreative World" with lore colored "&7%{_sp}%", "", translate("&aThis game can be played &e&lalone&a.", player), "", "&6⇨ &a&l%translate(""CLICK TO PLAY"", player)%"
|
||||
|
||||
set {_sp} to translate("Complete parkour races, earn prizes and compete in leaderboards!", player)
|
||||
set slot 18 of {-inventorycache::games::%{_language}%} to ladder item named "&aParkour" with lore colored "&7%{_sp}%", "", translate("&aThis game can be played &e&lalone&a.", player), "", "&6⇨ &a&l%translate(""CLICK TO PLAY"", player)%"
|
||||
|
||||
set {_sp} to translate("Mine ores, upgrade pickaxes, buy awesome upgrades and unlock new caves!", player)
|
||||
set slot 27 of {-inventorycache::games::%{_language}%} to diamond pickaxe with no nbt named "&aThe Mining Camp &c&lBETA" with lore colored "&7%{_sp}%", "", translate("&aThis game can be played &e&lalone&a.", player), "", "&6⇨ &a&l%translate(""CLICK TO PLAY"", player)%"
|
||||
|
||||
set {_sp} to translate("Here you can find little GUI minigames, these minigames unlike others, aren't made by us, it's just a downloaded plugin, but they are still fun!", player)
|
||||
set slot 36 of {-inventorycache::games::%{_language}%} to {heads::rubix} named "&a&lGUI Minigames" with lore colored "&7%{_sp}%", "", "&a&l%translate(""CLICK TO OPEN MENU"", player)%"
|
||||
|
||||
set {_sp} to translate("Shoot other players with snowballs, buy powerups with melons and play in many different modes!", player)
|
||||
set slot 3 of {-inventorycache::games::%{_language}%} to snowball named "&fSnowball" with lore colored "&7%{_sp}%", "", "&a◗ &7Deathmatch", "&a◗ &7Team Deathmatch", "&a◗ &7Team Elimination", "&a◗ &7Capture The Flag", "&a◗ &7Juggernaut", "", "&a%translate(""This game can be played with &e&l2&a&l+ &aplayers."", player)%", "", "&6⇨ &a&l%translate(""CLICK TO PLAY"", player)%"
|
||||
|
||||
set {_sp} to translate("Loot chests, fight other players, find randomly generated loot with interesting abilities and throw mob eggs like pokeballs!", player)
|
||||
set slot 5 of {-inventorycache::games::%{_language}%} to slime spawn egg named "&aGovindas Survival Games &c&lBETA" with lore colored "&7%{_sp}%", "", "&a%translate(""This game can be played with &e&l2&a&l+ &aplayers."", player)%", "", "&6⇨ &a&l%translate(""CLICK TO PLAY"", player)%"
|
||||
|
||||
set {_sp} to translate("Quickly test your skill by fighting other players with a huge variety of modifiers!", player)
|
||||
set slot 7 of {-inventorycache::games::%{_language}%} to lead named "&a1v1" with lore colored "&7%{_sp}%", "", "", "&a%translate(""This game can be played with only &e&l2 &aplayers."", player)%", "", "&6⇨ &a&l%translate(""CLICK TO PLAY"", player)%"
|
||||
|
||||
set {_sp} to translate("Play various classes with different abilities and use your bow skills to win in many different modes!", player)
|
||||
set slot 21 of {-inventorycache::games::%{_language}%} to bow named "&aElemental Archers" with lore colored "&7%{_sp}%", "", "&a◗ &7Deathmatch", "&a◗ &7Team Deathmatch", "&a◗ &7Team Elimination", "&a◗ &7Capture The Flag", "&a◗ &7Juggernaut", "", "&a%translate(""This game can be played with &e&l2&a&l+ &aplayers."", player)%", "", "&6⇨ &a&l%translate(""CLICK TO PLAY"", player)%"
|
||||
|
||||
set {_sp} to translate("Hit to level up your stick and knock other players in to the void!", player)
|
||||
set slot 23 of {-inventorycache::games::%{_language}%} to stick named "&aKnockout" with lore colored "&7%{_sp}%", "", "&a%translate(""This game can be played with &e&l2&a&l+ &aplayers."", player)%", "", "&6⇨ &a&l%translate(""CLICK TO PLAY"", player)%"
|
||||
|
||||
set {_sp} to translate("Spleef + TNT = Spleent! Explode other players into the void!", player)
|
||||
set slot 25 of {-inventorycache::games::%{_language}%} to any hoe named "&aSpleent" with lore colored "&7%{_sp}%", "", "&a%translate(""This game can be played with &e&l2&a&l+ &aplayers."", player)%", "", "&6⇨ &a&l%translate(""CLICK TO PLAY"", player)%"
|
||||
|
||||
set {_sp} to translate("Defend your castle, attack other castles, command your army and become the best commander!", player)
|
||||
set slot 39 of {-inventorycache::games::%{_language}%} to stone brick named "&6RTS &7Castle Wars &c&lBETA" with lore colored "&7%{_sp}%", "", "&a%translate(""This game can be played with &e&l2&a&l+ &aplayers."", player)%", "", "&6⇨ &a&l%translate(""CLICK TO PLAY"", player)%"
|
||||
|
||||
set {_sp} to translate("Explode your way to other players and explode them!", player)
|
||||
set slot 41 of {-inventorycache::games::%{_language}%} to tnt named "&aBomberman" with lore colored "&7%{_sp}%", "", "&a%translate(""This game can be played with &e&l2&a&l+ &aplayers."", player)%", "", "&6⇨ &a&l%translate(""CLICK TO PLAY"", player)%"
|
||||
|
||||
set {_sp} to translate("Gather resources, prepare for fight, protect your Crystal of Life, attack other crystals and win the game!", player)
|
||||
set slot 43 of {-inventorycache::games::%{_language}%} to light green wool or light blue wool or red wool named "&aMini Sky Walls" with lore colored "&7%{_sp}%", "", "&a%translate(""This game can be played with &e&l2&a&l+ &aplayers."", player)%", "", "&6⇨ &a&l%translate(""CLICK TO PLAY"", player)%"
|
||||
|
||||
open {-inventorycache::games::%{_language}%} to player
|
||||
57
resources/txt/lore.sk
Executable file
57
resources/txt/lore.sk
Executable file
@@ -0,0 +1,57 @@
|
||||
#override with lore expression so I can make veeery custom lores
|
||||
#TODO I think Spigot API has a way to get last color code, that would highly reduce count of code needed for this
|
||||
expression %itemstack% with lore %strings%:
|
||||
get:
|
||||
set {_item} to expression 1
|
||||
set {_lore::*} to expressions 2
|
||||
|
||||
|
||||
loop {_lore::*}:
|
||||
if loop-value contains "||":
|
||||
set {_list::*} to loop-value split at "||"
|
||||
delete {_lore::%loop-index%}
|
||||
loop {_list::*}:
|
||||
add 1 to {_i}
|
||||
set {_lore::%loop-index-1%.%{_i}%} to loop-value-2
|
||||
loop {_lore::*}:
|
||||
length of uncolored loop-value is higher than 25
|
||||
delete {_lore::%loop-index%}
|
||||
set {_index} to loop-index parsed as a number
|
||||
set {_line} to loop-value
|
||||
set {_line::*} to {_line} split at " "
|
||||
set {_colors} to loop-value
|
||||
set {_color} to ""
|
||||
delete {_last}
|
||||
{_firstline} is not set:
|
||||
while first index of "§" in {_colors} is not -1:
|
||||
add 1 to {_nolag}
|
||||
if {_nolag} is higher than 1000:
|
||||
send "LAGG lore" to ops
|
||||
stop
|
||||
set {_c} to first index of "§" in {_colors}
|
||||
set {_final} to substring of {_colors} from characters {_c} to {_c}+1
|
||||
set {_color} to "%{_color}%%{_final}%"
|
||||
set {_last} to {_final}
|
||||
|
||||
set {_colors} to substring of {_colors} from characters {_c}+1 to length of {_colors}
|
||||
else:
|
||||
set {_firstline} to true
|
||||
|
||||
|
||||
loop {_line::*}:
|
||||
if {_text} is not set:
|
||||
set {_text} to "%{_color}%%loop-value-2%"
|
||||
else:
|
||||
set {_text} to "%{_text}% %loop-value-2%"
|
||||
if length of uncolored {_text} is not less than 25:
|
||||
add 0.0001 to {_adder}
|
||||
set {_A} to {_index}+{_adder}
|
||||
set {_lore::%{_A}%} to {_text}
|
||||
delete {_text}
|
||||
{_text} is set:
|
||||
add 0.0002 to {_adder}
|
||||
set {_A} to {_index}+{_adder}
|
||||
set {_lore::%{_A}%} to {_text}
|
||||
delete {_text}
|
||||
set lore of {_item} to {_lore::*}
|
||||
return {_item}
|
||||
50
resources/txt/mcservers.txt
Executable file
50
resources/txt/mcservers.txt
Executable file
@@ -0,0 +1,50 @@
|
||||
|
||||
title: Govindas Limework[Hub][Creative][Minigames][PVE]{1.12.2&1.13.2}{Survival}{Custom}
|
||||
|
||||
```
|
||||
.
|
||||
```
|
||||
**Hello everyone! I'm here to present you my server, Govindas Limework!**
|
||||
|
||||
10+ gamemodes and frequent updates! We started our server in **January 2015** and it has been under development ever since! Nearly everything is custom-coded. We focus on the enjoyment of low player count, so just 4 players can experience the full fun of the server! There are also many games which **can be played alone.**
|
||||
|
||||
**GAMEMODES**
|
||||
|
||||
**Castle Wars:** *Train and command your own AI army and battle other players AI armies! The first Real-Time Strategy game in Minecraft!*
|
||||
|
||||
**Snowball:** *Shoot other players with snowballs in even 6 different modes, ranging from Juggernaut to CTF!*
|
||||
|
||||
**Friendly Survival:** *10+ dimensions, realistic water mechanics, realistic weathers, slimefun and much more!*
|
||||
|
||||
**Bomberman:** *Minecraft minigame based on an old arcade with the same name. Use bombs to trap and destroy your opponents.*
|
||||
|
||||
**Elemental Archers:** *Play using various different classes, from Nature Archer to Ender Archer! Many modes and a big variety of playstyles.*
|
||||
|
||||
**Creative World:** *Build using free worldedit, furniture (fridges, lamps, beds, chairs and many other new blocks in Minecraft!) and various other tools, THE BEST CREATIVE WORLD!*
|
||||
|
||||
**Parkour:** *Complete parkour courses and compete with others for the best timing!*
|
||||
|
||||
**Checkers:** *Play the ancient strategy game in Minecraft!*
|
||||
|
||||
**1v1:** *Test your fighting skills and modify your duels with many modifiers!*
|
||||
|
||||
**Spleent:** *Explode other players into the void! Super fast-paced game!*
|
||||
|
||||
(some gamemodes have been cut from the list to reduce text)
|
||||
|
||||
**A lot of other awesome features await you on the server! Feel free to join now!**
|
||||
|
||||
Server IP: **mc.limework.net**
|
||||
|
||||
Version: 1.12.2 and 1.13.2 (varies from server to server)
|
||||
|
||||
Matrix: https://limework.net/chat
|
||||
|
||||
Rules: https://limework.net/rules
|
||||
|
||||
Website: https://limework.net/
|
||||
|
||||
https://limework.net/banner.gif
|
||||
```
|
||||
.
|
||||
```
|
||||
69
resources/txt/newlore.sk
Executable file
69
resources/txt/newlore.sk
Executable file
@@ -0,0 +1,69 @@
|
||||
import:
|
||||
org.bukkit.ChatColor
|
||||
|
||||
options:
|
||||
|
||||
CharacterLimitPerLine: 25
|
||||
LegacyLoreSupport: true
|
||||
|
||||
#USAGE
|
||||
#set slot 0 of player's current inventory to emerald with lore "your lore here", "maybe here too?"
|
||||
|
||||
#OR if the syntax override isn't working for you
|
||||
#set slot 0 of player's current inventory to emerald with custom lore "your lore here", "maybe here too?"
|
||||
|
||||
expression %itemstack% with [custom] lore %strings%:
|
||||
get:
|
||||
set {_item} to expression 1
|
||||
set {_lore::*} to expressions 2
|
||||
|
||||
|
||||
if {@LegacyLoreSupport} is true:
|
||||
loop {_lore::*}:
|
||||
|
||||
loop loop-value split at "||":
|
||||
add 1 to {_i}
|
||||
|
||||
#the weird index is needed to keep things in right line order after split
|
||||
|
||||
set {_lore::%loop-index-1%.0%{_i}%} to loop-value-2
|
||||
|
||||
if {_lore::%loop-index%.0%{_i}%} is set:
|
||||
delete {_lore::%loop-index%}
|
||||
|
||||
loop {_lore::*}:
|
||||
length of uncolored loop-value is higher than {@CharacterLimitPerLine}:
|
||||
|
||||
loop loop-value split at " ":
|
||||
|
||||
set {_color} to ChatColor.getLastColors({_lasttext} ? loop-value-2)
|
||||
|
||||
if {_textt} is not set:
|
||||
set {_textt} to "%{_color}%%loop-value-2%"
|
||||
else:
|
||||
set {_textt} to "%{_textt}% %loop-value-2%"
|
||||
|
||||
#for getting color codes of last text later
|
||||
|
||||
set {_lasttext} to {_textt}
|
||||
|
||||
#when one line reaches character limit
|
||||
|
||||
if length of uncolored {_textt} is not less than {@CharacterLimitPerLine}:
|
||||
add {_textt} to {_lorefinal::*}
|
||||
delete {_textt}
|
||||
|
||||
#when the whole line is over, but not reached character limit
|
||||
|
||||
{_textt} is set:
|
||||
add {_textt} to {_lorefinal::*}
|
||||
delete {_textt}
|
||||
|
||||
else:
|
||||
|
||||
#when the line doesn't need splitting, it is shorter than the character limit
|
||||
|
||||
add loop-value to {_lorefinal::*}
|
||||
|
||||
set lore of {_item} to {_lorefinal::*}
|
||||
return {_item}
|
||||
Reference in New Issue
Block a user