Ir para conteúdo
  • 0

[8.54] Npc Reborn


Raidou

Pergunta

Bom pessoal,estou com uma dúvida,estou criando um WoDBO 8.54,e peguei este NPC que o Beeki,postou aki no XTibia.

 

Reborn.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 config = {

--[Vocation] = ( Nova Vocation, New Outfit )

[21] = { 22, 137},

[254] = { 255, 351},

[36] = { 37, 148},

[51] = { 52, 144},

[65] = { 66, 152},

[378] = { 379, 451},

[80] = { 81, 150},

[93] = { 94, 150},

[107] = { 108, 509},

[118] = { 119, 118},

[131] = { 132, 34},

[144] = { 145, 15},

[155] = { 156, 15},

[167] = { 168, 173},

[179] = { 180, 178},

[191] = { 192, 184},

[205] = { 206, 190},

[217] = { 218, 221},

[229] = { 230, 281},

[242] = { 243, 60},

[254] = { 255, 351},

[265] = { 266, 334},

[275] = { 276, 80},

[286] = { 287, 338},

[296] = { 297, 198},

 

}

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, 'reborn') and getPlayerStorageValue(cid,30025) == 4 then

selfSay('You are reborn.', cid)

focus = 0

talk_start = 0

 

elseif msgcontains(msg, 'reborn') and getPlayerLevel(cid) < 250 and getPlayerStorageValue(cid,30025) ~= 4 then

selfSay('Hehe, I say If you READY. You do not have 250 level.', cid)

 

elseif msgcontains(msg, 'reborn') then

selfSay('Are you sure? {yes}', cid)

talkState[talkUser] = 2

 

elseif msgcontains(msg, 'yes') and talkState[talkUser] ==2 and getPlayerLevel(cid) == 250 then

local voc = config[getPlayerVocation(cid)]

doPlayerSetVocation(cid, voc[1])

local outfit = {lookType = voc[2]}

doCreatureChangeOutfit(cid, outfit)

doPlayerAddExp(cid, -(getPlayerExperience(cid)-getExperienceForLevel(1)))

setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+20000)

setCreatureMaxMana(cid, getCreatureMaxMana(cid)+30000)

doCreatureAddHealth(cid, getCreatureMaxHealth(cid))

doCreatureAddMana(cid, getCreatureMaxMana(cid))

setPlayerStorageValue(cid,30025,4)

talkState[talkUser] = 0

 

elseif msgcontains(msg, 'yes') and getPlayerLevel(cid) ~= 250 then

selfSay('Desculpe, ' .. getCreatureName(cid) .. '! You need level 250 to reborn.', cid)

talkState[talkUser] = 0

 

elseif msgcontains(msg, 'yes') and talkState[talkUser] == 2 then

selfSay('Sorry, ' .. getCreatureName(cid) .. '! You must revert or transform to reborn.', cid)

talkState[talkUser] = 0

 

elseif msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then

selfSay('Good bye.', cid)

focus = 0

talk_start = 0

end

 

return true

end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)

npcHandler:addModule(FocusModule:new())

 

 

 

 

Reborn.XML

 

 

 

<?xml version="1.0" encoding="UTF-8"?>

<npc name="Reborn" script="data/npc/scripts/Reborn.lua" walkinterval="0" floorchange="0">

<health now="100" max="100"/>

<look type="143" head="78" body="82" legs="120" feet="94" addons="1"/>

</npc>

 

 

 

Mas,qual a minha dúvida?

 

Bom,queria que o player so poderá rebornar se for 250 ou maior.

 

Obrigado.

Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0

Tem certeza?

Vou tentar aki e ja edito.

 

@Edit

Não funfo man,no jogo eu falo assim.

 

hi

reborn

yes

 

Dai o NPC fala que eu n tenho level 250.

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

  • 0

Reborn.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 config = {
--[Vocation] = ( Nova Vocation, New Outfit )
[21] = { 22, 137},
[254] = { 255, 351},
[36] = { 37, 148},
[51] = { 52, 144},
[65] = { 66, 152},
[378] = { 379, 451},
[80] = { 81, 150},
[93] = { 94, 150},
[107] = { 108, 509},
[118] = { 119, 118},
[131] = { 132, 34},
[144] = { 145, 15},
[155] = { 156, 15},
[167] = { 168, 173},
[179] = { 180, 178},
[191] = { 192, 184},
[205] = { 206, 190},
[217] = { 218, 221},
[229] = { 230, 281},
[242] = { 243, 60},
[254] = { 255, 351},
[265] = { 266, 334},
[275] = { 276, 80},
[286] = { 287, 338},
[296] = { 297, 198},
}
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, 'reborn') and getPlayerStorageValue(cid,30025) == 4 then
selfSay('You are reborn.', cid)
focus = 0
talk_start = 0
elseif msgcontains(msg, 'reborn') and getPlayerLevel(cid) < 250 and getPlayerStorageValue(cid,30025) ~= 4 then
selfSay('Hehe, I say If you READY. You do not have 250 level.', cid)
elseif msgcontains(msg, 'reborn') then
selfSay('Are you sure? {yes}', cid)
talkState[talkUser] = 2
elseif msgcontains(msg, 'yes') and talkState[talkUser] ==2 and getPlayerLevel(cid) == 250 then
local voc = config[getPlayerVocation(cid)]
doPlayerSetVocation(cid, voc[1])
local outfit = {lookType = voc[2]}
doCreatureChangeOutfit(cid, outfit)
doPlayerAddExp(cid, -(getPlayerExperience(cid)-getExperienceForLevel(1)))
setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+20000)
setCreatureMaxMana(cid, getCreatureMaxMana(cid)+30000)
doCreatureAddHealth(cid, getCreatureMaxHealth(cid))
doCreatureAddMana(cid, getCreatureMaxMana(cid))
setPlayerStorageValue(cid,30025,4)
talkState[talkUser] = 0
elseif msgcontains(msg, 'yes') and getPlayerLevel(cid) >= 250 then
selfSay('Desculpe, ' .. getCreatureName(cid) .. '! You need level 250 to reborn.', cid)
talkState[talkUser] = 0
elseif msgcontains(msg, 'yes') and talkState[talkUser] == 2 then
selfSay('Sorry, ' .. getCreatureName(cid) .. '! You must revert or transform to reborn.', cid)
talkState[talkUser] = 0
elseif msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then
selfSay('Good bye.', cid)
focus = 0
talk_start = 0
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

to fora uns tempo ate me arrumar..

Link para o comentário
Compartilhar em outros sites

  • 0

Reborn.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 config = {
--[Vocation] = ( Nova Vocation, New Outfit )
[21] = { 22, 137},
[254] = { 255, 351},
[36] = { 37, 148},
[51] = { 52, 144},
[65] = { 66, 152},
[378] = { 379, 451},
[80] = { 81, 150},
[93] = { 94, 150},
[107] = { 108, 509},
[118] = { 119, 118},
[131] = { 132, 34},
[144] = { 145, 15},
[155] = { 156, 15},
[167] = { 168, 173},
[179] = { 180, 178},
[191] = { 192, 184},
[205] = { 206, 190},
[217] = { 218, 221},
[229] = { 230, 281},
[242] = { 243, 60},
[254] = { 255, 351},
[265] = { 266, 334},
[275] = { 276, 80},
[286] = { 287, 338},
[296] = { 297, 198},
}
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, 'reborn') and getPlayerStorageValue(cid,30025) == 4 then
selfSay('You are reborn.', cid)
focus = 0
talk_start = 0
elseif msgcontains(msg, 'reborn') and getPlayerLevel(cid) < 250 and getPlayerStorageValue(cid,30025) ~= 4 then
selfSay('Hehe, I say If you READY. You do not have 250 level.', cid)
elseif msgcontains(msg, 'reborn') then
selfSay('Are you sure? {yes}', cid)
talkState[talkUser] = 2
elseif msgcontains(msg, 'yes') and talkState[talkUser] ==2 and getPlayerLevel(cid) == 250 then
local voc = config[getPlayerVocation(cid)]
doPlayerSetVocation(cid, voc[1])
local outfit = {lookType = voc[2]}
doCreatureChangeOutfit(cid, outfit)
doPlayerAddExp(cid, -(getPlayerExperience(cid)-getExperienceForLevel(1)))
setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+20000)
setCreatureMaxMana(cid, getCreatureMaxMana(cid)+30000)
doCreatureAddHealth(cid, getCreatureMaxHealth(cid))
doCreatureAddMana(cid, getCreatureMaxMana(cid))
setPlayerStorageValue(cid,30025,4)
talkState[talkUser] = 0
elseif msgcontains(msg, 'yes') and getPlayerLevel(cid) >= 250 then
selfSay('Desculpe, ' .. getCreatureName(cid) .. '! You need level 250 to reborn.', cid)
talkState[talkUser] = 0
elseif msgcontains(msg, 'yes') and talkState[talkUser] == 2 then
selfSay('Sorry, ' .. getCreatureName(cid) .. '! You must revert or transform to reborn.', cid)
talkState[talkUser] = 0
elseif msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then
selfSay('Good bye.', cid)
focus = 0
talk_start = 0
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

to fora uns tempo ate me arrumar..

 

Não funfo amigo.

eu to level 300,ele dis que n tenho level 250

Link para o comentário
Compartilhar em outros sites

  • 0

Reborn.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 config = {
--[Vocation] = ( Nova Vocation, New Outfit )
[21] = { 22, 137},
[254] = { 255, 351},
[36] = { 37, 148},
[51] = { 52, 144},
[65] = { 66, 152},
[378] = { 379, 451},
[80] = { 81, 150},
[93] = { 94, 150},
[107] = { 108, 509},
[118] = { 119, 118},
[131] = { 132, 34},
[144] = { 145, 15},
[155] = { 156, 15},
[167] = { 168, 173},
[179] = { 180, 178},
[191] = { 192, 184},
[205] = { 206, 190},
[217] = { 218, 221},
[229] = { 230, 281},
[242] = { 243, 60},
[254] = { 255, 351},
[265] = { 266, 334},
[275] = { 276, 80},
[286] = { 287, 338},
[296] = { 297, 198},
}
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, 'reborn') and getPlayerStorageValue(cid,30025) == 4 then
selfSay('You are reborn.', cid)
focus = 0
talk_start = 0
elseif msgcontains(msg, 'reborn') and getPlayerLevel(cid) < 250 and getPlayerStorageValue(cid,30025) ~= 4 then
selfSay('Hehe, I say If you READY. You do not have 250 level.', cid)
elseif msgcontains(msg, 'reborn') then
selfSay('Are you sure? {yes}', cid)
talkState[talkUser] = 2
elseif msgcontains(msg, 'yes') and talkState[talkUser] ==2 and getPlayerLevel(cid) >= 250 then
local voc = config[getPlayerVocation(cid)]
doPlayerSetVocation(cid, voc[1])
local outfit = {lookType = voc[2]}
doCreatureChangeOutfit(cid, outfit)
doPlayerAddExp(cid, -(getPlayerExperience(cid)-getExperienceForLevel(1)))
setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+20000)
setCreatureMaxMana(cid, getCreatureMaxMana(cid)+30000)
doCreatureAddHealth(cid, getCreatureMaxHealth(cid))
doCreatureAddMana(cid, getCreatureMaxMana(cid))
setPlayerStorageValue(cid,30025,4)
talkState[talkUser] = 0
elseif msgcontains(msg, 'yes') and getPlayerLevel(cid) ~= 250 then
selfSay('Desculpe, ' .. getCreatureName(cid) .. '! You need level 250 to reborn.', cid)
talkState[talkUser] = 0
elseif msgcontains(msg, 'yes') and talkState[talkUser] == 2 then
selfSay('Sorry, ' .. getCreatureName(cid) .. '! You must revert or transform to reborn.', cid)
talkState[talkUser] = 0
elseif msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then
selfSay('Good bye.', cid)
focus = 0
talk_start = 0
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

to meio em duvida tb.. se o de cima n pegar tenta esse:

 

 

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 config = {
--[Vocation] = ( Nova Vocation, New Outfit )
[21] = { 22, 137},
[254] = { 255, 351},
[36] = { 37, 148},
[51] = { 52, 144},
[65] = { 66, 152},
[378] = { 379, 451},
[80] = { 81, 150},
[93] = { 94, 150},
[107] = { 108, 509},
[118] = { 119, 118},
[131] = { 132, 34},
[144] = { 145, 15},
[155] = { 156, 15},
[167] = { 168, 173},
[179] = { 180, 178},
[191] = { 192, 184},
[205] = { 206, 190},
[217] = { 218, 221},
[229] = { 230, 281},
[242] = { 243, 60},
[254] = { 255, 351},
[265] = { 266, 334},
[275] = { 276, 80},
[286] = { 287, 338},
[296] = { 297, 198},
}
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, 'reborn') and getPlayerStorageValue(cid,30025) == 4 then
selfSay('You are reborn.', cid)
focus = 0
talk_start = 0
elseif msgcontains(msg, 'reborn') and getPlayerLevel(cid) < 250 and getPlayerStorageValue(cid,30025) ~= 4 then
selfSay('Hehe, I say If you READY. You do not have 250 level.', cid)
elseif msgcontains(msg, 'reborn') then
selfSay('Are you sure? {yes}', cid)
talkState[talkUser] = 2
elseif msgcontains(msg, 'yes') and talkState[talkUser] ==2 and getPlayerLevel(cid) > 250 then
local voc = config[getPlayerVocation(cid)]
doPlayerSetVocation(cid, voc[1])
local outfit = {lookType = voc[2]}
doCreatureChangeOutfit(cid, outfit)
doPlayerAddExp(cid, -(getPlayerExperience(cid)-getExperienceForLevel(1)))
setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+20000)
setCreatureMaxMana(cid, getCreatureMaxMana(cid)+30000)
doCreatureAddHealth(cid, getCreatureMaxHealth(cid))
doCreatureAddMana(cid, getCreatureMaxMana(cid))
setPlayerStorageValue(cid,30025,4)
talkState[talkUser] = 0
elseif msgcontains(msg, 'yes') and getPlayerLevel(cid) ~= 250 then
selfSay('Desculpe, ' .. getCreatureName(cid) .. '! You need level 250 to reborn.', cid)
talkState[talkUser] = 0
elseif msgcontains(msg, 'yes') and talkState[talkUser] == 2 then
selfSay('Sorry, ' .. getCreatureName(cid) .. '! You must revert or transform to reborn.', cid)
talkState[talkUser] = 0
elseif msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then
selfSay('Good bye.', cid)
focus = 0
talk_start = 0
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

Link para o comentário
Compartilhar em outros sites

  • 0

Erro no sinal.

 

Tenta assim:

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 config = {

--[Vocation] = ( Nova Vocation, New Outfit )

[21] = { 22, 137},

[254] = { 255, 351},

[36] = { 37, 148},

[51] = { 52, 144},

[65] = { 66, 152},

[378] = { 379, 451},

[80] = { 81, 150},

[93] = { 94, 150},

[107] = { 108, 509},

[118] = { 119, 118},

[131] = { 132, 34},

[144] = { 145, 15},

[155] = { 156, 15},

[167] = { 168, 173},

[179] = { 180, 178},

[191] = { 192, 184},

[205] = { 206, 190},

[217] = { 218, 221},

[229] = { 230, 281},

[242] = { 243, 60},

[254] = { 255, 351},

[265] = { 266, 334},

[275] = { 276, 80},

[286] = { 287, 338},

[296] = { 297, 198},

 

}

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, 'reborn') and getPlayerStorageValue(cid,30025) == 4 then

selfSay('You are reborn.', cid)

focus = 0

talk_start = 0

 

elseif msgcontains(msg, 'reborn') and getPlayerLevel(cid) < 250 and getPlayerStorageValue(cid,30025) ~= 4 then

selfSay('Hehe, I say If you READY. You do not have 250 level.', cid)

 

elseif msgcontains(msg, 'reborn') then

selfSay('Are you sure? {yes}', cid)

talkState[talkUser] = 2

 

elseif msgcontains(msg, 'yes') and talkState[talkUser] ==2 and getPlayerLevel(cid) >= 250 then

local voc = config[getPlayerVocation(cid)]

doPlayerSetVocation(cid, voc[1])

local outfit = {lookType = voc[2]}

doCreatureChangeOutfit(cid, outfit)

doPlayerAddExp(cid, -(getPlayerExperience(cid)-getExperienceForLevel(1)))

setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+20000)

setCreatureMaxMana(cid, getCreatureMaxMana(cid)+30000)

doCreatureAddHealth(cid, getCreatureMaxHealth(cid))

doCreatureAddMana(cid, getCreatureMaxMana(cid))

setPlayerStorageValue(cid,30025,4)

talkState[talkUser] = 0

 

elseif msgcontains(msg, 'yes') and getPlayerLevel(cid) <= 249 then

selfSay('Desculpe, ' .. getCreatureName(cid) .. '! You need level 250 to reborn.', cid)

talkState[talkUser] = 0

 

elseif msgcontains(msg, 'yes') and talkState[talkUser] == 2 then

selfSay('Sorry, ' .. getCreatureName(cid) .. '! You must revert or transform to reborn.', cid)

talkState[talkUser] = 0

 

elseif msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then

selfSay('Good bye.', cid)

focus = 0

talk_start = 0

end

 

return true

end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)

npcHandler:addModule(FocusModule:new())

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

  • 0

Testei e funcionou. Tenta ai.

 

 

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 config = {

--[Vocation] = ( Nova Vocation, New Outfit )

[21] = { 22, 137},

[254] = { 255, 351},

[36] = { 37, 148},

[51] = { 52, 144},

[65] = { 66, 152},

[378] = { 379, 451},

[80] = { 81, 150},

[93] = { 94, 150},

[107] = { 108, 509},

[118] = { 119, 118},

[131] = { 132, 34},

[144] = { 145, 15},

[155] = { 156, 15},

[167] = { 168, 173},

[179] = { 180, 178},

[191] = { 192, 184},

[205] = { 206, 190},

[217] = { 218, 221},

[229] = { 230, 281},

[242] = { 243, 60},

[254] = { 255, 351},

[265] = { 266, 334},

[275] = { 276, 80},

[286] = { 287, 338},

[296] = { 297, 198},

}

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, 'reborn') then

if getPlayerStorageValue(cid,30025) == 4 then

selfSay('You are already reborned.', cid)

focus = 0

talk_start = 0

elseif getPlayerLevel(cid) < 250 and getPlayerStorageValue(cid,30025) ~= 4 then

selfSay('Hehe, I say if you are READY. You do not have 250 level.', cid)

end

selfSay('Are you sure? Say {yes}.', cid)

talkState[talkUser] = 2

 

elseif talkState[talkUser] == 2 then

if msgcontains(msg, 'yes') then

if getPlayerLevel(cid) < 250 then

selfSay('Sorry, ' .. getCreatureName(cid) .. '! You need level 250 to reborn.', cid)

talkState[talkUser] = 0

end

 

local voc = config[getPlayerVocation(cid)]

doPlayerSetVocation(cid, voc[1])

local outfit = {lookType = voc[2]}

doCreatureChangeOutfit(cid, outfit)

doPlayerAddExp(cid, -(getPlayerExperience(cid)-getExperienceForLevel(1)))

setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+20000)

setCreatureMaxMana(cid, getCreatureMaxMana(cid)+30000)

doCreatureAddHealth(cid, getCreatureMaxHealth(cid))

doCreatureAddMana(cid, getCreatureMaxMana(cid))

setPlayerStorageValue(cid,30025,4)

selfSay('You are now reborned.', cid)

talkState[talkUser] = 0

end

 

if msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then

selfSay('Good bye.', cid)

focus = 0

talk_start = 0

end

end

return true

end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)

npcHandler:addModule(FocusModule:new())

 

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

  • 0

Usa seu script inicial e tenta dar reborn com um level 250, certinho.

 

Se funcionar me fala.

 

Caso contrario acho que o script está errado.

 

Amigo,rebornar 250 ele reborna.

So que eu quero que ele reborne 250 ou maior.Ou seja se o player for level 400 500,ele pode reborna tbm.

 

 

esse script ai é mais velho que eu, já fiz outro bem melhor. :D

 

Poderia me passar?

Link para o comentário
Compartilhar em outros sites

  • 0

@Raidou

 

Se você não for usar o outro script do Beeki, usa o que eu postei ali em cima, tá funcionando 100%.

 

Testei e funcionou. Tenta ai.

 

 

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 config = {

--[Vocation] = ( Nova Vocation, New Outfit )

[21] = { 22, 137},

[254] = { 255, 351},

[36] = { 37, 148},

[51] = { 52, 144},

[65] = { 66, 152},

[378] = { 379, 451},

[80] = { 81, 150},

[93] = { 94, 150},

[107] = { 108, 509},

[118] = { 119, 118},

[131] = { 132, 34},

[144] = { 145, 15},

[155] = { 156, 15},

[167] = { 168, 173},

[179] = { 180, 178},

[191] = { 192, 184},

[205] = { 206, 190},

[217] = { 218, 221},

[229] = { 230, 281},

[242] = { 243, 60},

[254] = { 255, 351},

[265] = { 266, 334},

[275] = { 276, 80},

[286] = { 287, 338},

[296] = { 297, 198},

}

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, 'reborn') then

if getPlayerStorageValue(cid,30025) == 4 then

selfSay('You are already reborned.', cid)

focus = 0

talk_start = 0

elseif getPlayerLevel(cid) < 250 and getPlayerStorageValue(cid,30025) ~= 4 then

selfSay('Hehe, I say if you are READY. You do not have 250 level.', cid)

end

selfSay('Are you sure? Say {yes}.', cid)

talkState[talkUser] = 2

 

elseif talkState[talkUser] == 2 then

if msgcontains(msg, 'yes') then

if getPlayerLevel(cid) < 250 then

selfSay('Sorry, ' .. getCreatureName(cid) .. '! You need level 250 to reborn.', cid)

talkState[talkUser] = 0

end

 

local voc = config[getPlayerVocation(cid)]

doPlayerSetVocation(cid, voc[1])

local outfit = {lookType = voc[2]}

doCreatureChangeOutfit(cid, outfit)

doPlayerAddExp(cid, -(getPlayerExperience(cid)-getExperienceForLevel(1)))

setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+20000)

setCreatureMaxMana(cid, getCreatureMaxMana(cid)+30000)

doCreatureAddHealth(cid, getCreatureMaxHealth(cid))

doCreatureAddMana(cid, getCreatureMaxMana(cid))

setPlayerStorageValue(cid,30025,4)

selfSay('You are now reborned.', cid)

talkState[talkUser] = 0

end

 

if msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then

selfSay('Good bye.', cid)

focus = 0

talk_start = 0

end

end

return true

end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)

npcHandler:addModule(FocusModule:new())

 

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

  • 0

Se não der tente esse ._. >.<

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 config = {

--[Vocation] = ( Nova Vocation, New Outfit )

[21] = { 22, 137},

[254] = { 255, 351},

[36] = { 37, 148},

[51] = { 52, 144},

[65] = { 66, 152},

[378] = { 379, 451},

[80] = { 81, 150},

[93] = { 94, 150},

[107] = { 108, 509},

[118] = { 119, 118},

[131] = { 132, 34},

[144] = { 145, 15},

[155] = { 156, 15},

[167] = { 168, 173},

[179] = { 180, 178},

[191] = { 192, 184},

[205] = { 206, 190},

[217] = { 218, 221},

[229] = { 230, 281},

[242] = { 243, 60},

[254] = { 255, 351},

[265] = { 266, 334},

[275] = { 276, 80},

[286] = { 287, 338},

[296] = { 297, 198},

 

}

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, 'reborn') and getPlayerStorageValue(cid,30025) == 4 then

selfSay('You are reborn.', cid)

focus = 0

talk_start = 0

 

elseif msgcontains(msg, 'reborn') and getPlayerLevel(cid) < 250 and getPlayerStorageValue(cid,30025) ~= 4 then

selfSay('Hehe, I say If you READY. You do not have 250 level.', cid)

 

elseif msgcontains(msg, 'reborn') then

selfSay('Are you sure? {yes}', cid)

talkState[talkUser] = 2

 

elseif msgcontains(msg, 'yes') and talkState[talkUser] ==2 and getPlayerLevel(cid) >= 250 then

local voc = config[getPlayerVocation(cid)]

doPlayerSetVocation(cid, voc[1])

local outfit = {lookType = voc[2]}

doCreatureChangeOutfit(cid, outfit)

doPlayerAddExp(cid, -(getPlayerExperience(cid)-getExperienceForLevel(1)))

setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+20000)

setCreatureMaxMana(cid, getCreatureMaxMana(cid)+30000)

doCreatureAddHealth(cid, getCreatureMaxHealth(cid))

doCreatureAddMana(cid, getCreatureMaxMana(cid))

setPlayerStorageValue(cid,30025,4)

talkState[talkUser] = 0

 

elseif msgcontains(msg, 'yes') and talkState[talkUser] == 2 then

selfSay('Sorry, ' .. getCreatureName(cid) .. '! You must revert or transform to reborn.', cid)

talkState[talkUser] = 0

 

elseif msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then

selfSay('Good bye.', cid)

focus = 0

talk_start = 0

end

 

return true

end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)

npcHandler:addModule(FocusModule:new())

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

  • 0

@Raidou

 

Meu nome não é Lucas .-.

 

E eu testei e funfou no meu server, o NPC tirou o level, colocou a outfit e trocou a vocation. Infelizmente, se não funcionou para você, já não posso fazer nada.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...