Pesquisar na Comunidade
Mostrando resultados para as tags ''mobtarget''.
Encontrado 1 registro
-
script [Tutorial] Fazendo com que os mobs Não ataquem seus Donos
um tópico no fórum postou FilipeNock Tutoriais
PRIMEIRAMENTE OLÁ A TODOS! Eu recentemente vi varios Gringos perguntando como se faz! pra quando o player spawnar um mob esse suposto mob não atacar o player que o spawnou! bom pra começar temos que fazer com que quando ele spawne algum mob ele adicione esse mob pra uma lista do jogador on rightclick with zombie spawn egg: cancel event #CANCELAMOS O EVENTO PARA SPAWNAR UM MOB spawn a zombie at location of player #AQUI A GENTE SPAWNA O MOB NO CASO USEI O ZOMBIE set name of last spawned zombie to "&b%player%'s Zombie" #SE QUISER COLOCAR UM NOME NO MOB USE ISSO! add last spawned entity to {target.%player%::*} #E POR FINAL ADICIONAMOS O MOB NA LISTA DO JOGADOR se voce preferir pode colocar pra checkar o nome do ovo on rightclick with zombie spawn egg: if name of tool of player is "&eSpawner de um Zombie": cancel event spawn a zombie at location of player set name of last spawned zombie to "&b%player%'s Zombie" add last spawned entity to {target.%player%::*} Após isso fica facil, temos que pegar o evento que a entidade pretende atacar o jogador e fazer um check na variavel de Lista, Se esse mob estiver na lista vai cancelar o evento on entity target: loop {target.%target%::*}: #LOOP NA VARIAVEL DO JOGADOR if loop-value is event-entity: #CHECK SE A ENTIDADE ESTA NA LISTA cancel event Podemos adicionar uma coisa pra deletar a variavel pra nunca acumular entidades on join: delete {target.%player%::*} Bom até ai tudo bem! agora queremos que esse suposto mob teleporte pra mim se ele estiver longe demais primeiramente vamos colocar um delay para que não de lag no check porque cada vez que o player fazer um movimente vai fazer um loop on any move: set {_delay} to difference between {delay.%player%} and now #FAZENDO O CHECK DO DELAY if {_delay} is less than 2 seconds: #AQUI ELE VAI VER SE O DELAY FOR 2 SEGUNDOS loop {target.%player%::*}: #SE O COUNTDOWN NAO ESTIVER ATIVO ELE VAI FAZER UM LOOP NA VARIAVEL DO PLAYER if distance between loop-value and player is more than 10: #VAI CHECKAR SE A DISTANCIA DO PLAYER E DA ENTIDADE É MAIOR QUE 10 BLOCOS teleport loop-value to player #SE FOR ELE VAI TELEPORTAR PARA O JOGADOR else: set {delay.%player%} to now #AQUI ELE REMOVE A COUNTDOWN PARA INICIAR NOVAMENTE e Pronto esse foi o Tutorial se quiserem o codigo completo Entre aqui GITHUB LIKE SE GOSTOU :)!