Ir para conteúdo

[script] Npc Vendedno Promotion Para Free


leonardopaiz

Posts Recomendados

Bom meu server eh TFS 0.3.4 desenvolvido por Chalera, hoje olhando os npc´s vi que o "king Tibianus" e o "queen eloise" estavam vendendo promotion para FREE, visitei alguns posts mas vi q o script era igual o meu que seria este

 

local keywordHandler = KeywordHandler:new()

local npcHandler = NpcHandler:new(keywordHandler)

NpcSystem.parseParameters(npcHandler)

 

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 node1 = keywordHandler:addKeyword({'promot'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'I can promote you for 20000 gold coins. Do you want me to promote you?'})

node1:addChildKeyword({'yes'}, StdModule.promotePlayer, {npcHandler = npcHandler, cost = 20000, level = 20, promotion = 1, text = 'Congratulations! You are now promoted.'})

node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Alright then, come back when you are ready.', reset = true})

--[[

local node2 = keywordHandler:addKeyword({'epic'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'I can epicize you for 200000 gold coins. Do you want me to epicize you?'})

node2:addChildKeyword({'yes'}, StdModule.promotePlayer, {npcHandler = npcHandler, cost = 200000, level = 120, promotion = 2, text = 'Congratulations! You are now epicized.'})

node2:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Alright then, come back when you are ready.', reset = true})

]]--

 

npcHandler:addModule(FocusModule:new())

 

ja tentei fazer algumas alterações mas ele sempre vende pra FREE alguem poderia me dar uma luz?

desde ja agradeço :D

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

procure por isso no config.lua premiumForPromotion

se não tiver e não ocorrem erros de inicialização no console referentes aos npcs.

adicione no script do npc isso premium = 1, lembrando que isso tem que ficar nos parâmetros.

caso não resolva você vai ter que modifcar a lib dos npcs ou criar um novo npc que faça isso.

 

o mais facil seria criar um novo npc.

Link para o comentário
Compartilhar em outros sites

Então no config.lua esta correto

 

-- Premium-related

freePremium = "no"

premiumForPromotion = "yes"

 

só que mesmo assim vende pra quem não é Premium.

 

Ja tentei inumeras vezes fazer um npc novo, e todas não deram certo algumas o npc não falava outras ele continuava vendendo pra Free. Teve uma vez que não deu muito certo porque deu um erro no log mas precisamente nos parâmetros do [Npchandler] mas não consegui modifica-lo.

 

Em questão de colocar premium = 1 que você citou peço que me ajude pois script não é o meu forte!

 

Grato

Link para o comentário
Compartilhar em outros sites

O Marcryzius quis dizer isso:

 

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

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 node1 = keywordHandler:addKeyword({'promot'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'I can promote you for 20000 gold coins. Do you want me to promote you?'})
node1:addChildKeyword({'yes'}, StdModule.promotePlayer, {npcHandler = npcHandler, cost = 20000, level = 20, promotion = 1, text = 'Congratulations! You are now promoted.'})
node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Alright then, come back when you are ready.', reset = true})
--[[
local node2 = keywordHandler:addKeyword({'epic'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'I can epicize you for 200000 gold coins. Do you want me to epicize you?'})
node2:addChildKeyword({'yes'}, StdModule.promotePlayer, {npcHandler = npcHandler, premium = 1, cost = 200000, level = 120, promotion = 2, text = 'Congratulations! You are now epicized.'})
node2:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Alright then, come back when you are ready.', reset = true})
]]--

npcHandler:addModule(FocusModule:new())

Link para o comentário
Compartilhar em outros sites

pelo que vi num sei se esta correto mas so o 2 que precisa ser premium???

ou eu posso coloca nesse tb?

local node1 = keywordHandler:addKeyword({'promot'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'I can promote you for 20000 gold coins. Do you want me to promote you?'})

node1:addChildKeyword({'yes'}, StdModule.promotePlayer, {npcHandler = npcHandler, cost = 20000, level = 20, promotion = 1, text = 'Congratulations! You are now promoted.'})

node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Alright then, come back when you are ready.', reset = true})

--[[

 

grato

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

pelo que vi num sei se esta correto mas so o 2 que precisa ser premium???

ou eu posso coloca nesse tb?

local node1 = keywordHandler:addKeyword({'promot'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'I can promote you for 20000 gold coins. Do you want me to promote you?'})

node1:addChildKeyword({'yes'}, StdModule.promotePlayer, {npcHandler = npcHandler, cost = 20000, level = 20, promotion = 1, text = 'Congratulations! You are now promoted.'})

node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Alright then, come back when you are ready.', reset = true})

--[[

 

grato

 

 

Claro, mas só coloque onde está a string "yes":

 

node1:addChildKeyword({'yes'}, StdModule.promotePlayer, {npcHandler = npcHandler, premium = 1, cost = 20000, level = 20, promotion = 1, text = 'Congratulations! You are now promoted.'})

Link para o comentário
Compartilhar em outros sites

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