Ir para conteúdo

[Encerrado] {ajuda} erro /n jax


duflex

Posts Recomendados

erro ao sumonar /n jax (no caso meu npc) ele n sumona e tanto que aparece esse erro na distro :

 

 

[09/12/2015 23:03:44] [Error - LuaScriptInterface::loadFile] data/npc/scripts/Jax.lua:46: 'then' expected near 'if'
[09/12/2015 23:03:44] [Warning - NpcScript::NpcScript] Cannot load script: data/npc/scripts/Jax.lua
[09/12/2015 23:03:44] data/npc/scripts/Jax.lua:46: 'then' expected near 'if'

 

obs: meu rme ta bugado

Link para o comentário
Compartilhar em outros sites

aki e o .lua :

 

 

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}

function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink() npcHandler:onThink() end

local items = {
item1 = {20972, 12832}, -- item1 item que será pedido e que será dado na primeira troca
item2 = {20972, 20959} -- item2 item que será pedido e que será dado na segunda troca
}
local counts = {
count1 = {1, 1}, -- count1 quantidade que será pedido e que será dado na primeira troca
count2 = {15, 1} -- count2 quantidade que será pedido e que será dado na segunda troca
}

function creatureSayCallback(cid, type, msg)
if(not npcHandler:isFocused(cid)) then
return false
end
local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
if msgcontains(msg, 'master ball') then
selfSay('You want to swap '.. counts.count1[1] ..' '.. getItemNameById(items.item1[1]) ..' for '.. counts.count1[2] ..' '.. getItemNameById(items.item1[2]) ..'.',cid)
talkState[talkUser] = 1
elseif talkState[talkUser] == 1 then
if msgcontains(msg, 'yes') then
if getPlayerItemCount(cid, items.item1[1]) >= counts.count1[1] then
doPlayerRemoveItem(cid, items.item1[1], counts.count1[1])
doPlayerAddItem(cid, items.item1[2], counts.count1[2])
selfSay('You just swap '.. counts.count1[1] ..' '.. getItemNameById(items.item1[1]) ..' for '.. counts.count1[2] ..' '.. getItemNameById(items.item1[2]) ..'.', cid)
talkState[talkUser] = 0
else
selfSay('You need '.. counts.count1[1] ..' '.. getItemNameById(items.item1[1]) ..'.', cid)
end
else
selSay('Ok then!', cid)
talkState[talkUser] = 0
end
elseif msgcontains(msg, 'blazikenite') then
selfSay('You want to swap '.. counts.count2[1] ..' '.. getItemNameById(items.item2[1]) ..' for '.. counts.count2[2] ..' '.. getItemNameById(items.item2[2]) ..'.', cid)
talkState[talkUser] = 2
elseif talkSate[talkUser] == 2
if msgcontains(msg, 'yes') then
if getPlayerItemCount(cid, items.item2[1]) >= counts.count2[1] then
doPlayerRemoveItem(cid, items.item2[1], counts.count2[1])
doPlayerAddItem(cid, items.item2[2], counts.count2[2])
selfSay('You just swap '.. counts.count2[1] ..' '.. getItemNameById(items.item2[1]) ..' for '.. counts.count2[2] ..' '.. getItemNameById(items.item2[2]) ..'.', cid)
talkState[talkUser] = 0
else
selfSay('You need '.. counts.count2[1] ..' '.. getItemNameById(items.item2[1]) ..'.', cid)
end
else
selfSay('Ok then!', cid)
talkState[talkUser] = 0
end
end
return TRUE
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

 

 

E Aki É o .xml :

 

 

 

 

 

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Jax" script="Jax.lua" walkinterval="2000" floorchange="0">
<health now="150" max="150" />
<look type="134" head="57" body="59" legs="40" feet="76" corpse="2212" />
<parameters>
<parameter key="message_greet" value="Hello |PLAYERNAME|. Do not want to make an exchange? I have {master ball} and {blazikenite}." />
<parameter key="message_farewell" value="Bye bye!" />
</parameters>
</npc>

 


Poste o arquivo Jax.lua Para eu poder identificar o erro e conserta!

 

Link para o comentário
Compartilhar em outros sites

Troca o Jax.lua por este:

 

 

 

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink() npcHandler:onThink() end
local items = {
item1 = {20972, 12832}, -- item1 item que será pedido e que será dado na primeira troca
item2 = {20972, 20959} -- item2 item que será pedido e que será dado na segunda troca
}
local counts = {
count1 = {1, 1}, -- count1 quantidade que será pedido e que será dado na primeira troca
count2 = {15, 1} -- count2 quantidade que será pedido e que será dado na segunda troca
}
function creatureSayCallback(cid, type, msg)
if(not npcHandler:isFocused(cid)) then
return false
end
local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
if msgcontains(msg, 'master ball') then
selfSay('You want to swap '.. counts.count1[1] ..' '.. getItemNameById(items.item1[1]) ..' for '.. counts.count1[2] ..' '.. getItemNameById(items.item1[2]) ..'.',cid)
talkState[talkUser] = 1
elseif talkState[talkUser] == 1 then
if msgcontains(msg, 'yes') then
if getPlayerItemCount(cid, items.item1[1]) >= counts.count1[1] then
doPlayerRemoveItem(cid, items.item1[1], counts.count1[1])
doPlayerAddItem(cid, items.item1[2], counts.count1[2])
selfSay('You just swap '.. counts.count1[1] ..' '.. getItemNameById(items.item1[1]) ..' for '.. counts.count1[2] ..' '.. getItemNameById(items.item1[2]) ..'.', cid)
talkState[talkUser] = 0
else
selfSay('You need '.. counts.count1[1] ..' '.. getItemNameById(items.item1[1]) ..'.', cid)
end
else
selSay('Ok then!', cid)
talkState[talkUser] = 0
end
elseif msgcontains(msg, 'blazikenite') then
selfSay('You want to swap '.. counts.count2[1] ..' '.. getItemNameById(items.item2[1]) ..' for '.. counts.count2[2] ..' '.. getItemNameById(items.item2[2]) ..'.', cid)
talkState[talkUser] = 2
elseif talkSate[talkUser] == 2 then
if msgcontains(msg, 'yes') then
if getPlayerItemCount(cid, items.item2[1]) >= counts.count2[1] then
doPlayerRemoveItem(cid, items.item2[1], counts.count2[1])
doPlayerAddItem(cid, items.item2[2], counts.count2[2])
selfSay('You just swap '.. counts.count2[1] ..' '.. getItemNameById(items.item2[1]) ..' for '.. counts.count2[2] ..' '.. getItemNameById(items.item2[2]) ..'.', cid)
talkState[talkUser] = 0
else
selfSay('You need '.. counts.count2[1] ..' '.. getItemNameById(items.item2[1]) ..'.', cid)
end
else
selfSay('Ok then!', cid)
talkState[talkUser] = 0
end
end
return TRUE
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

 

Link para o comentário
Compartilhar em outros sites

AE DEU CERRTO VALEU CARA TU E FODA <3 REP +


tenho 3 perguntas como faço pra ele dar pokes em troca de item ?? tipo eu do 25 points em troca de 1 poke ???

 

e 2- como muda nick do npc ??

 

 

3- o 2 item n funciona o master ball funciona normal mas o blazikenite n funfa ele n me da o item e nem tira os points pq ?


e outra como muda roupa dele ?

Link para o comentário
Compartilhar em outros sites

1- Você está utilizando qual Base?
2- Muda o nick onde tiver com o NOMENPC para o nick do seu npc e para mudar a outfit mude aonde estiver OUTFITAQUI para a outfit do npc:

 


<?xml version="1.0" encoding="UTF-8"?>
<npc name="NOMENPC" script="Jax.lua" walkinterval="2000" floorchange="0">
<health now="150" max="150" />
<look type="OUTFITAQUI" head="57" body="59" legs="40" feet="76" corpse="2212" />
<parameters>
<parameter key="message_greet" value="Hello |PLAYERNAME|. Do not want to make an exchange? I have {master ball} and {blazikenite}." />
<parameter key="message_farewell" value="Bye bye!" />
</parameters>

</npc>

 


3- Não entendi, poderia refazer está dúvida?

Editado por Drazyn1291
Link para o comentário
Compartilhar em outros sites

1- base cyan v1 mais eu adicionei os nto points da base nto black white

3-por exemplo os "points" no caso eu troco 1 point por 1 master ball e ele re-tira os points e me da a master ball corretamente

mas no caso do item 2 ele tem que retirar 15 point e entregar 1 mega stone só que quando eu falo "blazikenite" ele fala 15 points for blazikenite e entao eu falo yes e ele não retira os points e não me entrega a mega stone

Link para o comentário
Compartilhar em outros sites

Estes "Points" São por items? Por storage? Pela database? Como que funciona +-?? Poderia me mandar o arquivo do /cb?(Vá em talkactions.xml, abra e procure por /cb, então veja qual arquivo que está carregando está talkaction e me mande o código!

Link para o comentário
Compartilhar em outros sites

point e apenas um item que eu add ele n tem nem uma função eu criei ele para dar aos players que donatarem pra trocar com o npc por items/pokemons shops entendeu ?


são apenas itens sem função entendeu ?? criados para trocar com o npc mas o problema é que o npc não está trocando o item 2

 

 

 

por exemplo: eu quero trocar os points pelos 2 items

 

exemplo2: o 1 item é asim eu do 1 ponto por 1 master ball

 

o 2 item e asim eu do 15 pontos por 1 mega stone entendeu ??? só que não pega


o item 1 pega o item 2 (mega stone) não


eai pode me ajudar ?


Estes "Points" São por items? Por storage? Pela database? Como que funciona +-?? Poderia me mandar o arquivo do /cb?(Vá em talkactions.xml, abra e procure por /cb, então veja qual arquivo que está carregando está talkaction e me mande o código!

 


Estes "Points" São por items? Por storage? Pela database? Como que funciona +-?? Poderia me mandar o arquivo do /cb?(Vá em talkactions.xml, abra e procure por /cb, então veja qual arquivo que está carregando está talkaction e me mande o código!

 

pode me ajudar pf ???? ja expliquei oque é points points e apenas item não tem nem 1 função

Link para o comentário
Compartilhar em outros sites

point e apenas um item que eu add ele n tem nem uma função eu criei ele para dar aos players que donatarem pra trocar com o npc por items/pokemons shops entendeu ?

são apenas itens sem função entendeu ?? criados para trocar com o npc mas o problema é que o npc não está trocando o item 2

 

 

 

por exemplo: eu quero trocar os points pelos 2 items

 

exemplo2: o 1 item é asim eu do 1 ponto por 1 master ball

 

o 2 item e asim eu do 15 pontos por 1 mega stone entendeu ??? só que não pega

o item 1 pega o item 2 (mega stone) não

eai pode me ajudar ?

 

 

pode me ajudar pf ???? ja expliquei oque é points points e apenas item não tem nem 1 função

 

Cara, estou meio sem tempo, para refazer este script, porque do jeito que eu tentei fazer ia demorar mt e para min oq não tenho é tempo :/ Alguem ai pode ajudar o carinha?? Malz ai msm

Link para o comentário
Compartilhar em outros sites

  • 2 years later...
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
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...