KrestoR 1 Opublikowano 18 lutego 2021 Udostępnij Opublikowano 18 lutego 2021 (edytowane) Witam chciałbym się podzielić z wami moim pomysłem jaki mi wpadł do głowy, otóż zrobiłem całkiem prosty skrypt na pojedynki 1 vs 1. W skrypcie jest config który też będzie miał znaczne zmiany w przyszłości. Czym wyróżnia się mój skrypt od innych których jest tu takich od pewnie cholery? Nie wiem, jedyne czym może to przyjmowanie i odrzucanie zaproszeń przez klikniecie w [V] albo [X] i po zakończonej walce, wygrany zostaje teleportowany tam skąd przyjął zaproszenie Skrypt będzie aktualizowany co jakiś czas, więc to nie jest jego oficjalna wersja komendy: /1v1 wyzwij [nick gracza] - wyzywa podanego gracza na pojedynek (musi być ten gracz online) /1v1 ustaw - ustawia lokalizacje areny, tam gdzie stoi gracz Wymagania: Skript 2.7+ Aktualizacje: 1.0 - Pierwsze wydanie Edytowane 18 lutego 2021 przez KrestoR Odnośnik do komentarza https://skript.pl/temat/45929-kpvp-skrypt-na-pojedynki-1vs1/ Udostępnij na innych stronach Więcej opcji udostępniania...
luk4sMC 10 Opublikowano 18 lutego 2021 Udostępnij Opublikowano 18 lutego 2021 (edytowane) Chyba jakoś tak... set {_time} to 5 loop {_time} time: send "%{_time}% sek." to player #arg-1, arg-2, attacker set {_time} to {_time} -1 wait 1 seconds send "GO!" to player #arg-1, arg-2 #lub set {_time} to 5 loop {_time} time: send subtitle "%{_time}% sek." to player #arg-1, arg-2 set {_time} to {_time} -1 wait 1 seconds send subtitle "GO!" to player #arg-1, arg-2 Edytowane 18 lutego 2021 przez luk4sMC Odnośnik do komentarza https://skript.pl/temat/45929-kpvp-skrypt-na-pojedynki-1vs1/#findComment-289281 Udostępnij na innych stronach Więcej opcji udostępniania...
Kormic 1951 Opublikowano 19 lutego 2021 Udostępnij Opublikowano 19 lutego 2021 (edytowane) 1. Raz używasz list zmiennych, a raz zwykłych zmiennych mimo to, że operujesz na graczach. Użyj samych list zmiennych. Skoro je używasz, nie muszę ci raczej tłumaczyć dlaczego są lepsze. 2. Zalecam oduczyć się nawyku zagnieżdżania w sobie warunków. Przez takie coś kod jest mniej czytelny. # Jak ty to robisz: if arg-1 is set: if arg-2 is set: if arg-3 is set: # Dalszy kod else: send "Podaj argument nr 3!" else: send "Podaj argument nr 2!" else: send "Podaj argument nr 1!" # Jak ja bym to zrobił: if arg-1 is not set: send "Podaj argument nr 1!" stop if arg-2 is not set: send "Podaj argument nr 2!" stop if arg-3 is not set: send "Podaj argument nr 3!" stop # Dalszy kod Widać różnicę, prawda? 3. W skrypcie masz błąd, gdyż żaden kod nie jest przynależny do warunku w 46. linijce. 4. Co do odliczania, Lukas już o tym napisał (chociaż mu się trochę kod rozjechał), ale ja zrobiłbym je w ten sposób. loop 5 times: send "%6 - loop-number%..." to player wait 1 second # Dalszy kod 5. Powinieneś użyć eventu 'on death of player', gdyż w twoim kodzie event będzie wywoływany przy śmierci dowolnego entity. Tak więc jeżeli na serwer wejdzie gracz o nazwie "sheep", przy śmierci dowolnej owcy kod się wykona dalej. Nie sprawdzasz również czy 'attacker' w ogóle jest w tym evencie (attacker is set). 6. Zrobiłbym na twoim miejscu coś z tymi nieregularnymi przerwami na początku skryptu, nie są również mile widziane. Edytowane 19 lutego 2021 przez Kormic luk4sMC 1 Odnośnik do komentarza https://skript.pl/temat/45929-kpvp-skrypt-na-pojedynki-1vs1/#findComment-289291 Udostępnij na innych stronach Więcej opcji udostępniania...
KrestoR 1 Opublikowano 19 lutego 2021 Autor Udostępnij Opublikowano 19 lutego 2021 Skrypt robiłem na szybko i może jeszcze dzisiaj uda mi się to wszystko poprawić Odnośnik do komentarza https://skript.pl/temat/45929-kpvp-skrypt-na-pojedynki-1vs1/#findComment-289299 Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi