AxonGames 5 Opublikowano 2 marca 2021 Udostępnij Opublikowano 2 marca 2021 Potrzebuje skryptu ze jesli gracz nie ma permisji komendy ktora wpisal wyswietla mu sie „Nie masz permisji do takiej komendy” Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Kormic 1 824 Opublikowano 2 marca 2021 Udostępnij Opublikowano 2 marca 2021 7 minut temu, AxonGames napisał: Potrzebuje skryptu ze jesli gracz nie ma permisji komendy ktora wpisal wyswietla mu sie „Nie masz permisji do takiej komendy” A co z wiadomościami domyślnymi komend (tzn. 'permission message')? Mają zostać czy też mają być wszystkie nadpisane? Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 AxonGames 5 Opublikowano 2 marca 2021 Autor Udostępnij Opublikowano 2 marca 2021 3 minuty temu, Kormic napisał: A co z wiadomościami domyślnymi komend (tzn. 'permission message')? Mają zostać czy też mają być wszystkie nadpisane? Tak nadpisane, tylko chce zeby ze skript nie byly nadpisane Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Glicz 241 Opublikowano 2 marca 2021 Udostępnij Opublikowano 2 marca 2021 on command: set {_} to permission of command "%command%" if "%{_}%" is not set: stop if player has permission "%{_}%": stop cancel event send "Nie masz uprawnień" Wymaga: LimeSK, silnik PaperMC 1.12.2+ Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 AxonGames 5 Opublikowano 2 marca 2021 Autor Udostępnij Opublikowano 2 marca 2021 Teraz, Glitchtrap napisał: on command: set {_} to permission of command "%command%" if "%{_}%" is not set: stop if player has permission "%{_}%": stop cancel event send "Nie masz uprawnień" Wymaga: LimeSK, silnik PaperMC 1.12.2+ A da rade zeby nie nadpisywalo komend permisji z skripta Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Glicz 241 Opublikowano 2 marca 2021 Udostępnij Opublikowano 2 marca 2021 Teraz, AxonGames napisał: A da rade zeby nie nadpisywalo komend permisji z skripta tak, na początku eventu dodaj: if command is "skript" or "sk": stop #reszta kodu Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 AxonGames 5 Opublikowano 2 marca 2021 Autor Udostępnij Opublikowano 2 marca 2021 2 minuty temu, Glitchtrap napisał: tak, na początku eventu dodaj: if command is "skript" or "sk": stop #reszta kodu A czy spigot rozni sie czyms od paperspigot? Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Kormic 1 824 Opublikowano 2 marca 2021 Udostępnij Opublikowano 2 marca 2021 Teraz, AxonGames napisał: A da rade zeby nie nadpisywalo komend permisji z skripta Nie da się wykrywać z którego pluginu jaka komenda pochodzi (a bynajmniej nie jest to proste). Najprościej byłoby dodać sobie komendy do jakiejś listy. on load: set {skriptCommands::*} to "komenda", "komenda1", "komenda2" and "komenda3" on command: sender is a player set {_} to permission of command "%command%" if "%{_}%" is not set: stop if player has permission "%{_}%": stop {skriptCommands::*} doesn't contain command cancel event send "&cNie masz uprawnień!" to player Teraz, Glitchtrap napisał: tak, na początku eventu dodaj: if command is "skript" or "sk": stop #reszta kodu On ma na myśli komendy zdefiniowane w skryptach, nie z samego Skripta. Glicz 1 Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Glicz 241 Opublikowano 2 marca 2021 Udostępnij Opublikowano 2 marca 2021 Teraz, AxonGames napisał: A czy spigot rozni sie czyms od paperspigot? paperspigot dodaje fajne rzeczy do api oraz jest lepiej zoptymalizowany Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Kormic 1 824 Opublikowano 2 marca 2021 Udostępnij Opublikowano 2 marca 2021 12 minut temu, AxonGames napisał: A da rade zeby nie nadpisywalo komend permisji z skripta Jest jeszcze jeden sposób. Wystarczy spokojnie Spigot. Wymagany skript-reflect. 1. Anulowanie eventu i wysyłanie wiadomości. import: org.bukkit.Bukkit on load: set {skriptCommands::*} to "komenda", "komenda1", "komenda2" and "komenda3" on command: sender is a player set {_perm} to Bukkit.getPluginCommand("%command%").getPermission() {_perm} is set player doesn't have permission {_perm} {skriptCommands::*} doesn't contain command cancel event send "&cNie masz uprawnień!" to player 2. Nadpisywanie 'permission message' w pluginach. import: org.bukkit.Bukkit on load: set {skriptCommands::*} to "komenda", "komenda1", "komenda2" and "komenda3" on command: sender is a player set {_c} to Bukkit.getPluginCommand("%command%") {_c} is set set {_perm} to {_c}.getPermission() {_perm} is set player doesn't have permission {_perm} {skriptCommands::*} doesn't contain command {_c}.setPermissionMessage("&cNie posiadasz dostępu do tej komendy!") Oczywiście oba sposoby mają wady. 1. sposób powoduje, że komendy nie są logowane w konsoli, natomiast 2. nadpisuje wiadomości w pluginach. A ogółem należy pamiętać o tym, że to jedynie będzie działać przy komendach, które mają wpisaną permisję w pliku 'plugin.yml'. NIE będzie to działać przy komendach, które sprawdzanie permisji mają w kodzie pluginu. Kod Michixa ma oczywiście te same wady: nie loguje komend, a i przechwytuje jedynie permisję z pliku 'plugin.yml' (chociaż te drugie jest "ukrywane" poprzez 'cancel event'). Oczywiście należy tutaj dodać, że trzeba mieć PaperSpigot, wersję 1.12.2+, a i dodatek LimeSK. Mój kod natomiast zadziała nawet na Spigot'cie 1.8. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Pytanie
AxonGames 5
Potrzebuje skryptu ze jesli gracz nie ma permisji komendy ktora wpisal wyswietla mu sie „Nie masz permisji do takiej komendy”
Odnośnik do komentarza
Udostępnij na innych stronach
9 odpowiedzi na to pytanie
Rekomendowane odpowiedzi
Dołącz do dyskusji
Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.