Ir para conteúdo

Posts Recomendados

Postado
  Em 14/02/2018 em 00:30, Yamborghini disse:

 

 

eu consegui fazer esse funcionar, porém, a vida e a mana não voltam e da alguns erros no console.... se você puder testar , estou no Celular

 

https://mega.nz/#!BkZ12CZa!PoW5-Vy0k-MiVs9CHX5o7j_Zo6VoAVdPjwIfMwNwiAE

 

OBS: 8.6 TFS0.4

Expand  

 

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 c = {
price = 50000,
vocations = {5,6,7,8},
newlevel = 8, -- novo level.
pos = {x=723, y=599, z=7}, -- Pos do templo
tmp = 3 -- apos esses segundos ele desloga automaticamente.
}

local xp = 8400 -- exp para do lvl 8
local hp = 185
local mp = 35

function creatureSayCallback(cid, type, msg) 
if(not npcHandler:isFocused(cid)) then 
return false 
end 
local playerid = getPlayerGUID(cid)
local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid 

if(msgcontains(msg, 'valan') or msgcontains(msg, 'semi deus')) then 
selfSay('Você quer virar valan por '..c.price..' gps? {yes} ', cid) 
talkState[talkUser] = 1 
elseif msgcontains(msg, 'yes') and talkState[talkUser] == 1 then
if isInArray(c.vocations, getPlayerVocation(cid)) then  
if doPlayerRemoveMoney(cid,c.price) == TRUE then 
db.query("UPDATE `players` SET `level` = "..c.newlevel..",`experience` = "..xp..",`mana` = "..mp..",`manamax` = "..mp..", `health` = "..hp..", `healthmax` = "..hp.." WHERE `players`.`id` = ".. playerid)
doPlayerSetPromotionLevel(cid, 2)
doTeleportThing(cid, c.pos)
doRemoveCreature(cid)
 else
  selfSay('You do not have the required vocation', cid)
  end
 else
 selfSay('You have already been promoted or doesnt have the necessary experience', cid)
 end
return true
end
end 
 

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

Fiz alterações do query da db, forçando as alterações por ela. Veja se da algum erro ^^

Postado
  Em 14/02/2018 em 12:03, SoulSarti disse:

 

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 c = {
price = 50000,
vocations = {5,6,7,8},
newlevel = 8, -- novo level.
pos = {x=723, y=599, z=7}, -- Pos do templo
tmp = 3 -- apos esses segundos ele desloga automaticamente.
}

local xp = 8400 -- exp para do lvl 8
local hp = 185
local mp = 35

function creatureSayCallback(cid, type, msg) 
if(not npcHandler:isFocused(cid)) then 
return false 
end 
local playerid = getPlayerGUID(cid)
local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid 

if(msgcontains(msg, 'valan') or msgcontains(msg, 'semi deus')) then 
selfSay('Você quer virar valan por '..c.price..' gps? {yes} ', cid) 
talkState[talkUser] = 1 
elseif msgcontains(msg, 'yes') and talkState[talkUser] == 1 then
if isInArray(c.vocations, getPlayerVocation(cid)) then  
if doPlayerRemoveMoney(cid,c.price) == TRUE then 
db.query("UPDATE `players` SET `level` = "..c.newlevel..",`experience` = "..xp..",`mana` = "..mp..",`manamax` = "..mp..", `health` = "..hp..", `healthmax` = "..hp.." WHERE `players`.`id` = ".. playerid)
doPlayerSetPromotionLevel(cid, 2)
doTeleportThing(cid, c.pos)
doRemoveCreature(cid)
 else
  selfSay('You do not have the required vocation', cid)
  end
 else
 selfSay('You have already been promoted or doesnt have the necessary experience', cid)
 end
return true
end
end 
 

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

Fiz alterações do query da db, forçando as alterações por ela. Veja se da algum erro ^^

Expand  

 

mesma coisa :( só que agora ele não voltou para o level 8 e nem a vida voltou 

Postado
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 c = {
price = 50000,
vocations = {5,6,7,8},
pos = {x=723, y=599, z=7}, -- Pos do templo
tmp = 3 -- apos esses segundos ele desloga automaticamente.
}

local xp = 4200 -- exp para do lvl 8
local hp = 185
local mp = 35

function creatureSayCallback(cid, type, msg) 
if(not npcHandler:isFocused(cid)) then 
return false 
end 
local playerid = getPlayerGUID(cid)
local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid 

if(msgcontains(msg, 'valan') or msgcontains(msg, 'semi deus')) then 
    selfSay('Você quer virar valan por '..c.price..' gps? {yes} ', cid) 
    talkState[talkUser] = 1 
elseif msgcontains(msg, 'yes') and talkState[talkUser] == 1 then
       if isInArray(c.vocations, getPlayerVocation(cid)) then  
          if doPlayerRemoveMoney(cid,c.price) == TRUE then 
             doPlayerSetPromotionLevel(cid, 2)
             local CheckExp = getPlayerExperience(cid)
          
             doPlayerAddExperience(cid, -CheckExp)
             doPlayerAddExp(cid, xp)
             setCreatureMaxHealth(cid, hp)
             setCreatureMaxMana(cid, mp)
             doCreatureAddHealth(cid, getCreatureMaxHealth(cid))
             doPlayerAddMana(cid, mp)
             doPlayerSave(cid, true)          
             addEvent(doRemoveCreature, 3000, cid)
             doTeleportThing(cid, c.pos)
          else
             selfSay('Voce nao tem o dinheiro necessario', cid)
          end
       else
           selfSay('Voce ja foi promovido ou nao tem a vocação necessaria.', cid)
       end
elseif msgcontains(msg, 'no') and talkState[talkUser] == 1 then
selfSay('Que assim seja.', cid) 
talkState[talkUser] = 0
end
return true
end 
 

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

Tente agora. Acho que nao vai mais dar erro algum

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.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
  • Estatísticas dos Fóruns

    96.9k
    Tópicos
    519.6k
    Posts
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo