Postado Junho 30, 2012 12 anos Olá galera do Tibiaking , um amigo me pediu para criar 1 script para ele , ai eu criei nér... o script é o seguinte ! --> TALKACTION <-- O Player fala !buypremmy , e ele precisa ter uma certa moeda para poder comprar esses dias de premium Vá a PastadoOt/Data/Talkactions/Talkactions.xml Lá dentro voce adiciona essa TAG <talkaction words="!buypremmy" event="script" value="premmy.lua"/> Depois Vá a PastadoOt/Data/Talkactions/Scripts , cria um arquivo .lua , Renomeia para buypremmy .e lá dentro voce coloca <?xml version="1.0" encoding="UTF-8"?> <npc name="Premium Seller" script="buypremmy.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="160" head="0" body="112" legs="93" feet="95"/> </npc> Agora vá até a PastadoOt/Data/Npc/Scripts , crie um arquivo .lua , renomeie para buypremmy. e lá dentro voce coloca days = 30 vipcoins = 2159 quant = 10 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 function santaNPC(cid, message, keywords, parameters, node) if(not npcHandler:isFocused(cid)) then return false end if (parameters.present == true) then if isPlayer(cid) then if getPlayerItemCount(cid,vipcoins) >= quant then doPlayerAddPremiumDays(cid,days) doPlayerRemoveItem(cid,vipcoins,quant) npcHandler:say('Obrigado |PLAYERNAME|, Está aqui seus "..days.." dias de Premium', cid) else npcHandler:say('Voce não tem "..quant.." Vip Coins.', cid) end end npcHandler:resetNpc() return true end npcHandler:setMessage(MESSAGE_GREET, "Olá |PLAYERNAME|. Eu vendo {Premium} Days.") local noNode = KeywordNode:new({'no'}, santaNPC, {present = false}) local yesNode = KeywordNode:new({'yes'}, santaNPC, {present = true}) local node = keywordHandler:addKeyword({'premium'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Voce gostaria de comprar "..days.." dias de Premium por "..quant.." vip coins?'}) node:addChildKeywordNode(yesNode) node:addChildKeywordNode(noNode) npcHandler:addModule(FocusModule:new()) function onSay(cid,words,param,channel) vipcoins = 2159 -- Id do Vip Coins que irá ser removido quant = 10 -- Quantidade de Vip Coins que irá ser removido days = 30 -- Quantidade de Dias que irão ser adicionado ao player msg = "Voce comprou "..days.." dias de Premium Account para toda sua conta" -- Menssagem que irá aparecer quando o player comprar a premium msg2 = "Voce não tem Vip Coins suficientes para comprar sua Premium Account" if isPlayer(cid) then if getPlayerItemCount(cid,vipcoins) >= quant then doPlayerAddPremiumDays(cid,days) doPlayerRemoveItem(cid,vipcoins,quant) doPlayerSendCancel(cid,msg) else doPlayerSendCancel(cid,msg2) end return true end end Agora na versao NPC --> NPC <-- Vá a PastadoOt/Data/Npc/ Crie um arquivo .xml ! e renomeie para buypremmy lá dentro voce coloca Clique na imagem e veja nosso TOPICO OFFICIAL
Postado Julho 1, 2012 12 anos ficou bom cara, tem gente que prefere comprar premium por "moedas especiais" rep+ [*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*] DISCORD: vodkart#6090
Postado Julho 1, 2012 12 anos Autor Nuss , Olha eu sendo elogiado pelo mestre /o Obrigado ai vodkart Sempre ajudando o forum /o Editado Julho 1, 2012 12 anos por tonyplyson (veja o histórico de edições) Clique na imagem e veja nosso TOPICO OFFICIAL
Postado Agosto 14, 2012 12 anos O mano eu tava preucurando isso mais n sei pq aqui n deu certo saca o erro [13/08/2012 21:23:17] [Error - LuaScriptInterface::loadFile] data/npc/scripts/buypremmy.lua:41: 'end' expected (to close 'function' at line 15) near '<eof>' [13/08/2012 21:23:17] [Warning - NpcScript::NpcScript] Cannot load script: data/npc/scripts/buypremmy.lua [13/08/2012 21:23:17] data/npc/scripts/buypremmy.lua:41: 'end' expected (to close 'function' at line 15) near '<eof>'
Postado Agosto 14, 2012 12 anos Só faltou um end na função do NPC dele. function santaNPC(cid, message, keywords, parameters, node) if(not npcHandler:isFocused(cid)) then return false end if (parameters.present == true) then if isPlayer(cid) then if getPlayerItemCount(cid,vipcoins) >= quant then doPlayerAddPremiumDays(cid,days) doPlayerRemoveItem(cid,vipcoins,quant) npcHandler:say('Obrigado |PLAYERNAME|, Está aqui seus "..days.." dias de Premium', cid) else npcHandler:say('Voce não tem "..quant.." Vip Coins.', cid) end end npcHandler:resetNpc() return true end end Só mude a função.
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.