Ir para conteúdo

Função "doplayeraddpremiumpoints"


Vodkart

Posts Recomendados

fala galera, eu apresento a você diretamente, e de repente uma função útil "doPlayerAddPremiumPoints"

 

exemplo de Aplicação:

 

config = {
points = 40,
effect = 53
} 
function onUse(cid, item, fromPosition, itemEx, toPosition)

   if(not isPlayer(itemEx.uid)) then 
       return false 
   end 

   doPlayerAddPremiumPoints(cid, cfg.points) 
   doCreatureSay(cid, "Voce recebeu " .. cfg.points .. " premium points!", TALKTYPE_ORANGE_1, toPosition) 
   doSendMagicEffect(toPosition, cfg.effect) 
   doRemoveItem(item.uid, 1) 
   return TRUE 
end  

 

para adicionar vá até:

 

Data/lib/function.lua e adicione:

 

function doPlayerAddPremiumPoints(cid, points) 
   return db.executeQuery("UPDATE `accounts` SET `premium_points` = `premium_points` + " .. points .. " WHERE `id` = " .. getPlayerAccountId(cid) .. ";") 
end  

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

  • 2 weeks later...

tem sim

 

exemplo...

 

npc tem uma funçao de remover dinheiro (nesse caso ustei tabela :p)

 

local price = 10
doPlayerRemoveMoney(cid, price)

 

então ele poderá remover premium points também

 

 

local pricePoints = 5
doPlayerAddPremiumPoints(cid, -pricePoints)

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

-Fark-, fiz correndo nem testei, depois da uma testada ai... ;]

 

-- [( XTibia.com )] --
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 money = 10000 -- Quantidade de dinheiro que o player necessita!
       local points = 35 -- Quantidade de poits que o NPC irá vender.
       local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid

       if msgcontains(msg, 'premium point') then
       npcHandler:say("Huum, I can sell "..points.." points for you, do you want?", cid)
               talkState[talkUser] = 1
               end
elseif msgcontains(msg, 'yes') then
               if talkState[talkUser] == 1 then
               if getPlayerMoney(cid=) >= money then
	doPlayerAddPremiumPoints(cid, points)
               doPlayerRemoveMoney(cid, money)    
               npcHandler:say("Voce recebeu "..points.." premium points!", cid)   
	talkState[talkUser] = 0
	else           
       npcHandler:say("Sorry, you don't have a money.", cid)        
       end  
return TRUE  
end
end
end
end
     elseif(msgcontains(msg, 'no') and talkState[talkUser] == 1) then
         npcHandler:say("Ok, good bye!", cid)
         talkState[talkUser] = 0
	end
return TRUE
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

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

isso ai doidin muito bom cara

 

só que ele queria pra vender itens atraves de premium points e não comprar mais é quase isso ai rsrsrs

 

valeu fera

Link para o comentário
Compartilhar em outros sites

nd mano agr ja temos um npc de vender premium points \o

quanto mais melhor né uhu

o importante é que você está se dedicando nessa area e vc leva muito jeito p/ codigo LUA

parabens ai jhow

Link para o comentário
Compartilhar em outros sites

  • 1 year later...
  • 4 months later...
  • 5 years later...

Esse função remove points.

exemplo: 

Na db você tem 200

doPlayerRemovePremiumPoints(cid, 100)

result removeu 100 e ficou 100

 

  function doPlayerRemovePremiumPoints(cid, removePoints)
    local queryPoints = db.getResult("SELECT `premium_points` FROM `accounts` WHERE `id` = "..getPlayerAccountId(cid)..";")    
    getPoints = queryPoints:getDataInt("premium_points", getPlayerAccountId(cid))
    local newPoints = getPoints - removePoints    
    local updatePoints = db.executeQuery("UPDATE `accounts` SET `premium_points` = ".. newPoints .." WHERE `id` = " .. getPlayerAccountId(cid) .. ";")
    return newPoints
  end

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

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...