Skocz do zawartości
  • 0

Ataki


pawel1232
 Udostępnij

Pytanie

10 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
16 minut temu, pawel1232 napisał:

jest możliwość napisaniia skryptu aby moby co 10 min  przychodziły np ze 100 kratek do mnie ? albo do klocka jakegos  te co się zrespiły

on join:
	while player is online:
		loop all living entities in radius 100 around player:
			set loop-entity's target to player
		wait 10 minutes

Rozumiem, że masz na myśli coś takiego? Czy chodzi ci o to, aby spawnowały się w odległości 100 kratek?

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
Godzinę temu, Kormic napisał:
on join:
	while player is online:
		loop all living entities in radius 100 around player:
			set loop-entity's target to player
		wait 10 minutes

Rozumiem, że masz na myśli coś takiego? Czy chodzi ci o to, aby spawnowały się w odległości 100 kratek?

Chodzi mi o to zeby widziały mnie w promieniu stu kratek czyli jestem na 50 kratce to one mnie widzą  jak by byly 2 katki  odemie

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
Godzinę temu, Kormic napisał:

Nie rozumiem. Wyjaśnij dokładnie.

Chce zeby potwory przychodziły do mnie jeśli są w promieniu 100 kratek i mnie atakowały tak jak by widziały mnie jak bym stał przed nimi i atakowały mnie to samo tylko ze atakują ze 100 kratek np zombie jest odemnie 20 kratek to chcę zeby do mnie przyszedł 

 


 

Edytowane przez pawel1232
Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
19 minut temu, pawel1232 napisał:

Chce zeby potwory przychodziły do mnie jeśli są w promieniu 100 kratek i mnie atakowały tak jak by widziały mnie jak bym stał przed nimi i atakowały mnie to samo tylko ze atakują ze 100 kratek np zombie jest odemnie 20 kratek to chcę zeby do mnie przyszedł 

 


 

No to kod podany wyżej powinien przyciągnąć do ciebie wszystkie agresywne moby w promieniu 100 kratek. Mimo wszystko jeśli będą gubiły cel, to użyj tego kodu:

on join:
	while player is online:
		loop all living entities in radius 100 around player:
			set loop-entity's target to player
			add loop-entity to {agresywne::moby::%player%::*}
		wait 10 minutes

every 10 seconds:
	loop {agresywne::moby::*}:
		loop {agresywne::moby::%loop-index%::*}:
			set loop-value-2's target to loop-index

Przy przeładowywaniu będzie warn, nie przejmuj się nim.

Edytowane przez Kormic
Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
2 minuty temu, Kormic napisał:

No to kod podany wyżej powinien przyciągnąć do ciebie wszystkie agresywne moby w promieniu 100 kratek. Mimo wszystko jeśli będą gubiły cel, to użyj tego kodu:

on join:
	while player is online:
		loop all living entities in radius 100 around player:
			set loop-entity's target to player
			add loop-entity to {agresywne::moby::%player%::*}
		wait 10 minutes

every 10 seconds:
	loop {agresywne::moby::*}:
		loop {agresywne::moby::%loop-index%::*}:
			set loop-value-2's target to loop-index

Przy przeładowywaniu będzie warn, nie przejmuj się nim.

Dziękuję :) oby działał!

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
1 godzinę temu, Kormic napisał:

No to kod podany wyżej powinien przyciągnąć do ciebie wszystkie agresywne moby w promieniu 100 kratek. Mimo wszystko jeśli będą gubiły cel, to użyj tego kodu:

on join:
	while player is online:
		loop all living entities in radius 100 around player:
			set loop-entity's target to player
			add loop-entity to {agresywne::moby::%player%::*}
		wait 10 minutes

every 10 seconds:
	loop {agresywne::moby::*}:
		loop {agresywne::moby::%loop-index%::*}:
			set loop-value-2's target to loop-index

Przy przeładowywaniu będzie warn, nie przejmuj się nim.

Przy dłuższych opóźnieniach robienie pętli while z warunkiem czy gracz jest online nie ma sensu, bo gdy gracz wyjdzie i wejdzie stara pętla się nie zatrzyma a zacznie odliczać też nowa

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
14 minut temu, xAxee napisał:

Przy dłuższych opóźnieniach robienie pętli while z warunkiem czy gracz jest online nie ma sensu, bo gdy gracz wyjdzie i wejdzie stara pętla się nie zatrzyma a zacznie odliczać też nowa

Rzeczywiście. W takim wypadku skrypt lepiej oprzeć o periodical:

every 10 minutes:
	loop all players:
		loop all living entities in radius 100 around loop-player:
			set target of loop-entity-2 to loop-player
			add loop-entity-2 to {agresywne::moby::%loop-player%::*}

every 10 seconds:
	loop {agresywne::moby::*}:
		loop {agresywne::moby::%loop-index%::*}:
			set target of loop-value-2 to (loop-index-1 parsed as player)

 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
6 godzin temu, Rejszpat napisał:

Nie wiem czy to ma sens, bo można zrobić dokładnie to samo zmieniając w spigot.yml entity-activation-range na 100 i dostosować jeszcze mob-spawn-range do siedmiu jeśli rzeczywiście jest taka potrzeba bo przy wartości 6 wynosi 96 kratek

A nie możemy skorzystać po prostu z rozwiązania oferowanego nam przez sam silnik? :kappalul: 

Odnośnik do komentarza
Udostępnij na innych stronach

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ą.

Nieaktywny
Odpowiedz na pytanie...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

 Udostępnij

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...