Ir para conteúdo

[Pedido] NPC que transfira pontos físicos no jogo em pontos no site

Featured Replies

Postado
Spoiler

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
 
function creatureSayCallback(cid, type, msg)
if(not npcHandler:isFocused(cid)) then
return false
end
local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid

	local function getCount(s)
		local b = s:match('%d+')
		return b and math.min(4294967295, b) or false
	end

----
	local item = 9970

	if msgcontains(msg, 'transfer') then
			selfSay('Please tell me the amount that you want change.', cid)
			talkState[talkUser] = 1
	elseif(getCount(msg) and talkState[talkUser] == 1) then
		local count = getCount(msg)
		selfSay('Do you want change ' .. count .. ' '.. getItemNameById(item) ..' for ' .. count .. ' premium points in the website?', cid)
		talkState[talkUser] = 2
	elseif talkState[talkUser] == 2 and msgcontains(msg, 'yes') then
		if getPlayerItemCount(cid, item) >= count then
			if doPlayerRemoveItem(cid, item, count) then
				db.query("UPDATE `accounts` SET `premium_points` = `premium_points` + ".. count .." where id="..getPlayerAccountId(cid))
				selfSay('Very well. You have transfered ' .. count .. ' '.. getItemNameById(item) ..' for ' .. count .. ' premium points.', cid)
				talkState[talkUser] = 0
				npcHandler:releaseFocus(cid)
			else
				selfSay('You do not have the items.', cid)
				talkState[talkUser] = 0
				npcHandler:releaseFocus(cid)
			end
		else
			selfSay('You do not have the items.', cid)
			talkState[talkUser] = 0
			npcHandler:releaseFocus(cid)
		end
	elseif talkState[talkUser] == 2 and msgcontains(msg, 'no') then
		selfSay('Ok then.', cid)
		talkState[talkUser] = 0
		npcHandler:releaseFocus(cid)
	end
return true
end

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

 

tenta assim

Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá!

"Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

  • Respostas 22
  • Visualizações 753
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • tenta assim   local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreature

  • count[cid] = getCount(msg) /\   to indo pra aula agr, depois eu ajudo.. mas acho q o problema é essa parte aqui e outra: TFS 0.4 é db.query em vez de db.executeQuery  

  • Depois da uma ajudada nesse tópico ai, pq 0.4 fede

Postado
<npc name="Transfer" script="data/npc/scripts/transfer.lua" access="5" lookdir="1">
<health now="1000" max="1000"/>
<look type="134" head="39" body="113" legs="38" feet="0" addons="3"/>
    <parameters>
        <parameter key="message_greet" value="Hello |PLAYERNAME|.I've been wondering if you would never appear.. Do you want to {transfer} your points?" />
    </parameters>
</npc>

deixa o xml assim

Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá!

"Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

Postado

cara, que erro bizarro.. qnd vc abre o sv dá algum erro relacionado ao npc? pq o erro q tá falando é como se tentasse carregar ele no sv e ele não existisse

Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá!

"Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

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