Skocz do zawartości
  • 0

Skrypt na agresywnego npc


Pytanie

Chciałbym prosić o pomoc. Mianowicie chciałbym aby po wpisaniu komendy (/start) teleportowało cię do wyznaczonego miejsca. Niżej respawniłby się npc, który jest tak jakby strażnikiem, normalnie chodzi sobie po mapie, powolutku. Gdy zobaczy cię w promieniu 5 kratek. Zaczyna cię gonić (nie bardzo szybko), gdy cię uderzy odradzasz się w tym samym miejscu co na początku, z napisem na ekranie "&4&lUmarles".
Czy mógłby ktoś napisać ten skrypt? Z góry bardzo dziękuję.

Pozdrawiam 

Edytowane przez Niezgodny
Odnośnik do komentarza
https://skript.pl/temat/41088-skrypt-na-agresywnego-npc/
Udostępnij na innych stronach

3 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
22 minuty temu, Niezgodny napisał:

Chciałbym prosić o pomoc. Mianowicie chciałbym aby po wpisaniu komendy (/start) teleportowało cię do wyznaczonego miejsca. Niżej respawniłby się npc, który jest tak jakby strażnikiem, normalnie chodzi sobie po mapie, powolutku. Gdy zobaczy cię w promieniu 5 kratek. Zaczyna cię gonić (nie bardzo szybko), gdy cię uderzy odradzasz się w tym samym miejscu co na początku, z napisem na ekranie "&4&lUmarles".
Czy mógłby ktoś napisać ten skrypt? Z góry bardzo dziękuję.

Pozdrawiam 

command /start:
	trigger:
		teleport player to {lokacja::start}
		set {_x} to random integer between -20 and 20
		set {_z} to random integer between -20 and 20
		spawn a zombie at location (x-loc of the location of the player + {_x}), y-loc of the location of the player, (z-loc of the location of the player + {_z})
		equip last spawned zombie with all diamond armor
		set last spawned zombie's name to "&c&lStraznik"
		
command /setlocstart:
	trigger:
		if player is not op:
			stop
		set {lokacja::start} to location of the player
		
on target:
	if event-entity is not zombie:
		stop
	if name of event-entity is not "&c&lStraznik":
		stop
	if distance between event-entity and target is less than 5:
		cancel event
		stop
	apply potion of speed 1 to event-entity for 5 seconds
	wait 5 seconds
	clear event-entity's target
	
on damage:
	if attacker is not zombie:
		stop
	if victim is not player:
		stop
	if name of attacker is not "&c&lStraznik":
		stop
	teleport victim to {lokacja::start}
	send title "&c&lPrzegrales!" with subtitle "&eSprobuj ponownie!" to player

Myślę, że powinno wystarczyć.

Edytowane przez Kormic
Odnośnik do komentarza
https://skript.pl/temat/41088-skrypt-na-agresywnego-npc/#findComment-256486
Udostępnij na innych stronach

  • 0
6 godzin temu, Kormic napisał:

command /start:
	trigger:
		teleport player to {lokacja::start}
		set {_x} to random integer between -20 and 20
		set {_z} to random integer between -20 and 20
		spawn a zombie at location (x-loc of the location of the player + {_x}), y-loc of the location of the player, (z-loc of the location of the player + {_z})
		equip last spawned zombie with all diamond armor
		set last spawned zombie's name to "&c&lStraznik"
		
command /setlocstart:
	trigger:
		if player is not op:
			stop
		set {lokacja::start} to location of the player
		
on target:
	if event-entity is not zombie:
		stop
	if name of event-entity is not "&c&lStraznik":
		stop
	if distance between event-entity and target is less than 5:
		cancel event
		stop
	apply potion of speed 1 to event-entity for 5 seconds
	wait 5 seconds
	clear event-entity's target
	
on damage:
	if attacker is not zombie:
		stop
	if victim is not player:
		stop
	if name of attacker is not "&c&lStraznik":
		stop
	teleport victim to {lokacja::start}
	send title "&c&lPrzegrales!" with subtitle "&eSprobuj ponownie!" to player

Myślę, że powinno wystarczyć.

Dzięki, a jeśli chcę żeby gracz przed tym jak się odrodzi miał czarny ekran (wtedy te napisy) i kiedy znikną to wróci do rzeczywistości czyli normalnie może grać bez ograniczonej widoczności?

I jeszcze jedno, jeśli chce by ten zombie był przebrany za skina np. babci. Co wtedy dopisać/jak wtedy będzie wyglądać skrypt

Odnośnik do komentarza
https://skript.pl/temat/41088-skrypt-na-agresywnego-npc/#findComment-256664
Udostępnij na innych stronach

  • 0
19 minut temu, Niezgodny napisał:

Dzięki, a jeśli chcę żeby gracz przed tym jak się odrodzi miał czarny ekran (wtedy te napisy) i kiedy znikną to wróci do rzeczywistości czyli normalnie może grać bez ograniczonej widoczności?

I jeszcze jedno, jeśli chce by ten zombie był przebrany za skina np. babci. Co wtedy dopisać/jak wtedy będzie wyglądać skrypt

O ile pierwszą rzecz można spokojnie zrobić, tak drugą należałoby rozwiązać poprzez paczkę zasobów (resource pack). Z tym skinem to co najwyżej mogę dać mu główkę babci i dać skórzaną zbroję.

command /start:
	trigger:
		teleport player to {lokacja::start}
		set {_x} to random integer between -20 and 20
		set {_z} to random integer between -20 and 20
		spawn a zombie at location (x-loc of location of the player + {_x}), y-loc of location of the player, (z-loc of location of the player + {_z}) in player's world
		equip last spawned zombie with all leather armor
		equip last spawned zombie with skull of ("Grandma" parsed as offline player)
		set last spawned zombie's tool to stick
		set last spawned zombie's name to "&c&lStraznik"
		
command /setloc <text>:
	trigger:
		if player is not op:
			stop
		if arg 1 is "start":	
			set {lokacja::start} to location of the player
			send "&aPomyslnie ustawiono lokalizacje startu!" to player
		if arg 1 is "poczekalnia":
			set {lokacja::poczekalnia} to location of the player
			send "&aPomyslnie ustawiono lokalizacje poczekalni!" to player
		
on target:
	if event-entity is not zombie:
		stop
	if name of event-entity is not "&c&lStraznik":
		stop
	if distance between event-entity and target is less than 5:
		cancel event
		stop
	apply potion of speed 1 to event-entity for 5 seconds
	wait 5 seconds
	clear event-entity's target
	
on damage:
	if attacker is not zombie:
		stop
	if victim is not player:
		stop
	if name of attacker is not "&c&lStraznik":
		stop
	teleport victim to {lokacja::poczekalnia}
	apply potion of blindness 4 to victim for 6 seconds
	send title "&c&lPrzegrales!" with subtitle "&eSprobuj ponownie!" to victim for 6 seconds
	wait 5 seconds
	teleport victim to {lokacja::start}
	

Proszę, powinno teraz wystarczyć. Należy ustawić lokalizację startu i poczekalni. Poczekalnia najlepiej, aby była jakimś czarnym/ciemnym pokojem.

Edytowane przez Kormic
Odnośnik do komentarza
https://skript.pl/temat/41088-skrypt-na-agresywnego-npc/#findComment-256665
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

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