Seagull 19 Postado Março 28, 2014 Share Postado Março 28, 2014 (editado) Bom, boa noite primeiramente. Estou voltando aos otservers porém agora com o intuito de aprender, principalmente programação porém as vezes preciso de uma ajuda ( mais pra tirar dúvidas pois não manjo muito). Então se tiver alguem que manje bastante, como garou por exemplo, ou seila outros membros. Me mandem o face... Um exemplo de ajuda de script que preciso é esse, que estava fazendo mas não ta funcionando: Na verdade este é meu "primeiro" script em anos. Sempre li tutoriais mais nunca tinha uma ideia, e agora surgiu e quis por em praticas mas estou enfrentando problemas. function onAttack(cid, target) -- Ao Atacar. local skulls = {1, 2, 3, 4, 5} if isPlayer(cid) and isPlayer(target) then if and getPlayerStorageValue(cid, 3000) == 1 getPlayerStorageValue(target, 2000) == 1 then if getPlayerStorageValue(cid, 3000) == 1 and getCreatureSkullType(cid) == skulls then doCreatureSetSkullType(cid, 0) doPlayerAddExp(cid, 1) doRemoveCondition(cid, CONDITION_INFIGHT) end end end return true end Os scripts criados, postarei aqui para ajudar a comunidade. Editado Março 28, 2014 por Seagull Link para o comentário https://xtibia.com/forum/topic/230869-encerrado-d%C3%BAvida/ Compartilhar em outros sites More sharing options...
RicardoIanelli 2 Postado Março 28, 2014 Share Postado Março 28, 2014 (editado) 1º - Ali você checa a variavel "inimigo" que não foi declarada.2º - Ali onde você ta usando getPlayerStorageValue(atacado, 2000) e todos os outros lugares que você tá usando "atacado" e "atacante" sem ser no primeiro if tem de ser trocados pra cid e target respectivamente, porque a função "isPlayer" é do tipo booleana, retorna true ou false só, e essas "getStorage", etc pedem uma integer, o id da criatura. 3º - Você tá botando 'getPlayerStorageValue(atacado, 2000) == true', mas essa getPlayerStorageValue retorna uma STRING xD Você pode salvar ela tipo:setPlayerStorageValue(cid, 2000, 1) ou setPlayerStorageValue(cid, 2000, 'true') e depois só comparar: (getPlayerStorageValue(atacado, 2000) == 'true') por exemplo. Editado Março 28, 2014 por RicardoIanelli Link para o comentário https://xtibia.com/forum/topic/230869-encerrado-d%C3%BAvida/#findComment-1630035 Compartilhar em outros sites More sharing options...
Seagull 19 Postado Março 28, 2014 Autor Share Postado Março 28, 2014 Tudo que você falou eu fiz, mesmo assim não funciona. Parece que não está funcionando pra nada. A storage já está setada em dois personagens. (cid, 3000, 1) (cid, 2000, 1) Link para o comentário https://xtibia.com/forum/topic/230869-encerrado-d%C3%BAvida/#findComment-1630051 Compartilhar em outros sites More sharing options...
Lordfire 309 Postado Março 28, 2014 Share Postado Março 28, 2014 No seu segundo if, as palavras estão na ordem errada. O and deve ficar no meio dos valores a serem comparados. x and y, e não and x y. Do mais, o que o script deveria fazer? Se eu não sei o que você quer, impossivel ajudar. Link para o comentário https://xtibia.com/forum/topic/230869-encerrado-d%C3%BAvida/#findComment-1630269 Compartilhar em outros sites More sharing options...
Stigal 585 Postado Abril 21, 2018 Share Postado Abril 21, 2018 A questão neste tópico de suporte foi encerrada por falta de respostas. Este tópico está fechado e foi movido para Suporte - Tópicos Sem Resposta. + Caso a dúvida não tenha sido resolvida você poderá criar outro tópico solicitando ajuda. * Lembre-se que é permitido dar UP no tópico a cada 24 horas para assim o destacar e manter movimentado. Link para o comentário https://xtibia.com/forum/topic/230869-encerrado-d%C3%BAvida/#findComment-1735441 Compartilhar em outros sites More sharing options...
Posts Recomendados