Ir para conteúdo

Premium Paper - [Talkaction] e [Action]


Crypter

Posts Recomendados

 

Infos:

 

Ao usar o comando !sellpoints quantidade , voce ira criar um item com a quantidade de pontos digitada assim voce podera vender pontos do site in game.

 

 

Em data/libs

 

Crie um Arquivo chamado PremiumPaper.lua

function getPremiumPoints(cid)    local query = db.getResult("SELECT `premium_points` FROM `accounts` WHERE `id` = "..getPlayerAccountId(cid))    return query:getDataInt("premium_points") <= 0 and 0 or query:getDataInt("premium_points")endfunction setPremiumPoints(cid, amount)    return db.executeQuery("UPDATE `accounts` SET `premium_points` = "..amount.." WHERE `id` = "..getPlayerAccountId(cid))end

 

Em data/talkactions/scripts

 

Crie um arquivo chamado sell_points.lua

function onSay(cid, words, param)	local var,points = "[sell Point System] Este documento vale %s points para você usar no site.",getPremiumPoints(cid)	local min,max = 5, 100	if param == "" or not tonumber(param) then		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Desculpe, use somente numeros.") return true	elseif tonumber(param) < min or tonumber(param) > max then		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Desculpe, Minimo "..min.." e Maximo "..max.." points.") return true	elseif points < tonumber(param) then		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Desculpe, mas você só possui "..points.." Premium Points.") return true	end	local item = doPlayerAddItem(cid, 7702,1) 	doItemSetAttribute(item, "description", var:format(tonumber(param)))	setPremiumPoints(cid, points-tonumber(param))	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE,"[sell Point System] Você recebeu um paper com "..param.." Premium Points.")	return trueend

Em talkactions.xml

 

<talkaction words="!sellpoints;/sellpoints" event="script" value="sell_points.lua"/>

Em data/actions/scripts

 

Crie um arquivo chamado paper_points.lua

 

function onUse(cid, item, frompos, item2, topos)	local var = getItemAttribute(item.uid, "description")	if var == nil then return true end	local x = var:match("%b[]")	if x == "[sell Point System]" then		local ret = var:match("%d+")		doPlayerSendTextMessage(cid, 22,"você recebeu "..ret.." Premium Points.")		setPremiumPoints(cid, getPremiumPoints(cid)+ret)		doRemoveItem(item.uid) 	end	return trueend

 

Em Actions.xml adicione:

( Lembre-se de configurar o itemid para um que voce nao tenha usado )

<action itemid="7702" script="paper_points.lua"/>

 

 

 

Imagem(1):

 

 


sell points.jpg
 

 

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

31 minutos atrás, kttallan disse:

Muito bom parabéns, é sugerido colocar a criação dessa tabela para quem não tem a mesma na database.

Uma database que usa site se não tiver essas tabelas daria Erro , então obviamente quem for usar isso tem que ter um site.

Link para o comentário
Compartilhar em outros sites

  • 1 month later...
×
×
  • Criar Novo...