Credo cara seu problema e muito complexo, tenho a vaga impressao de que ninguem ira te ajudar hahhahah, se voce kizesse algo tipo como adaptar um servidor para sqlite algo que assassinasse sua criatividade e seu potencial vc certamente axaria dezenas de serial killers dispostos a te "ajudar", mas nesse caso , nah eskece =p definitivamente ninguem ira contribuir para seu exito, por mais tosco q seja, nah, nos somos maus ;D, e nao adianta ser educado, pois nos nao sabemos o q e educaçao ;x
- Fórum
- xTibia - Notícias e Suporte
- Soluções
- Archived
- [ Resolvido ] Ajuda Em Movement
info
Grupo: Conde
Registrado: 07/05/08
Posts: 612
Reputação: +12
Char no Tibia: leviana luciferiana

Eu sei porque ocorre esse erro.
você está usando um script pra executar a função onequip e ondeequip.
pra isso o sistema convencional de onequip e ondeequip não é executado porque cabe ao script as informações condicionais do que ocorrerá com tal item.
ou seja você necessita declarar tudo o que for feito com esse item, tudo que ocorrerá tem que ser declarado no script acima.
isso quer dizer que pra ele gastar tempo você tem que declarar isso no script se não for declarado acontece isso ae que você postou.
e outra caso declare o tempo de uso do item terá que salvar as informações no item quando ele não for gasto por completo (salvar o tempo restante do item.)
complicado?
não.
trabalhoso.
não é só se dedicar um pouco.
info
Grupo: Barão
Registrado: 06/07/08
Posts: 206
Reputação: +14
Char no Tibia: Nao Jogo tibia

Mais ou menos o q eu imaginava, muito obrigado por me esclarecer esta duvida, pena que nao sei nada de scripting,talvez alguma alma generoza resolva criar um script para mim hehehehh, mas de qualker forma muito obrigado mais uma vez,se por acaso, algum dia voce nao tiver nada para fazer, e resolver dar uma estudada neste script eu nao ficaria triste xD
:positive: Thx :positive:
info
Grupo: Barão
Registrado: 06/07/08
Posts: 206
Reputação: +14
Char no Tibia: Nao Jogo tibia

Marcryzius, me da uma força ae se nao for muito complicado, apenas adicionar requerimento de lv minimo 200 no script plz.
Thx
info
Grupo: Barão
Registrado: 01/07/09
Posts: 216
Reputação: +4

Simplesmente adicione essa condição:
if getPlayerLevel(cid) >= LEVEL then
info
Grupo: Visconde
Registrado: 11/06/08
Posts: 363
Reputação: 0
Char no Tibia: Kyra Supreme

dgprado, evite double post's é considerado flood, e você deveria saber disto.
Se não lembra, releia as regras do fórum.
Abraço.
info
Grupo: Barão
Registrado: 06/07/08
Posts: 206
Reputação: +14
Char no Tibia: Nao Jogo tibia

OMG, pura falta de atençao peço desculpas.
info
Grupo: Conde
Registrado: 07/05/08
Posts: 612
Reputação: +12
Char no Tibia: leviana luciferiana

arrumei um tempinho e resolvi te ajudar.
adoro essas novas versões de ots tem muita funções novas e legais.
ta ae o script arrumado.
como eu disse no post acima
complicado?
não.
trabalhoso.
não é só se dedicar um pouco.
então arrumei o script pra você.
function onEquip(cid, item, slot)doTransformItem(item.uid, 10309, 1)
doDecayItem(item.uid)
doPlayerSendTextMessage(cid, 22, 'Now you have 2x extra experience!')
doPlayerSetExperienceRate(cid, 2)
return TRUE
end
function onDeEquip(cid, item, slot)
doTransformItem(item.uid, 10310, 1)
doPlayerSendTextMessage(cid, 22, 'Extra experience ended.')
doPlayerSetExperienceRate(cid, 1)
return TRUE
end
edited:
utiliza no movements.xml apenas isso que vai funcionar perfeitamente.
é desnecessario o uso de todos eles só esses dois ja resolvem.
dessa forma ele não envia duas vezes o mesmo texto.
<movevent type="Equip" itemid="10309" slot="ring" level="200" event="script" value="luva.lua"/><movevent type="DeEquip" itemid="10310" slot="ring" level="200" event="script" value="luva.lua"/>
já o level necessario pra usar o ring você tem que declarar dentro do script.lua
Editado Setembro 5 por Marcryzius
info
Grupo: Barão
Registrado: 06/07/08
Posts: 206
Reputação: +14
Char no Tibia: Nao Jogo tibia

Aeww mano, muito obrigado mais uma vez e parabens pela sua competencia e principalmente pela sua acessibilidade,o conhecimento egoista faz dos grandes genios simples tolos, e voce se mostra cada vez mais grandioso nao so pelo seu conhecimento mas sim em compartilhar-lo com humildes usuarios como eu.
Quanto a dica de iRockStar nao funcionou deu um erro no console mas valeu pela iniciativa e isso me deu uma idea que axo q podera resolver este problema,
Marcryzius testei aki, so com as 2 tags a luva nao equipa,andei observando e pude perceber que todos os rings possuem 2 tags, uma de equip e uma de deequip para o item equipado.
Thax all
Editado Setembro 5 por dgprado
info
Grupo: Conde
Registrado: 07/05/08
Posts: 612
Reputação: +12
Char no Tibia: leviana luciferiana

qual dos desses dois é o anel que fica no slot ring?
<movevent type="Equip" itemid="10309" slot="ring" level="200" event="script" value="luva.lua"/><movevent type="DeEquip" itemid="10310" slot="ring" level="200" event="script" value="luva.lua"/>
info
Grupo: Barão
Registrado: 06/07/08
Posts: 206
Reputação: +14
Char no Tibia: Nao Jogo tibia

qual dos desses dois é o anel que fica no slot ring?
O item que fica no slot ring e o item equipado 10309 a luva brilhando, mas ja consegui resolver todos os problemas.
function onEquip(cid, item, slot) if getPlayerLevel(cid) > 30 then else doPlayerSendTextMessage(cid,22,"Somente players de lv 200+ podem usar a luva.") return FALSE end doTransformItem(item.uid, 10309, 1) doDecayItem(item.uid) doPlayerSendTextMessage(cid, 22, 'Now you have 2x extra experience!') doPlayerSetExperienceRate(cid, 2) return TRUE end function onDeEquip(cid, item, slot) doTransformItem(item.uid, 10310, 1) doPlayerSendTextMessage(cid, 22, 'Extra experience ended.') doPlayerSetExperienceRate(cid, 1) return TRUE end
E o problema das 2 mensagens resolvi criando um segundo script chamado luva2.lua, que seria uma copia do luva.lua porem sem a linha doPlayerSendTextMessage(cid, 22, 'Now you have 2x extra experience!')
usando essas tags em movements.xml:
<movevent type="Equip" itemid="10309" slot="ring" level="200" event="script" value="luva.lua"/><!-- Luva em uso-->
<movevent type="DeEquip" itemid="10309" slot="ring" level="200" event="script" value="luva.lua"/><!-- Luva em uso-->
<movevent type="Equip" itemid="10310" slot="ring" level="200" event="script" value="luva2.lua"/><!-- luva despida-->
<movevent type="DeEquip" itemid="10310" slot="ring" level="200" event="script" value="luva.lua"/><!-- luva despida-->
Valeu a todos pelas dicas :positive:
info
Grupo: Marquês
Registrado: 17/01/08
Posts: 1.5k
Reputação: +15
Char no Tibia: Saint Claire

Problema Resolvido,
:button_cancel: Tópico Fechado





info
Grupo: Barão
Registrado: 06/07/08
Posts: 206
Reputação: +14
Char no Tibia: Nao Jogo tibia
Duvidas sanadas item 100% thx all.
Bom criei este item inspirado no ring of xp, porem ela nao esta gastando os 60 minutos que possui se alguem poder dar um auxilio ficaria muito grato, aki vai o link do post com todos os detalhes.
Scripts:
movements.xml
movements .lua
itens.xml
<item id="10309" article="a" name="Luva de Akilliz"> <attribute key="weight" value="40"/> <attribute key="description" value="Voce pode sentir o poder desta luva."/> <attribute key="slotType" value="ring"/> <attribute key="decayTo" value="10311"/> <attribute key="transformDeEquipTo" value="10310"/> <attribute key="duration" value="3600"/> <attribute key="showduration" value="1"/> </item> <item id="10310" article="a" name="Luva de Akilliz"> <attribute key="weight" value="40"/> <attribute key="description" value="Dizem os sabios que esta luva pode aumentar seu poder evolutivo quando vestida."/> <attribute key="slotType" value="ring"/> <attribute key="transformEquipTo" value="10309"/> <attribute key="stopduration" value="1"/> <attribute key="showduration" value="1"/> </item> <item id="10311" article="a" name="Luva de Akilliz descarregada"> <attribute key="weight" value="40"/> <attribute key="description" value="Talvez o homem mais forte do mundo possa recarregar este poderoso acessorio."/> </item>Thx
Editado Setembro 6 por dgprado