Discussão:NPCs
De Mystical Tales
NPCs falantes
Isso é um pequeno tutorial de como criar events para NPCs virarem NPCs falantes. Se o seu NPC já tem um event especial só pra ele ou pra classe dele, não crie um event novo. Simplesmente insira o seu código no event dele.
A primeira coisa a fazer é modificar a cor da fala dele.
Acho importante deixar NPCs da mesma classe com cores iguais ou pelo menos parecidas. Por exemplo, podemos usar a cor 026 (vermelho) para todos os liches, mestre liches e magos negros. Podemos utilizar o templete COLOR_BLUE para todos os piratas. Assim, cada pirata falará em um tom de azul diferente.
ON=@CREATE SPEECHCOLOR=COLORS_BLUE
Então partimos direto para os TRIGGERS, que chamarão as falas:
ON=@NPCSEENEWPLAYER //Viu um char novo DORAND 7 //Escolha aleatória entre OITO linhas (a primeira linha é a 0) say Har! say Aye! Venha ca! say Har! Sua morte eh meu ganha pao. Hahaha! say Por mil moluscos! Dinheiro fácil! say Har! Dinheiro fácil! say Aye, capitão! Vitima a vista, Hahaha! say Homem ao bar! Huaaaahahahaha! say Hey, <SRC.SEX mandriao/donzela>! Seu dinheiro paga meu rum! END
Note a linha que tem um <SRC.SEX> no meio. É um seletor de gênero. Se p gênero de SRC (o player visto) for masculino ele dirá mandrião. Se for feminino ele dirá donzela.
ON=@GETHIT //Foi golpeado DORAND 19 //Escolha aleatória entre vinte linhas say Ah! Macacos me mordam! say Ai! Pelas barbas do profeta! say Ahhhh! Cao sarnento! say Seu mandriao! END
Note que no @GETHIT foi feito um DORAND 19 mas apenas 4 linhas foram escritas. Se o número aleatório passar de 3, ele não falará nada. É um bom jeito (e limpo) de fazer o char falar algumas vezes, mas não todas. Nesse exemplo, ele tem 4/20 (ou 1/5) de chance de reclamar do golpe. Nas outras 4/5 vezes ele não dirá nada.
Outros Triggers interessantes para por fala são @HIT, @HITMISS, @SPELLCAST, @KILL e @DEATH.
Para cirar um emote, não use say. Use emoteyellow, emotered, emoteorange, emoteblue ou emotegreen.
--Galthar, o Errante 02h32min de 26 de Abril de 2009 (UTC)