Ir para conteúdo

Featured Replies

Postado

Eeeeelaiá... aqui estou eu mais uma vez com problemas :/

O bug atual é o seguinte, eu não encontrei nada relacionado a isto aqui no forum...

 

No meu servidor tem o npc The Drahix King, a função dele é vender promotion.

Porém, ele vende promotion para player que não são premium.

 

O servidor é 8.6, usa o tfs 0.3.6... Eu gostaria de saber como fazer para ele vender promotion somente para players premium.

 

O problema que isto está causando, é que o player compra a promotion e não fica promotion, e então, acha que está bugado, sendo que quando isso ocorre, ele tem que comprar a premium, deslogar, eu tenho que ir no banco de dados, remover a promotion, e ele comprar a promotion novamente.

 

Segue então o script do npc de premium:

<?xml version="1.0" encoding="UTF-8"?>
<npc name="The Drahix King" script="promotion.lua" walkinterval="2000" floorchange="0">
	<health now="100" max="100"/>
	<look type="332" head="20" body="39" legs="45" feet="7" addons="0"/>
</npc>
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})

npcHandler:addModule(FocusModule:new())

Quem ajudar eu dou rep+ :)

Resolvido por Drafenous

Ir para solução
Postado
  • Autor
  • Solução

Pessoal, deixa queto, já consegui arrumar.

moderação, pode fechar o tópico.

 

segue a solução:

o script atualmente está como:

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})

npcHandler:addModule(FocusModule:new())

Basta adicionar:

promote = true

após o o comando que é definido o preço, que seria este:

cost = 20000

então, ficaria a seguinte linha completa:

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

Editado por Drafenous (veja o histórico de edições)

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo