Ir para conteúdo
  • Cadastre-se

(Resolvido)Talkaction comprar vip com diamonds


Ir para solução Resolvido por TsplayerT,

Posts Recomendados

Olá, queria um script  de uma talkaction na qual quando o player disser: @buy VIP30 

Ele ganhe 30 dias de vip e remova 10 diamonds dele

6QdmiQK.jpg

Link para o post
Compartilhar em outros sites

Querido, dai tu complica a situação de quem quer te ajudar. Acha o nome do npc na pasta Data > npcs. Abre o Npc e vê para que arquivo ele ta redirecionando na pasta Data > Npcs > Scripts. Abre o arquivo e me manda.

z_WL63_Tt.png

Link para o post
Compartilhar em outros sites

Esse é o script do npc:

 

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
msg = string.lower(msg)
---------
local configs = {
diamondsID = 2145,  --id do diamond no items.xml/otb... (achu q vais ter q criar, ou pegar algum item q ja tenha ae...)
VIP = {days = 30, cost = 10},    --days = qnts dias de VIP o player compra por vez.... cost = custo para virar VIP...
SEX = {cost = 3},   --cost = custo para trocar de sexo...
}  


       
        if (msgcontains(msg, 'diamond account') or msgcontains(msg, 'diamond')) then  
           selfSay("You want to buy a diamond account and be VIP for "..configs.VIP.days.." days? It will cost "..configs.VIP.cost.." diamonds!", cid)   
           talkState[talkUser] = 2
           return true    
          
        elseif msgcontains(msg, 'yes') and talkState[talkUser] == 2 then
           if getPlayerItemCount(cid, configs.diamondsID) >= configs.VIP.cost then
              selfSay("Ok then, now you have "..configs.VIP.days.." days of VIP! Enjoy!", cid)
              doPlayerAddPremiumDays(cid, configs.VIP.days)
              doPlayerRemoveItem(cid, configs.diamondsID, configs.VIP.cost)
              talkState[talkUser] = 0
              return true
           else
              selfSay("You need atleast "..configs.VIP.cost.." diamonds to do that!", cid)
              talkState[talkUser] = 0
              return true
           end
           
        elseif (msgcontains(msg, 'sex change') or msgcontains(msg, 'sex')) then
           selfSay("So you want to change of sex? It will cost "..configs.SEX.cost.." diamonds", cid) 
           talkState[talkUser] = 3
           return true
        
        elseif msgcontains(msg, 'yes') and talkState[talkUser] == 3 then
           if getPlayerItemCount(cid, configs.diamondsID) >= configs.SEX.cost then
              local sex = getPlayerSex(cid)
              selfSay("Ok then, now you are of the sex "..(sex == 0 and "female" or "male")..". Enjoy!", cid)
              doPlayerSetSex(cid, (sex == 0 and 1 or 0))
              doPlayerRemoveItem(cid, configs.diamondsID, configs.SEX.cost)
              talkState[talkUser] = 0
              return true
           else
              selfSay("You need atleast "..configs.SEX.cost.." diamonds to do that!", cid)
              talkState[talkUser] = 0
              return true
           end
           
           
        elseif msgcontains(msg, 'yes') and talkState[talkUser] == 4 then
           selfSay("Ok then, tell me what city do you want?", cid)
           talkState[talkUser] = 5
           return true
           
        elseif places[msg] and talkState[talkUser] == 5 then
           if getPlayerItemCount(cid, configs.diamondsID) >= configs.TOWN.cost then
              selfSay("Done, enjoy your new city!", cid)
              doPlayerSetTown(cid, places[msg]) 
              doPlayerRemoveItem(cid, configs.diamondsID, configs.TOWN.cost)
              talkState[talkUser] = 0
              return true
           else
              selfSay("You need atleast "..configs.TOWN.cost.." diamonds to do that!", cid)
              talkState[talkUser] = 0
              return true
           end 
           
        elseif msgcontains(msg, 'no') then
          selfSay("Ok then, tell me again what you want...", cid)
          talkState[talkUser] = 0
          return true 
        end

return true
end

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

6QdmiQK.jpg

Link para o post
Compartilhar em outros sites
  • Solução

Olá, queria um script  de uma talkaction na qual quando o player disser: @buy VIP30 

Ele ganhe 30 dias de vip e remova 10 diamonds dele

 Vou te Ajudar!

 

- Vá até SeuServer\data\talkactions\scripts e crie um arquivo chamado buyvip e com o tipo .lua e coloque isso dentro dele:

 

local a = {

ITEM = {2145, 10}, -- ITEM, QUANTIDADE

DAYS = 30 -- Dias de vip

}

function onSay(cid, words, param,channel)

if getPlayerItemCount(cid, a.ITEM[1]) >= a.ITEM[2] then

doPlayerAddPremiumDays(cid, a.DAYS)

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você recebeu "..a.DAYS.." dias de account vip!")

doSendMagicEffect(getCreaturePosition(cid), 28)

doPlayerRemoveItem(cid, a.ITEM[1], a.ITEM[2])

else

doSendMagicEffect(getCreaturePosition(cid), 2)

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Desculpe mas você não tem Diamonds suficientes para ativar sua account vip.")

end

return TRUE

end

 

- Agora vá em SeuServer\data\talkactions e abra o talkactions.xml e adicone essa tag:

 

   <talkaction words="!buyvip30;@buyvip30" event="script" value="buyvip.lua"/>

 

POR FAVOR SE EU TE AJUDEI DE UM REP+

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

Meus Contatos!

 

Minhas Funções:

 

               Skype: TsplayerT

         Facebook: TakaFukushii

          YouTube: ADoseDupla

           Twitter: @_Splayer_

 

 

 

 

 

 

 

                             Mapper:▓▓▓▓▓▓▓▓▓▓ 97%

     Programmer:▓▓▓▓▓▒▒▒▒▒ 45%

             Scripter:▓▓▓▓▓▓▓▓▓▒ 83%

              Spriter:▓▓▓▓▓▓▒▒▒▒ 57%

    Gamemaster:▓▓▓▓▓▓▓▓▓▓ 99%

        Ot Creator:▓▓▓▓▓▓▓▒▒▒71%

Ot Client Maker:▓▓▓▓▓▓▓▒▒▒74%

 

Link para o post
Compartilhar em outros sites

Eu ainda to com um problema, mas ajudou sim, vlw

Qual é, talvez eu consiga resolver!

Meus Contatos!

 

Minhas Funções:

 

               Skype: TsplayerT

         Facebook: TakaFukushii

          YouTube: ADoseDupla

           Twitter: @_Splayer_

 

 

 

 

 

 

 

                             Mapper:▓▓▓▓▓▓▓▓▓▓ 97%

     Programmer:▓▓▓▓▓▒▒▒▒▒ 45%

             Scripter:▓▓▓▓▓▓▓▓▓▒ 83%

              Spriter:▓▓▓▓▓▓▒▒▒▒ 57%

    Gamemaster:▓▓▓▓▓▓▓▓▓▓ 99%

        Ot Creator:▓▓▓▓▓▓▓▒▒▒71%

Ot Client Maker:▓▓▓▓▓▓▓▒▒▒74%

 

Link para o post
Compartilhar em outros sites

Eu mesmo já resolvi, valeu ai amigo

 

Deu tudo certo, podem fechar.

Nada! Obrigado você tbm por me ajudar!

 

Obs: Quando você seleciona algum post como Melhor Resposta, automaticamente o topico é fechado! :D

Meus Contatos!

 

Minhas Funções:

 

               Skype: TsplayerT

         Facebook: TakaFukushii

          YouTube: ADoseDupla

           Twitter: @_Splayer_

 

 

 

 

 

 

 

                             Mapper:▓▓▓▓▓▓▓▓▓▓ 97%

     Programmer:▓▓▓▓▓▒▒▒▒▒ 45%

             Scripter:▓▓▓▓▓▓▓▓▓▒ 83%

              Spriter:▓▓▓▓▓▓▒▒▒▒ 57%

    Gamemaster:▓▓▓▓▓▓▓▓▓▓ 99%

        Ot Creator:▓▓▓▓▓▓▓▒▒▒71%

Ot Client Maker:▓▓▓▓▓▓▓▒▒▒74%

 

Link para o post
Compartilhar em outros sites

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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo