K0SM053 11 Opublikowano 21 grudnia 2014 Udostępnij Opublikowano 21 grudnia 2014 Nigdzie tego nie znalazłem, więc zaczynajmy ! Kod odpowiadający za ustawianie celu kompasu to:set compass target of [GRACZ] to [KORDY][GRACZ] - nick gracza mającego kompas.[KORDY] - koordynacje bloku, który ma wskazywać kompas. Dajmy na to, mamy serwer minigames napisanym w skript, ale nie mamy kompasu do najbliższego gracza, wię c: 1.Dajemy graczowi kompas, w moim przypadku będzie to po wejściu, wię c:On join: give compass to player 2.Tworzymy kod, który będzie wykrywał odległość i koordynację najbliższego gracza, ja już podam gotowy kod i go wytłumaczę.command /recomp: trigger: set {_dystans.%player%} to 9999999 loop all players: player isn't loop-player distance between player and loop-player is smaller than {_dystans.%player%}: set {_najgracz.%player%} to location of loop-player set compass target of player to {_najgracz.%player%} set {_dystans.%player%} to distance between player and loop-player if player is holding a compass: set name of player's tool to "&6%{_dystans.%player%}% do gracza %loop-player%"1.Używamy komendy, by móc odnieść się do gracza, by zapętlił tylko tych wokół siebie.2.trigger3.Ustawiamy w jakim dystansie ma nam wykrywać gracza.4.Zapętlamy wszystkich graczy5.ustawiamy, by gracz nie był najbliższym graczem6.Wykonuje dalszy kod jeśli między dwoma graczami odległość jest mniejsza niż "{_dystans.%player%}"7.Ustawia koordynacje drugiego gracza8.Ustawia kompas gracza na koordynacje drugiego9.Ustawia dystans między dwoma graczami10.Wykonuje dalszy kod jeśli gracz trzyma kompas11.Ustawia nazwę kompasu na odległość od drugiego gracza i jego nick. 3.Zapętlamy to dla wszystkich graczy:every 5 seconds: loop all players: execute loop-player command "/recomp"Niestety konsola jest zaspamiona, ale działa. Cały kod:On join: give compass to playercommand /recomp: trigger: set {_dystans.%player%} to 9999999 loop all players: player isn't loop-player distance between player and loop-player is smaller than {_dystans.%player%}: set {_najgracz.%player%} to location of loop-player set compass target of player to {_najgracz.%player%} set {_dystans.%player%} to distance between player and loop-player if player is holding a compass: set name of player's tool to "&6%{_dystans.%player%}% do gracza %loop-player%"every 5 seconds: loop all players: make execute loop-player command "/recomp"Efekt:https://screenshooter.blob.core.windows.net/engine4files/spwxlbpsayehwttggigshftjxqklqcqckxeywxxicxdepctacozelirnvnzuqdbxicxzpukjlxqjbouvxkjccmqbfrcixdsyvfwnftlhdqtoshlgsewfuyuwlvtyrblh PS.Mam zbugowaną teksturę gracza non-premium. Myślę, że pomogłem :) Johnny, Norbi, DamianMMC i 3 innych 6 Odnośnik do komentarza https://skript.pl/temat/5067-ustawiane-celu-kompasu-gracza/ Udostępnij na innych stronach Więcej opcji udostępniania...
Norbi 1337 Opublikowano 21 grudnia 2014 Udostępnij Opublikowano 21 grudnia 2014 No, poradnik się napewno komuś przyda. Co do strony graficznej, to byś to jakoś dopracowa, pooddzielał, bo czytanie takiego ciągłego tekstu, który nie ma wyróżnień itp. to trochę takie nieprzyjemne. Odnośnik do komentarza https://skript.pl/temat/5067-ustawiane-celu-kompasu-gracza/#findComment-41821 Udostępnij na innych stronach Więcej opcji udostępniania...
ToNy 548 Opublikowano 21 grudnia 2014 Udostępnij Opublikowano 21 grudnia 2014 Nareszcie coś naprawdę pożytecznego! Gratulacje :D Odnośnik do komentarza https://skript.pl/temat/5067-ustawiane-celu-kompasu-gracza/#findComment-41828 Udostępnij na innych stronach Więcej opcji udostępniania...
herhor67 916 Opublikowano 21 grudnia 2014 Udostępnij Opublikowano 21 grudnia 2014 Z tego co wiem to działa tak, że na końcu zapętla najdalszego gracza - to jego będzie wskazywać kompas. Oczywiście da się to poprawić.No ale może twój kod zadziała. Odnośnik do komentarza https://skript.pl/temat/5067-ustawiane-celu-kompasu-gracza/#findComment-41852 Udostępnij na innych stronach Więcej opcji udostępniania...
DamianMMC 84 Opublikowano 21 grudnia 2014 Udostępnij Opublikowano 21 grudnia 2014 Poradnik spoko ale to co tam napisałeś (skrypt) trochę nie dopracowany ;p Jeśli jest 50 graczy na serwerze to co 5 sekund jest wykonywane 50 razy lopowanie wszystkich graczy ;p Odnośnik do komentarza https://skript.pl/temat/5067-ustawiane-celu-kompasu-gracza/#findComment-41855 Udostępnij na innych stronach Więcej opcji udostępniania...
Norbi 1337 Opublikowano 21 grudnia 2014 Udostępnij Opublikowano 21 grudnia 2014 command /recomp: trigger: function "odswiezKompas" { player }every 3 second: loop all players: function "odswiezKompas" { loop-player }function "odswiezKompas" {}: set {_p} to arg{1} set {_dystans.%{_p}%} to 99999999 loop all players: if loop-player is not {_p}: if {_p} is holding compass: if distance between {_p} and loop-player is smaller than {_dystans.%{_p}%}: set compass target of {_p} to loop-player set name of {_p}'s tool to "&7Najblizszy gracz: &f%loop-player% &7(&f%distance between {_p} and loop-player%&7)"Ten kod jest wydajniejszy, i nie spami w konsoli (Ale wymaga za to WildSkript) K0SM053 1 Odnośnik do komentarza https://skript.pl/temat/5067-ustawiane-celu-kompasu-gracza/#findComment-41868 Udostępnij na innych stronach Więcej opcji udostępniania...
K0SM053 11 Opublikowano 21 grudnia 2014 Autor Udostępnij Opublikowano 21 grudnia 2014 command /recomp: trigger: function "odswiezKompas" { player }every 3 second: loop all players: function "odswiezKompas" { loop-player }function "odswiezKompas" {}: set {_p} to arg{1} set {_dystans.%{_p}%} to 99999999 loop all players: if loop-player is not {_p}: if {_p} is holding compass: if distance between {_p} and loop-player is smaller than {_dystans.%{_p}%}: set compass target of {_p} to loop-player set name of {_p}'s tool to "&7Najblizszy gracz: &f%loop-player% &7(&f%distance between {_p} and loop-player%&7)"Ten kod jest wydajniejszy, i nie spami w konsoli (Ale wymaga za to WildSkript) Chciałem coś takiego napisać, lecz jeszcze nie orientuję się w "function "odswiezKompas" {}:", Dlatego chciałem spróbować napisać to jak najprościej i jeszcze będę szukał możliwości odświeżania bez spamienia w konsoli. PS. Czy function występuje w SkQ ? Odnośnik do komentarza https://skript.pl/temat/5067-ustawiane-celu-kompasu-gracza/#findComment-41878 Udostępnij na innych stronach Więcej opcji udostępniania...
piratjsk 700 Opublikowano 21 grudnia 2014 Udostępnij Opublikowano 21 grudnia 2014 PS. Czy function występuje w SkQ ?Tak. doc K0SM053 1 Odnośnik do komentarza https://skript.pl/temat/5067-ustawiane-celu-kompasu-gracza/#findComment-41885 Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi