Skip to content

Commit

Permalink
Release V1.6.0
Browse files Browse the repository at this point in the history
- *[NEW]* - added bypass permission `theSpawn.bypass`
- *[NEW]* - added more forms for homes and warps (sethome, delhome, setwarp, delwarp)
- *[NEW]* - added a new permission: `theSpawn.warp.admin` - teleport you to all warps with or without the permission for the warp
- *[UPDATE & FIX]* - `WarpInfo::getPermission()` will now register the permission if the permission isn't registered
- *[FIX]* - fixed a crash on updating messages.yml (custom messages)
  • Loading branch information
supercrafter333 committed Dec 24, 2021
1 parent b4c4f6b commit f289727
Show file tree
Hide file tree
Showing 19 changed files with 274 additions and 71 deletions.
8 changes: 8 additions & 0 deletions .changlogs.md
Original file line number Diff line number Diff line change
Expand Up @@ -145,4 +145,12 @@ End of theSpawn PM3 support
### Changelog V1.5.3 » V1.5.4
> This version doesn't contain any major code changes from the previous version. It's only a bug fix update.
- *[FIX]* - Fixed some bugs with warp permissions and forms
- *[VERSION]* - Version bump

### Changelog V1.5.4 » V1.6.0
- *[NEW]* - added bypass permission `theSpawn.bypass`
- *[NEW]* - added more forms for homes and warps (sethome, delhome, setwarp, delwarp)
- *[NEW]* - added a new permission: `theSpawn.warp.admin` - teleport you to all warps with or without the permission for the warp
- *[UPDATE & FIX]* - `WarpInfo::getPermission()` will now register the permission if the permission isn't registered
- *[FIX]* - fixed a crash on updating messages.yml (custom messages)
- *[VERSION]* - Version bump
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ assignees: ''
# Bug: [Bug Name]

### Informations
theSpawn Version: [1.5.0]
theSpawn Version: [1.6.0]
Server-OS: [Linux Ubuntu 20.04]
PHP Version: [8.0.12]
PocketMine-MP Version: [4.0.0]
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[![Discord](https://img.shields.io/badge/chat-on%20discord-7289da.svg)](https://discord.gg/ca6cWPpERp)
# theSpawn - V1.5.4 [![](https://poggit.pmmp.io/shield.state/theSpawn)](https://poggit.pmmp.io/p/theSpawn) [![](https://poggit.pmmp.io/shield.dl.total/theSpawn)](https://poggit.pmmp.io/p/theSpawn)
# theSpawn - V1.6.0 [![](https://poggit.pmmp.io/shield.state/theSpawn)](https://poggit.pmmp.io/p/theSpawn) [![](https://poggit.pmmp.io/shield.dl.total/theSpawn)](https://poggit.pmmp.io/p/theSpawn)

**This plugin will replace MSpawns! Help me to make this plugin better!**

Expand Down
15 changes: 5 additions & 10 deletions plugin.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
name: theSpawn
version: 1.5.4
version: 1.6.0
api: 4.0.0
main: supercrafter333\theSpawn\theSpawn
author: supercrafter333

permissions:
theSpawn.bypass:
default: op
theSpawn.setspawn.cmd:
default: op
theSpawn.delspawn.cmd:
Expand Down Expand Up @@ -37,12 +39,5 @@ permissions:
default: true
theSpawn.tpdecline.cmd:
default: true

# TODO: add permissions with childrens
# theSpawn.bypass:
# default: op
# children:
#
# theSpawn.tpas.cmd:
# default: true
# children:
theSpawn.warp.admin: #teleport you to all warps with or without the permission for the warp
default: op
19 changes: 18 additions & 1 deletion resources/Languages/en_BE.yml
Original file line number Diff line number Diff line change
Expand Up @@ -79,10 +79,27 @@ delay-stopped-by-move: "§cTeleport cancelled because you've moved you."
form-warp-menu-title: "Warps"
form-warp-menu-content: "Please select a warp."
form-warp-menu-warpButton: "§b{warp}§r{line}§7click to teleport"
# setwarp
form-setWarp-menu-title: "Set a warp"
form-setWarp-menu-content: "Here you can set a new warp."
form-setWarp-menu-inputNameDescription: "Name of the new warp"
form-setWarp-menu-inputPermDescription: "Permission of the new warp (optional)"
# delwarp
form-rmWarp-menu-title: "Delete a warp"
form-rmWarp-menu-content: "Here you can delete a warp."
form-rmWarp-menu-warpButton: "§b{warp}§r{line}§7click to delete"
# homes
form-home-menu-title: "Homes"
form-home-menu-content: "Please select a home."
form-home-menu-homeButton: "§b{home}§r{line}§7click to teleport"
# sethome
form-setHome-menu-title: "Set a home"
form-setHome-menu-content: "Here you can set a new home."
form-setHome-menu-inputDescription: "Name of the new home"
# delhome
form-rmHome-menu-title: "Delete a home"
form-rmHome-menu-content: "Here you can delete a home."
form-rmHome-menu-homeButton: "§b{home}§r{line}§7click to delete"

#errors
#uses: none
Expand All @@ -108,7 +125,7 @@ no-spawn-set-for-world: "§cThere's no spawn set for world {world}!"



#compatible with v1.5.0
#compatible with v1.6.0 (and lower)


############################
Expand Down
3 changes: 2 additions & 1 deletion resources/Languages/fr_FR.yml
Original file line number Diff line number Diff line change
Expand Up @@ -97,8 +97,9 @@ remove-random-hub-before: "§cVeuillez supprimer le hub avant de supprimer celui
no-spawn-set-for-world: "§cAucun spawn définis pour le monde {world}!"


#compatible with v1.4.3 (and lower)

#TODO: add compatiblity for v1.5.0
#TODO: add compatiblity for v1.5.0 & v1.6.0


############################
Expand Down
19 changes: 18 additions & 1 deletion resources/Languages/ger_DE.yml
Original file line number Diff line number Diff line change
Expand Up @@ -79,10 +79,27 @@ delay-stopped-by-move: "§cTeleportation fehlgeschlagen! Du hast dich Bewegt."
form-warp-menu-title: "Warps"
form-warp-menu-content: "Bitte wähle einen Warp aus."
form-warp-menu-warpButton: "§b{warp}§r{line}§7Klicke für Teleportation"
# setwarp
form-setWarp-menu-title: "Setze einen Warp"
form-setWarp-menu-content: "Hier kannst du einen neuen Warp setzen."
form-setWarp-menu-inputNameDescription: "Name des neuen Warps"
form-setWarp-menu-inputPermDescription: "Berechtigung des neuen Warps (optional)"
# delwarp
form-rmWarp-menu-title: "Lösche einen Warp"
form-rmWarp-menu-content: "Hier kannst du einen Warp löschen."
form-rmWarp-menu-warpButton: "§b{warp}§r{line}§7Klicke zum Löschen"
# homes
form-home-menu-title: "Homes"
form-home-menu-content: "Bitte wähle ein Home aus."
form-home-menu-homeButton: "§b{home}§r{line}§7Klicke für Teleportation"
# sethome
form-setHome-menu-title: "Setze ein Home"
form-setHome-menu-content: "Hier kannst du ein neues Home setzen."
form-setHome-menu-inputDescription: "Name des Homes"
# delhome
form-rmHome-menu-title: "Lösche ein Home"
form-rmHome-menu-content: "Hier kannst du ein Home löschen."
form-rmHome-menu-homeButton: "§b{home}§r{line}§7Klicke zum Löschen"

#errors
#uses: none
Expand All @@ -108,7 +125,7 @@ no-spawn-set-for-world: "§cEs wurde noch kein Spawn für die Welt {world} festg



#compatible with v1.5.0
#compatible with v1.6.0 (and lower)


############################
Expand Down
19 changes: 18 additions & 1 deletion resources/Languages/messages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -77,10 +77,27 @@ delay-stopped-by-move: "§cTeleport cancelled because you've moved you."
form-warp-menu-title: "Warps"
form-warp-menu-content: "Please select a warp."
form-warp-menu-warpButton: "§b{warp}§r{line}§7click to teleport"
# setwarp
form-setWarp-menu-title: "Set a warp"
form-setWarp-menu-content: "Here you can set a new warp."
form-setWarp-menu-inputNameDescription: "Name of the new warp"
form-setWarp-menu-inputPermDescription: "Permission of the new warp (optional)"
# delwarp
form-rmWarp-menu-title: "Delete a warp"
form-rmWarp-menu-content: "Here you can delete a warp."
form-rmWarp-menu-warpButton: "§b{warp}§r{line}§7click to delete"
# homes
form-home-menu-title: "Homes"
form-home-menu-content: "Please select a home."
form-home-menu-homeButton: "§b{home}§r{line}§7click to teleport"
# sethome
form-setHome-menu-title: "Set a home"
form-setHome-menu-content: "Here you can set a new home."
form-setHome-menu-inputDescription: "Name of the new home"
# delhome
form-rmHome-menu-title: "Delete a home"
form-rmHome-menu-content: "Here you can delete a home."
form-rmHome-menu-homeButton: "§b{home}§r{line}§7click to delete"


#errors
Expand Down Expand Up @@ -108,7 +125,7 @@ no-spawn-set-for-world: "§cThere's no spawn set for world {world}!"


#don't change this
version: "1.5.4"
version: "1.6.0"


############################
Expand Down
4 changes: 2 additions & 2 deletions resources/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,15 +41,15 @@ use-forms: "true"
# Languages:
# -> 'en_BE' - British English
# -> 'ger_DE' - German
# -> 'fr_FR' - French
# -> 'fr_FR' - French (outdated)
# -> 'CUSTOM' - Edit the messages yourself
#
# Chose you language here:
language: "en_BE"


#DON'T CHANGE THIS!!
version: "1.5.4"
version: "1.6.0"

############################
##########theSpawn##########
Expand Down
14 changes: 12 additions & 2 deletions src/supercrafter333/theSpawn/Commands/DelhomeCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
use pocketmine\command\CommandSender;
use pocketmine\world\sound\GhastShootSound;
use pocketmine\player\Player;
use supercrafter333\theSpawn\Forms\HomeForms;
use supercrafter333\theSpawn\MsgMgr;
use supercrafter333\theSpawn\theSpawn;

Expand Down Expand Up @@ -48,8 +49,17 @@ public function execute(CommandSender $s, string $commandLabel, array $args): bo
$s->sendMessage($prefix . MsgMgr::getOnlyIGMsg());
return true;
}
if (!count($args) >= 1) {
$s->sendMessage($this->usageMessage);
if (count($args) < 1) {
if ($pl->useForms()) {
if ($pl->listHomes($s) == null) {
$s->sendMessage($prefix . MsgMgr::getMsg("no-homes-set"));
return true;
}
$warpForms = new HomeForms($s->getName());
$warpForms->openRmHome($s);
} else {
$s->sendMessage($this->usageMessage);
}
return true;
}
if ($pl->rmHome($s, $args[0]) == false) {
Expand Down
18 changes: 12 additions & 6 deletions src/supercrafter333/theSpawn/Commands/DelwarpCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
use pocketmine\world\sound\GhastShootSound;
use pocketmine\player\Player;
use pocketmine\plugin\Plugin;
use supercrafter333\theSpawn\Forms\WarpForms;
use supercrafter333\theSpawn\MsgMgr;
use supercrafter333\theSpawn\theSpawn;

Expand Down Expand Up @@ -54,12 +55,17 @@ public function execute(CommandSender $s, string $commandLabel, array $args): vo
$s->sendMessage($prefix . MsgMgr::getNoPermMsg());
return;
}
if ($pl->useWarps() == false) {
$s->sendMessage($prefix . MsgMgr::getMsg("warps-deactivated"));
return;
}
if (empty($args[0])) {
$s->sendMessage($prefix . $this->getUsage());
if (count($args) < 1) {
if ($pl->useForms()) {
if ($pl->listWarps() == null) {
$s->sendMessage($prefix . MsgMgr::getMsg("no-warps-set"));
return;
}
$warpForms = new WarpForms();
$warpForms->openRmWarp($s);
} else {
$s->sendMessage($this->usageMessage);
}
return;
}
if (!$pl->existsWarp($args[0])) {
Expand Down
4 changes: 0 additions & 4 deletions src/supercrafter333/theSpawn/Commands/SetaliasCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -64,10 +64,6 @@ public function execute(CommandSender $s, string $commandLabel, array $args): bo
$s->sendMessage($prefix . MsgMgr::getMsg("world-not-found"));
return true;
}
if ($pl->aliasCfg->get("use-aliases") == "false") {
$s->sendMessage($prefix . MsgMgr::getMsg("aliases-deactivated"));
return true;
}
if ($pl->getSpawn($pl->levelCheck($args[1])) == false) {
$s->sendMessage($prefix . MsgMgr::getMsg("no-spawn-set-for-world"));
return true;
Expand Down
10 changes: 8 additions & 2 deletions src/supercrafter333/theSpawn/Commands/SethomeCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
use pocketmine\world\sound\DoorBumpSound;
use pocketmine\player\Player;
use pocketmine\plugin\Plugin;
use supercrafter333\theSpawn\Forms\HomeForms;
use supercrafter333\theSpawn\MsgMgr;
use supercrafter333\theSpawn\theSpawn;

Expand Down Expand Up @@ -55,8 +56,13 @@ public function execute(CommandSender $s, string $commandLabel, array $args): bo
$s->sendMessage($prefix . MsgMgr::getOnlyIGMsg());
return true;
}
if (!count($args) >= 1) {
$s->sendMessage($this->usageMessage);
if (count($args) < 1) {
if ($pl->useForms()) {
$warpForms = new HomeForms($s->getName());
$warpForms->openSetHome($s);
} else {
$s->sendMessage($this->usageMessage);
}
return true;
}
$x = $s->getPosition()->getX();
Expand Down
17 changes: 9 additions & 8 deletions src/supercrafter333/theSpawn/Commands/SetwarpCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@

namespace supercrafter333\theSpawn\Commands;

use pocketmine\command\Command;
use supercrafter333\theSpawn\Commands\theSpawnOwnedCommand;
use pocketmine\command\CommandSender;
use pocketmine\world\sound\DoorBumpSound;
use pocketmine\player\Player;
use pocketmine\plugin\Plugin;
use supercrafter333\theSpawn\Forms\WarpForms;
use supercrafter333\theSpawn\MsgMgr;
use supercrafter333\theSpawn\theSpawn;

Expand Down Expand Up @@ -50,20 +50,21 @@ public function execute(CommandSender $s, string $commandLabel, array $args): vo
$s->sendMessage(MsgMgr::getOnlyIGMsg());
return;
}
if (count($args) < 1) {
$s->sendMessage($this->usageMessage);
return;
}
if (!$s->hasPermission("theSpawn.setwarp.cmd")) {
$s->sendMessage($prefix . MsgMgr::getNoPermMsg());
return;
}
if ($pl->useWarps() == false) {
$s->sendMessage($prefix . MsgMgr::getMsg("warps-deactivated"));
if (count($args) < 1) {
if ($pl->useForms()) {
$warpForms = new WarpForms();
$warpForms->openSetWarp($s);
} else {
$s->sendMessage($this->usageMessage);
}
return;
}
if ($pl->existsWarp($args[0]) == false) {
$pl->addWarp($s->getPosition()->getX(), $s->getPosition()->getY(), $s->getPosition()->getZ(), $s->getPosition()->getWorld(), $args[0], isset($args[1]) ? $args[1] : null);
$pl->addWarp($s->getPosition()->getX(), $s->getPosition()->getY(), $s->getPosition()->getZ(), $s->getPosition()->getWorld(), $args[0], isset($args[1]) ? (string)$args[1] : null);
$posMsg = (string)$s->getPosition()->getX() . $s->getPosition()->getY() . $s->getPosition()->getZ();
$s->sendMessage($prefix . str_replace(["{warpname}"], [$args[0]], str_replace(["{position}"], [$posMsg], str_replace(["{world}"], [$s->getWorld()->getFolderName()], MsgMgr::getMsg("warp-set")))));
} else {
Expand Down
7 changes: 1 addition & 6 deletions src/supercrafter333/theSpawn/Commands/WarpCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,6 @@ public function execute(CommandSender $s, string $commandLabel, array $args): vo
}
if (count($args) < 1) {
if ($pl->listWarps() !== null) {
$s->getWorld()->addSound($s->getPosition(), new XpLevelUpSound(mt_rand(1, 100)));
if ($pl->useForms()) {
$warpForms = new WarpForms();
$warpForms->open($s);
Expand All @@ -72,15 +71,11 @@ public function execute(CommandSender $s, string $commandLabel, array $args): vo
return;
}
if (theSpawn::getInstance()->getWarpInfo($args[0])->getPermission() !== null) {
if (!$s->hasPermission("theSpawn.warp." . theSpawn::getInstance()->getWarpInfo($args[0])->getPermission())) {
if (!$s->hasPermission("theSpawn.warp." . theSpawn::getInstance()->getWarpInfo($args[0])->getPermission()) && !$s->hasPermission("theSpawn.warp.admin")) {
$s->sendMessage($prefix . MsgMgr::getNoPermMsg());
return;
}
}
if ($pl->useWarps() == false) {
$s->sendMessage($prefix . MsgMgr::getMsg("warps-deactivated"));
return;
}
if (!$pl->existsWarp($args[0])) {
$s->sendMessage($prefix . str_replace(["{warpname}"], [(string)$args[0]], MsgMgr::getMsg("warp-not-exists")));
return;
Expand Down
Loading

0 comments on commit f289727

Please sign in to comment.