Merhaba,
- Bir arkadaş için yazdığım script paylaşmak istedim kendinede sormuş bulunmaktayım.Pet sisteminde pet size 15 blok yakınsa yürüyerek yanınıza geliyor eğer 15 bloktan uzaksa peti size ışınlayıp bug olmasını önlüyoruz.Herhangi lag yapacak bir eklenti bulunmamakta, while sistemi kullanılmıştır tps düşüşü pek yaşanmayabilir, oyuncu sayısına göre değişken olabilir..
Gerekli,
- Skript ∞
- skQuery ∞
Destekliyor,
- MultiverseCore ∞
- GUI ∞
Mesajlar,
Kod,
Kod:
#Load
on load:
loop {pet.listesi::*}:
kill loop-value
#Disconnect
on disconnect:
"%{pet.listesi::*}%" contains "%{pet.%player%}%":
kill {pet.%player%}
delete {pet.%player%}
remove {pet.%player%} from {pet.listesi::*}
#Pet
command /pet [<text>]:
trigger:
#Gönder
arg 1 is "gönder":
"%{pet.listesi::*}%" contains "%{pet.%player%}%":
kill {pet.%player%}
message "&8[&eIMGS NW&8] &7Petiniz geri gönderildi.."
delete {pet.%player%}
remove {pet.%player%} from {pet.listesi::*}
else:
message "&8[&eIMGS NW&8] &cPetiniz bulunmamaktadir.."
delete {pet.%player%}
stop trigger
#Petler
arg 1 is "köylü":
{pet.%player%} isn't set:
message "&8[&eIMGS NW&8] &7Petiniz yaniniza çağirildi."
spawn 1 villager at player's location
set name of spawned entity to "&e&l%player%&a'in Hayvani"
set {pet.%player%} to spawned entity
add spawned entity to {pet.listesi::*}
while {pet.%player%} is spawned entity:
wait 6 tick
if distance between player and last spawned entity is less than 15:
make last spawned entity pathfind to player with speed 0.8
else if distance between player and last spawned entity is bigger than 15:
teleport last spawned entity to player
wait 3 tick
arg 1 is "iskelet":
{pet.%player%} isn't set:
message "&8[&eIMGS NW&8] &7Petiniz yaniniza çağirildi."
spawn 1 skeleton at player's location
clear spawned entity's inventory
set name of spawned entity to "&e&l%player%&a'in Hayvani"
set {pet.%player%} to spawned entity
add spawned entity to {pet.listesi::*}
while {pet.%player%} is spawned entity:
wait 6 tick
if distance between player and last spawned entity is less than 15:
make last spawned entity pathfind to player with speed 1
else if distance between player and last spawned entity is bigger than 15:
teleport last spawned entity to player
arg 1 is "kurt":
{pet.%player%} isn't set:
message "&8[&eIMGS NW&8] &7Petiniz yaniniza çağirildi."
spawn 1 wolf at player's location
set name of spawned entity to "&e&l%player%&a'in Hayvani"
set {pet.%player%} to spawned entity
add spawned entity to {pet.listesi::*}
while {pet.%player%} is spawned entity:
wait 6 tick
if distance between player and last spawned entity is less than 15:
make last spawned entity pathfind to player with speed 1
else if distance between player and last spawned entity is bigger than 15:
teleport last spawned entity to player
arg 1 is "domuz":
{pet.%player%} isn't set:
message "&8[&eIMGS NW&8] &7Petiniz yaniniza çağirildi."
spawn 1 pig at player's location
set name of spawned entity to "&e&l%player%&a'in Hayvani"
set {pet.%player%} to spawned entity
add spawned entity to {pet.listesi::*}
while {pet.%player%} is spawned entity:
wait 6 tick
if distance between player and last spawned entity is less than 15:
make last spawned entity pathfind to player with speed 1
else if distance between player and last spawned entity is bigger than 15:
teleport last spawned entity to player
arg 1 is "cadi":
{pet.%player%} isn't set:
message "&8[&eIMGS NW&8] &7Petiniz yaniniza çağirildi."
spawn 1 witch at player's location
set name of spawned entity to "&e&l%player%&a'in Hayvani"
set {pet.%player%} to spawned entity
add spawned entity to {pet.listesi::*}
while {pet.%player%} is spawned entity:
wait 6 tick
if distance between player and last spawned entity is less than 15:
make last spawned entity pathfind to player with speed 1
else if distance between player and last spawned entity is bigger than 15:
teleport last spawned entity to player
arg 1 is "leopar":
{pet.%player%} isn't set:
message "&8[&eIMGS NW&8] &7Petiniz yaniniza çağirildi."
spawn 1 ocelot at player's location
set name of spawned entity to "&e&l%player%&a'in Hayvani"
set {pet.%player%} to spawned entity
add spawned entity to {pet.listesi::*}
while {pet.%player%} is spawned entity:
wait 6 tick
if distance between player and last spawned entity is less than 15:
make last spawned entity pathfind to player with speed 1
else if distance between player and last spawned entity is bigger than 15:
teleport last spawned entity to player
arg 1 is "tavuk":
{pet.%player%} isn't set:
message "&8[&eIMGS NW&8] &7Petiniz yaniniza çağirildi."
spawn 1 chicken at player's location
set name of spawned entity to "&e&l%player%&a'in Hayvani"
set {pet.%player%} to spawned entity
add spawned entity to {pet.listesi::*}
while {pet.%player%} is spawned entity:
wait 6 tick
if distance between player and last spawned entity is less than 15:
make last spawned entity pathfind to player with speed 1
else if distance between player and last spawned entity is bigger than 15:
teleport last spawned entity to player
arg 1 is "at":
{pet.%player%} isn't set:
message "&8[&eIMGS NW&8] &7Petiniz yaniniza çağirildi."
spawn 1 horse at player's location
set name of spawned entity to "&e&l%player%&a'in Hayvani"
set {pet.%player%} to spawned entity
add spawned entity to {pet.listesi::*}
while {pet.%player%} is spawned entity:
wait 6 tick
if distance between player and last spawned entity is less than 15:
make last spawned entity pathfind to player with speed 1
else if distance between player and last spawned entity is bigger than 15:
teleport last spawned entity to player
#Menü
arg 1 isn't set:
wait 6 tick
open chest with 1 rows named "&8Pet Menüsü" to player
format slot 0 of player with 383:120 named "&aKöylü" to close then run [make player execute command "pet köylü"]
format slot 1 of player with 383:51 named "&aSkeleton" to close then run [make player execute command "pet iskelet"]
format slot 2 of player with 383:95 named "&aKurt" to close then run [make player execute command "pet kurt"]
format slot 3 of player with 383:90 named "&aDomuz" to close then run [make player execute command "pet domuz"]
format slot 4 of player with 383:66 named "&aCadi" to close then run [make player execute command "pet cadi"]
format slot 5 of player with 383:98 named "&aLeopar" to close then run [make player execute command "pet leopar"]
format slot 6 of player with 383:93 named "&aTavuk" to close then run [make player execute command "pet tavuk"]
format slot 7 of player with 383:100 named "&aAt" to close then run [make player execute command "pet at"]
format slot 8 of player with end portal named "&cGönder" to close then run [make player execute command "/pet gönder"]
#Drop
on death of blaze or pig or witch or chicken or horse or wolf:
name of victim contains "'in Hayvani":
clear drops
#Target
on entity target:
name of event-entity contains "'in Hayvani":
cancel event
#Day Fire
on combust:
name of event-entity contains "'in Hayvani":
cancel event
#Damage
on damage of entity:
name of victim contains "'in Hayvani":
chance of 50%:
message "&8[&eIMGS NW&8] &7Petlere saldiramazsiniz.." to attacker
cancel event
else:
cancel event
#Teleport
on teleport:
wait 3 tick
loop 4 times:
wait 1 second
teleport {pet.%player%} to player