soltore 4 Postado Outubro 29, 2015 Share Postado Outubro 29, 2015 Galera seguinte meu TFS é 0.3.6 cliente 8.54 Gostaria da ajuda de vocês para uma TALKACTION que troca-se o outifit do meu char, mas que caso ele se mova o outifit volta-se ao normal... ex: ele fala: !Transform - e seu outifit que antes era o CITIZEN muda para o de um arbusto - mas caso o player se mova o outifit novo eh cancelado e ele volta ao normal.. obs: ao se transformar nao tem tempo para voltar ao normal somente deslogando, ou se movendo. - caso ele gire no lugar o outifit nao mude ( ctrl + Setas) obrigado aguardo um apoio e prometo meu REP+ Link para o comentário https://xtibia.com/forum/topic/237602-talk-action-troca-de-outifit/ Compartilhar em outros sites More sharing options...
0 Antharaz 93 Postado Outubro 29, 2015 Share Postado Outubro 29, 2015 (editado) Desculpe a demora, achei que havia postado o script e só quando dei F5 para ver se você havia respondido que vi que não. Crie um arquivo chamado transform.lua no diretório data\talkactions\scripts com este conteúdo: local outfit = {lookType = 399} local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_EFFECT, 42) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0) local condition = createConditionObject(CONDITION_OUTFIT) setConditionParam(condition, CONDITION_PARAM_TICKS, 99999999999) addOutfitCondition(condition, outfit) setCombatCondition(combat, condition) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_DISPEL, CONDITION_OUTFIT) setCombatParam(combat2, COMBAT_PARAM_EFFECT, 42) setCombatParam(combat2, COMBAT_PARAM_AGGRESSIVE, 0) function ver(cid,pos) local onl = getOnlinePlayers() for i=1,#onl do if getPlayerByName(onl[i]) == cid then local npos = getCreaturePosition(cid) if pos.x == npos.x and pos.y == npos.y and pos.z == npos.z then addEvent(ver, 500, cid, npos) else doCombat(cid, combat2,numberToVariant(cid)) end end end end function onSay(cid, words, param) doCombat(cid, combat2,numberToVariant(cid)) doCombat(cid, combat,numberToVariant(cid)) addEvent(ver, 500, cid, getCreaturePosition(cid)) return true end Em local outfit = {lookType = 399} no lugar de 399 você coloca o looktype que deseja que fique. Em setCombatParam(combat, COMBAT_PARAM_EFFECT, EFEITO_INICIAR) e em setCombatParam(combat2, COMBAT_PARAM_EFFECT, EFEITO_TERMINAR) no lugar de EFEITO_INICIAR e EFEITO_TERMINAR você coloca o combat effect que deseja que fique ao ativar a talkaction e ao voltar ao normal respectivamente. Caso não queira nenhum efeito, basta deletar estas linhas. Coloque a linha XML abaixo no arquivo talkactions.xml da pasta data\talkactions antes de </talkactions>: <talkaction words="!transform" event="script" value="transform.lua"/> ========== EDIT =========== Como conversamos em privado, para o seu servidor é um caso especial, então use o script abaixo: local outfit = {lookType = 222 , lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0, lookAddons = 0} local function isOnline(cid) local onl = getOnlinePlayers() for i=1,#onl do if getPlayerByName(onl[i]) == cid then return true end end return false end local function ver(cid,pos) if isOnline(cid) then local npos = getCreaturePosition(cid) if pos.x == npos.x and pos.y == npos.y and pos.z == npos.z then addEvent(ver, 500, cid, npos) else doSetCreatureOutfit(cid, outfit, 0) end end end function onSay(cid, words, param) doSetCreatureOutfit(cid, outfit, -1) addEvent(ver, 500, cid, getCreaturePosition(cid)) return true end No lugar de 222 você coloca o looktype que deseja para a magia. Editado Outubro 29, 2015 por Antharaz Link para o comentário https://xtibia.com/forum/topic/237602-talk-action-troca-de-outifit/#findComment-1674348 Compartilhar em outros sites More sharing options...
0 soltore 4 Postado Outubro 29, 2015 Autor Share Postado Outubro 29, 2015 (editado) ok amigo irei testar agora mesma e ja torno com a resposta obrigado. #Edit - bom logo ao iniciar o server deu o seguinte erro na Distro;; [Waening - Event::loadScript] Event onSay not found <data/talkactions/scripts/transform.lua> Editado Outubro 29, 2015 por soltore Link para o comentário https://xtibia.com/forum/topic/237602-talk-action-troca-de-outifit/#findComment-1674351 Compartilhar em outros sites More sharing options...
0 Antharaz 93 Postado Outubro 29, 2015 Share Postado Outubro 29, 2015 (editado) Coloque o script transform.lua na pasta data/talkactions/scripts/, verifique se digitou o nome corretamente... eu não te passei o script todo, erro meu, editei o primeiro post... Editado Outubro 29, 2015 por Antharaz Link para o comentário https://xtibia.com/forum/topic/237602-talk-action-troca-de-outifit/#findComment-1674353 Compartilhar em outros sites More sharing options...
0 soltore 4 Postado Outubro 29, 2015 Autor Share Postado Outubro 29, 2015 Coloque o script transform.lua na pasta data/talkactions/scripts/, verifique se digitou o nome corretamente... Verificado tudo esta corredo sera que no arquivo transform.lua nao deveria conter.. function onSay(cid, words, param) por se tratar de uma talk ? ou nao ha necessidade.. Link para o comentário https://xtibia.com/forum/topic/237602-talk-action-troca-de-outifit/#findComment-1674354 Compartilhar em outros sites More sharing options...
0 Antharaz 93 Postado Outubro 29, 2015 Share Postado Outubro 29, 2015 eu não te passei o script todo, erro meu, editei o primeiro post... basta substituir o anterior por este, mil perdões. Link para o comentário https://xtibia.com/forum/topic/237602-talk-action-troca-de-outifit/#findComment-1674355 Compartilhar em outros sites More sharing options...
0 soltore 4 Postado Outubro 29, 2015 Autor Share Postado Outubro 29, 2015 (editado) eu não te passei o script todo, erro meu, editei o primeiro post... basta substituir o anterior por este, mil perdões. magina vamos ver se vai funfar '---' ja edito aqui informando... #Edit - Perfeito exatamente oque eu queria, muito abrigado.... so uma duvida quando eu ando ele demora alguns segundos para voltar ao outifit original teria como fazer voltar instantaneamente ? Editado Outubro 29, 2015 por soltore Link para o comentário https://xtibia.com/forum/topic/237602-talk-action-troca-de-outifit/#findComment-1674356 Compartilhar em outros sites More sharing options...
0 Antharaz 93 Postado Outubro 29, 2015 Share Postado Outubro 29, 2015 O tempo delay para verificar se saiu da posição está nessas duas linhas: addEvent(ver, 1000, cid, getCreaturePosition(cid)) addEvent(ver, 1000, cid, npos) O 1000 representa 1 segundo, basta diminuir este valor, se quiser a cada meio segundo coloque 500 e assim por diante. Link para o comentário https://xtibia.com/forum/topic/237602-talk-action-troca-de-outifit/#findComment-1674357 Compartilhar em outros sites More sharing options...
0 soltore 4 Postado Outubro 29, 2015 Autor Share Postado Outubro 29, 2015 O tempo delay para verificar se saiu da posição está nessas duas linhas: addEvent(ver, 1000, cid, getCreaturePosition(cid)) addEvent(ver, 1000, cid, npos) O 1000 representa 1 segundo, basta diminuir este valor, se quiser a cada meio segundo coloque 500 e assim por diante. eu deixei como 500, agora eu ando e ele nao volta a outifit ;/ outra coisa tbm q reparei anteriormente caso eu usa-se o comando 2x seguidas bugava e a outifit tbm nao retornava para a original Link para o comentário https://xtibia.com/forum/topic/237602-talk-action-troca-de-outifit/#findComment-1674358 Compartilhar em outros sites More sharing options...
0 Antharaz 93 Postado Outubro 29, 2015 Share Postado Outubro 29, 2015 Vamos lá, em relação a mudar para 500 e não voltar a outfit não aconteceu comigo, testei agora com 500, 700, 200 e 300 e em todos casos voltou ao normal, talvez seja problema no host. Em relação a usar 2 vezes a mesma talkaction eu resolvi acrescentando uma linha que remove a condição ao usar o comando. Editei o primeiro post com o código novo. Link para o comentário https://xtibia.com/forum/topic/237602-talk-action-troca-de-outifit/#findComment-1674359 Compartilhar em outros sites More sharing options...
0 soltore 4 Postado Outubro 29, 2015 Autor Share Postado Outubro 29, 2015 (editado) Vamos lá, em relação a mudar para 500 e não voltar a outfit não aconteceu comigo, testei agora com 500, 700, 200 e 300 e em todos casos voltou ao normal, talvez seja problema no host. Em relação a usar 2 vezes a mesma talkaction eu resolvi acrescentando uma linha que remove a condição ao usar o comando. Editei o primeiro post com o código novo. Esta perfeito agora amigo do jeito que eu queria no meu caso vou manter o delay 1000 mesmo nao faz tanta diferença, agora em relação ao resto esta perfeito mesmo creio que ha mais bugs ;D obrigado, te dei REP e amanha entro de novo aqui para te dar outro ^^. Pedido entegue duvida resolvida podem fechar o TOPICO. Editado Outubro 29, 2015 por soltore Link para o comentário https://xtibia.com/forum/topic/237602-talk-action-troca-de-outifit/#findComment-1674360 Compartilhar em outros sites More sharing options...
0 Antharaz 93 Postado Outubro 29, 2015 Share Postado Outubro 29, 2015 hahaha não precisa se incomodar tanto com rep, não ligo muito para isto não, eu ajudo por hobbie :x só não esquece de marcar como resolvido. Qualquer coisa pode me mandar MP. Link para o comentário https://xtibia.com/forum/topic/237602-talk-action-troca-de-outifit/#findComment-1674361 Compartilhar em outros sites More sharing options...
0 soltore 4 Postado Outubro 29, 2015 Autor Share Postado Outubro 29, 2015 vish hj loguei para terminar umas coisas manin e aproveitei para mostrar pro resto da equipe esse sistema de transform... o duro é que com o GOD funciona sem crise mais hj testei nos player normais de access = 1... ele transforma mas qndo anda nao volta ao normal 0.o ontem havia testado so no GOD.. Link para o comentário https://xtibia.com/forum/topic/237602-talk-action-troca-de-outifit/#findComment-1674378 Compartilhar em outros sites More sharing options...
0 Antharaz 93 Postado Outubro 29, 2015 Share Postado Outubro 29, 2015 Aqui funcionou normal, você tem link para o tópico do seu server com download para eu baixar e testar nele? Teste novamente por favor e olhe se deu algum erro... Link para o comentário https://xtibia.com/forum/topic/237602-talk-action-troca-de-outifit/#findComment-1674380 Compartilhar em outros sites More sharing options...
0 soltore 4 Postado Outubro 29, 2015 Autor Share Postado Outubro 29, 2015 vish link pra download nao vou ter pois essa tfs eu tenho ah um bom tempo rsrsrs mas se isto ajudar é tfs 0.3.6 - 8.54 segue a imagem com dados da distro: OBS: deletei tudo e adicionei tudo novamente e o bug nos players perciste ;/ Link para o comentário https://xtibia.com/forum/topic/237602-talk-action-troca-de-outifit/#findComment-1674384 Compartilhar em outros sites More sharing options...
0 Antharaz 93 Postado Outubro 29, 2015 Share Postado Outubro 29, 2015 (editado) Este erro não é do script e sim da source, mas é normal isto... acontece em quase todos OTServers... quero ver o erro quando você executa o comando... outra obs:.. eu baixei esse TFS 0.3.6 e rodei o script numa boa, tanto para player quanto para god, por isto que pedi o link de onde você baixou, para ver se é o host ou o server.... porque o script está ok... Se tiver como você upar o server para mim, mas retirando os sistemas da sua equipe, eu conseguiria arrumar o problema ou ao menos dizer aonde ele está... se for fazer isto, me passe o link por MP para não dar problema para sua equipe depois e se possível, passe seu contato (skype, etc) por MP também. Editado Outubro 29, 2015 por Antharaz Link para o comentário https://xtibia.com/forum/topic/237602-talk-action-troca-de-outifit/#findComment-1674386 Compartilhar em outros sites More sharing options...
Pergunta
soltore 4
Galera seguinte meu TFS é 0.3.6 cliente 8.54
Gostaria da ajuda de vocês para uma TALKACTION que troca-se o outifit do meu char, mas que caso ele se mova o outifit volta-se ao normal...
ex:
ele fala: !Transform
- e seu outifit que antes era o CITIZEN muda para o de um arbusto
- mas caso o player se mova o outifit novo eh cancelado e ele volta ao normal..
obs: ao se transformar nao tem tempo para voltar ao normal somente deslogando, ou se movendo.
- caso ele gire no lugar o outifit nao mude ( ctrl + Setas)
obrigado aguardo um apoio e prometo meu REP+
Link para o comentário
https://xtibia.com/forum/topic/237602-talk-action-troca-de-outifit/Compartilhar em outros sites
19 respostass a esta questão
Posts Recomendados