AT
pedido

Matar Monstro e ganhar 1 Premium Point

Por atakashi, 24 de fev. de 2016 em Scripts

11
1.8k
atakashiA
24 de fevereiro de 2016 às 20:38

Boa noite pessoal, vim aqui para pedir um script que para alguns creio que vai ser muito facil.

Quero um Script que ao matar Tal monstro ganhar 1 Premium Point.

Valeu aguardando.

24 de fevereiro de 2016 às 20:40

o premium point é um itemid?

Night WolfN
24 de fevereiro de 2016 às 20:46

premium_point é uma aba no banco de dados? me fala a localização dela que a gente faz.

atakashiA
24 de fevereiro de 2016 às 23:13

sim, uma aba na database.

 

Vai dar o ponto direto na database.

 

"accounts" > "premium_points"

Editado Fevereiro 24 por atakashi

1 mês depois...
atakashiA
08 de março de 2016 às 23:16

alguem?

 

Night WolfN
08 de março de 2016 às 23:52

a query é isso daqui, o resto é só fazer um creaturescript onKill e registrar no login.lua pra se o monstro tiver tal nome executar essa query aqui

db.query("UPDATE `accounts` SET `premium_points` = `premium_points` + 1  WHERE `id`= ".. getPlayerAccountId(cid) .."")
atakashiA
09 de março de 2016 às 17:08

e isso que eu quero, o creature, a query eu tambem ja sabia.


function onDeath(cid)
                doCreatureSay(cid, "Você Recebeu 1 Premium Point", TALKTYPE_ORANGE_1)
                db.query("UPDATE `accounts` SET `premium_points` = `premium_points` + 1  WHERE `id`= ".. getPlayerAccountId(cid) .."")
        end
        return TRUE
end

Imaginei assim, porem, tenho quase certeza que ta faltando.

DanihcvD
09 de março de 2016 às 20:21

Qual a sua distro?

atakashiA
11 de março de 2016 às 16:25

Pda.

DanihcvD
12 de março de 2016 às 21:58

@@atakashi, ok, vamo lá. Vá em creaturescripts.xml (data\creaturescripts) e adicione essa tag:

<event type="kill" name="PPkill" event="script" value="PPkill.lua"/>

Agora vá na pasta scripts (data\creaturescripts) e crie um arquivo chamado PPkill.lua e coloque isso dentro:

local m = {"crystalcrusher", "cliff strider", "demon"}
local pointQntd = 1

function onKill(cid, target)
if(isMonster(target) == true) then
local n = getCreatureName(target)
	if isInArray(m, string.lower(n)) then
	db.query('UPDATE `accounts` SET `premium_points` = `premium_points` + '..pointQntd..'  WHERE `id`= '.. getPlayerAccountId(cid) ..'')
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Você ganhou '..pointQntd..' Premium Point por matar '..getCreatureName(target)..'.')
	end
end
return true
end

 

 

Caso o script acima não funcione, tente esse:

local m = {"crystalcrusher", "cliff strider", "demon"}
local pointQntd = 1

function onKill(cid, target)
if(isMonster(target) == true) then
local n = getCreatureName(target)
	if isInArray(m, string.lower(n)) then
	db.executeQuery('UPDATE `accounts` SET `premium_points` = `premium_points` + '..pointQntd..'  WHERE `id`= '.. getPlayerAccountId(cid) ..'')
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Você ganhou '..pointQntd..' Premium Point por matar '..getCreatureName(target)..'.')
	end
end
return true
end

 

 

 

 

 

Agora ainda dentro da pasta scritps, procure o arquivo login.lua e adicione isso, antes do ultimo return true:

registerCreatureEvent(cid, "PPkill")

Editado Março 12 por Danihcv

1 mês depois...
atakashiA
05 de abril de 2016 às 23:51

funcionou legal, valeu!