gnomq 223 Opublikowano 6 września 2020 Udostępnij Opublikowano 6 września 2020 Jeśli gracz dostanie uprawnienie 'efekt.1', to automatycznie za nim będą się pojawiać efekty serduszek, a po zabraniu uprawnienia gracz straci ten dodatek Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Kormic 1921 Opublikowano 6 września 2020 Udostępnij Opublikowano 6 września 2020 2 minuty temu, gnomq2000 napisał: Jeśli gracz dostanie uprawnienie 'efekt.1', to automatycznie za nim będą się pojawiać efekty serduszek, a po zabraniu uprawnienia gracz straci ten dodatek W Skript'cie nie ma możliwości przechwycenia eventu otrzymania permisji. Są dwa sposoby na osiągnięcie tego: 1. Można to zrobić za pomocą eventu 'on command'. 2. Istnieje również taka możliwość, aby sprawdzać co sekundę czy jakiś gracz nie posiada takiej permisji. Moja propozycja: on join: while player is online: if player has permission "efekt.1": if {efekt1::listaGraczy::*} doesn't contain player: add player to {efekt1::listaGraczy::*} wait 1 second every 1 second: loop {efekt1::listaGraczy::*}: if loop-value is not online: continue loop 20 times: play love hearts on (loop-value-1 parsed as player) wait 1 tick gnomq 1 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 gnomq 223 Opublikowano 6 września 2020 Autor Udostępnij Opublikowano 6 września 2020 2 minuty temu, Kormic napisał: W Skript'cie nie ma możliwości przechwycenia eventu otrzymania permisji. Są dwa sposoby na osiągnięcie tego: 1. Można to zrobić za pomocą eventu 'on command'. 2. Istnieje również taka możliwość, aby sprawdzać co sekundę czy jakiś gracz nie posiada takiej permisji. Moja propozycja: on join: while player is online: if player has permission "efekt.1": if {efekt1::listaGraczy::*} doesn't contain player: add player to {efekt1::listaGraczy::*} wait 1 second every 1 second: loop {efekt1::listaGraczy::*}: if loop-value is not online: continue loop 20 times: play love hearts on (loop-value-1 parsed as player) wait 1 tick a może jeszcze inaczej. po otrzymaniu tej permisji gracz ma dostęp do komendy '/serca', którą może przełączać ten dodatek Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Kormic 1921 Opublikowano 6 września 2020 Udostępnij Opublikowano 6 września 2020 6 minut temu, gnomq2000 napisał: a może jeszcze inaczej. po otrzymaniu tej permisji gracz ma dostęp do komendy '/serca', którą może przełączać ten dodatek To znacznie ułatwia sprawę. W takim wypadku to będzie coś takiego: on command "/serca": if {efekt1::listaGraczy::*} doesn't contain player: add player to {efekt1::listaGraczy::*} else: remove player from {efekt1::listaGraczy::*} every 1 second: loop {efekt1::listaGraczy::*}: if loop-value is not online: continue loop 20 times: play love hearts on (loop-value-1 parsed as player) wait 1 tick Musisz sobie na początku 'on command "/serca":' dodać warunek sprawdzający czy gracz ma dostęp do tej komendy, bo jeżeli nie będzie miał to i tak otrzyma efekt serduszek. gnomq 1 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 gnomq 223 Opublikowano 6 września 2020 Autor Udostępnij Opublikowano 6 września 2020 2 minuty temu, Kormic napisał: To znacznie ułatwia sprawę. W takim wypadku to będzie coś takiego: on command "/serca": if {efekt1::listaGraczy::*} doesn't contain player: add player to {efekt1::listaGraczy::*} else: remove player from {efekt1::listaGraczy::*} every 1 second: loop {efekt1::listaGraczy::*}: if loop-value is not online: continue loop 20 times: play love hearts on (loop-value-1 parsed as player) wait 1 tick Musisz sobie na początku 'on command "/serca":' dodać warunek sprawdzający czy gracz ma dostęp do tej komendy, bo jeżeli nie będzie miał to i tak otrzyma efekt serduszek. 'nie ma takiej komendy' Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Kormic 1921 Opublikowano 6 września 2020 Udostępnij Opublikowano 6 września 2020 Teraz, gnomq2000 napisał: 'nie ma takiej komendy' Czy masz zarejestrowaną taką komendę? Myślałem, że miałeś już taką dodaną. gnomq 1 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 gnomq 223 Opublikowano 6 września 2020 Autor Udostępnij Opublikowano 6 września 2020 1 minutę temu, Kormic napisał: Czy masz zarejestrowaną taką komendę? Myślałem, że miałeś już taką dodaną. a, nie mam takiej komendy Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Kormic 1921 Opublikowano 6 września 2020 Udostępnij Opublikowano 6 września 2020 2 minuty temu, gnomq2000 napisał: a, nie mam takiej komendy W takim razie: command /serca: executable by: players trigger: if player doesn't have permission "efekt.1": send "&4Nie posiadasz dostepu do tej komendy." to player stop if {efekt1::listaGraczy::*} doesn't contain player: add player to {efekt1::listaGraczy::*} send "&aWlaczyles efekt serduszek!" to player stop else: remove player from {efekt1::listaGraczy::*} send "&cWylaczyles efekt serduszek!" to player every 1 second: loop {efekt1::listaGraczy::*}: if loop-value is not online: continue loop 20 times: play love hearts on (loop-value-1 parsed as player) wait 1 tick gnomq 1 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 gnomq 223 Opublikowano 6 września 2020 Autor Udostępnij Opublikowano 6 września 2020 2 minuty temu, Kormic napisał: W takim razie: command /serca: executable by: players trigger: if player doesn't have permission "efekt.1": send "&4Nie posiadasz dostepu do tej komendy." to player stop if {efekt1::listaGraczy::*} doesn't contain player: add player to {efekt1::listaGraczy::*} send "&aWlaczyles efekt serduszek!" to player stop else: remove player from {efekt1::listaGraczy::*} send "&cWylaczyles efekt serduszek!" to player every 1 second: loop {efekt1::listaGraczy::*}: if loop-value is not online: continue loop 20 times: play love hearts on (loop-value-1 parsed as player) wait 1 tick komenda działa, ale nie ma efektu Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Kormic 1921 Opublikowano 6 września 2020 Udostępnij Opublikowano 6 września 2020 1 minutę temu, gnomq2000 napisał: komenda działa, ale nie ma efektu Pamiętasz jak ostatnio był problem z tym, że jedynie niektóre efekty działały? Możliwe, że i w tym przypadku jest podobnie. Zapewne pamiętasz który efekt działał, więc spróbuj. gnomq 1 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 gnomq 223 Opublikowano 6 września 2020 Autor Udostępnij Opublikowano 6 września 2020 Teraz, Kormic napisał: Pamiętasz jak ostatnio był problem z tym, że jedynie niektóre efekty działały? Możliwe, że i w tym przypadku jest podobnie. Zapewne pamiętasz który efekt działał, więc spróbuj. tak pamiętam i próbowałem i niestety nie działa Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Kormic 1921 Opublikowano 6 września 2020 Udostępnij Opublikowano 6 września 2020 1 minutę temu, gnomq2000 napisał: tak pamiętam i próbowałem i niestety nie działa Spróbuj wyrzucić z pętli ten warunek: if loop-value is not online: continue gnomq 1 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 gnomq 223 Opublikowano 6 września 2020 Autor Udostępnij Opublikowano 6 września 2020 2 minuty temu, Kormic napisał: Spróbuj wyrzucić z pętli ten warunek: if loop-value is not online: continue wciąż nic Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Kormic 1921 Opublikowano 6 września 2020 Udostępnij Opublikowano 6 września 2020 15 minut temu, gnomq2000 napisał: wciąż nic Dobra, przetestowałem co nieco i doszedłem do wniosku, że efekt puszczania particles nie działa poprawnie. Zaraz wrócę z poprawionym skryptem i nie ukrywam, że mogą być potrzebne jakieś dodatki. gnomq 1 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 PanMaruda 623 Opublikowano 6 września 2020 Udostępnij Opublikowano 6 września 2020 command /serca: permission: efekt.1 permission message: nie możesz executable by: players trigger: if {efekt1::status::%name of player%} is not true set {efekt1::status::%name of player%} to true send "&aWlaczyles efekt serduszek!" to player else: delete {efekt1::status::%name of player%} send "&cWylaczyles efekt serduszek!" to player function playHearts(): while true: loop all players: play wolf hearts on loop-player where [{efekt1::status::%name of loop-player%}] wait 10 tick on load: $ thread playHearts() zakładam że SkQuery posiadasz więc próbuj coś takiego ^ gnomq 1 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Kormic 1921 Opublikowano 6 września 2020 Udostępnij Opublikowano 6 września 2020 52 minuty temu, gnomq2000 napisał: wciąż nic No dobra, naprawiłem jak mogłem, lecz nawet parse'owanie na playera nie pomogło, więc działa tylko z niektórymi efektami. command /serca: executable by: players trigger: if player doesn't have permission "efekt.1": send "&4Nie posiadasz dostepu do tej komendy." to player stop if {efekt1::listaGraczy::*} doesn't contain player: add player to {efekt1::listaGraczy::*} send "&aWlaczyles efekt serduszek!" to player stop else: remove player from {efekt1::listaGraczy::*} send "&cWylaczyles efekt serduszek!" to player every 10 ticks: loop {efekt1::listaGraczy::*}: set {_loc} to location of loop-value loop 20 times: play crit at {_loc} wait 1 tick gnomq 1 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 gnomq 223 Opublikowano 6 września 2020 Autor Udostępnij Opublikowano 6 września 2020 8 minut temu, PanMaruda napisał: command /serca: permission: efekt.1 permission message: nie możesz executable by: players trigger: if {efekt1::status::%name of player%} is not true set {efekt1::status::%name of player%} to true send "&aWlaczyles efekt serduszek!" to player else: delete {efekt1::status::%name of player%} send "&cWylaczyles efekt serduszek!" to player function playHearts(): while true: loop all players: play wolf hearts on loop-player where [{efekt1::status::%name of loop-player%}] wait 10 tick on load: $ thread playHearts() zakładam że SkQuery posiadasz więc próbuj coś takiego ^ coś tu źle wytabowałeś chyba Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 gnomq 223 Opublikowano 6 września 2020 Autor Udostępnij Opublikowano 6 września 2020 2 minuty temu, Kormic napisał: No dobra, naprawiłem jak mogłem, lecz nawet parse'owanie na playera nie pomogło, więc działa tylko z niektórymi efektami. command /serca: executable by: players trigger: if player doesn't have permission "efekt.1": send "&4Nie posiadasz dostepu do tej komendy." to player stop if {efekt1::listaGraczy::*} doesn't contain player: add player to {efekt1::listaGraczy::*} send "&aWlaczyles efekt serduszek!" to player stop else: remove player from {efekt1::listaGraczy::*} send "&cWylaczyles efekt serduszek!" to player every 10 ticks: loop {efekt1::listaGraczy::*}: set {_loc} to location of loop-value loop 20 times: play crit at {_loc} wait 1 tick dzięki działa @PanMaruda również dzięki Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 PanMaruda 623 Opublikowano 6 września 2020 Udostępnij Opublikowano 6 września 2020 command /serca: permission: efekt.1 permission message: nie możesz executable by: players trigger: if {efekt1::status::%name of player%} is not true: set {efekt1::status::%name of player%} to true send "&aWlaczyles efekt serduszek!" to player else: delete {efekt1::status::%name of player%} send "&cWylaczyles efekt serduszek!" to player function playHearts(): while true: loop all players: play heart on loop-player where [{efekt1::status::%name of loop-player%}] wait 10 tick on load: $ thread playHearts() Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 gnomq 223 Opublikowano 6 września 2020 Autor Udostępnij Opublikowano 6 września 2020 a jak zrobić, żeby więcej tych efektów tworzyło? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Kormic 1921 Opublikowano 6 września 2020 Udostępnij Opublikowano 6 września 2020 Teraz, gnomq2000 napisał: a jak zrobić, żeby więcej tych efektów tworzyło? Wrzuć odpalanie efektów w pętle 'loop 10 times:' i tyle. gnomq 1 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Pytanie
gnomq 223
Jeśli gracz dostanie uprawnienie 'efekt.1', to automatycznie za nim będą się pojawiać efekty serduszek, a po zabraniu uprawnienia gracz straci ten dodatek
Odnośnik do komentarza
Udostępnij na innych stronach
22 odpowiedzi na to pytanie
Rekomendowane odpowiedzi