Postado Agosto 17, 2013 11 anos Fala galera!! Possuo um servidor mapa global, que está crescendo bastante. Adicionei alguns eventos, tais como Battlefield, Zombie Event, etc.Porém, tenho recebido muitas reclamações relacionadas ao Zombie Event, onde muitos mages começam a sumonar monstros. Os Zombies matam esses monstros mas os caras se trapam com os bichos na frente dele, de forma que os Zombies dão preferencia aos outros jogadores. Além disso, as summons atrapalham a fuga dos participantes. Pensei em resolver o problema colocando um checker no script do Utevo Res, de forma a checar se o usuario da magia está com o storage do zombie event. O problema é que o Utevo Res não é por script, e sim por uma função pre-determinada no distro (me corrijam se eu estiver errado), como mostrado abaixo: <instant name="Summon Creature" words="utevo res" lvl="25" params="1" exhaustion="1900" needlearn="0" event="function" value="summonMonster"> Alguém possui um script que execute a mesma coisa dessa função do Utevo Res? Ou então conheçe alguma outra maneira de resolver o problema?? Achei a função da magia nas sources, mas é em C++, não sei transcrever isso para LUA para tentar fazer um script para a magia. Obrigado!!! Gabriel Nogueira. Editado Agosto 18, 2013 11 anos por alemao96 (veja o histórico de edições)
Postado Agosto 19, 2013 11 anos Autor Após várias tentativas frustantes, consegui resolver o problema! Eis que a solução mais simples era a resposta haha, vou compartilhar aqui para caso alguém esteja com o mesmo problema: Esse script vai em data/talkactions/scripts/block_summon.lua local pos = { minx = 32321, maxx = 32347, miny = 31924, maxy = 31946 } function onSay(cid, words, param, channel) if getThingPos(cid).x >= pos.minx and getThingPos(cid).x <= pos.maxx and getThingPos(cid).y >= pos.miny and getThingPos(cid).y <= pos.maxy then doPlayerSendCancel(cid,"You cant use this spell inside the Zombie Event!") return true end end E esse é a tag xml que você acrescenta em data/talkactions/talkactions.xml <talkaction words="utevo res" filter="word-spaced" event="script" value="block_summon.lua"/> Sabedores saberão que dá para encurtar bastante esse meu script, usando a função IsInArea. Descobri sobre essa função apenas depois de terminar o script. Como não estou com tempo para ajeitar e testar o script usando essa função, deixarei dessa forma, que está funcionando 100% pra mim. O tópico pode ser fechado agora. Abraço! Editado Agosto 19, 2013 11 anos por alemao96 (veja o histórico de edições)
Postado Agosto 20, 2013 11 anos Dúvida sanada, tag adicionada. Tópico movido! -"Supra Omnes Lux Lucis" - Acima de todos brilha a Luz -
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.