EM

[Resolvido] player mata outro e ganha item ,dinheiro e xp.

Por Emooooo, 09 de mar. de 2019 em Resolvidos

5
1.4k
EmoooooE
09 de março de 2019 às 12:10

para :   TheForgottenServer, version 0.3.6 (Crying Damson)   8.6

 

+rep

Yan LiimaY
09 de março de 2019 às 19:36
Melhor resposta

@EmoooooApesar de eu ter entendido é sempre bom fornecer mais informações...

Em creaturescript crie um arquivo.lua e cole isso:

function onDeath(cid, corpse, deathList)
    if not isPlayer(cid) then
        return true
    end
    
	local killer = deathList[1] 
	local items = {{2160,20},{2148,2}} -- ID DO ITEM, QUANTIDADE
    if isPlayer(killer) then
	doPlayerAddExperience(killer, (getPlayerExperience(cid) + 1)) -- Irá adicionar 1 de level.
	for i = 1, #items do
		doPlayerAddItem(killer, items[i][1], items[i][2])
    end    
	return true
  end
  return true
end

function onLogin(cid)
	registerCreatureEvent(cid, "LootPlayerDeath")
	return true
end

XML:

<event type="login" name="LootPlayerLogin" event="script" value="arquivo.lua"/>
<event type="death" name="LootPlayerDeath" event="script" value="arquivo.lua"/>

 

Editado Março 9 por nedroesdoksdja

EmoooooE
09 de março de 2019 às 20:36
58 minutos atrás, Yan Liima disse:

@EmoooooApesar de eu ter entendido é sempre bom fornecer mais informações...

Em creaturescript crie um arquivo.lua e cole isso:

function onDeath(cid, corpse, deathList)
    if not isPlayer(cid) then
        return true
    end
    
	local killer = deathList[1] 
	local items = {{2160,20},{2148,2}} -- ID DO ITEM, QUANTIDADE
    if isPlayer(killer) then
	doPlayerAddExperience(killer, (getPlayerExperience(cid) + 1)) -- Irá adicionar 1 de level.
	for i = 1, #items do
		doPlayerAddItem(killer, items[i][1], items[i][2])
    end    
	return true
  end
  return true
end

function onLogin(cid)
	registerCreatureEvent(cid, "LootPlayerDeath")
	return true
end

XML:

<event type="login" name="LootPlayerLogin" event="script" value="arquivo.lua"/>
<event type="death" name="LootPlayerDeath" event="script" value="arquivo.lua"/>

 

tem como colocar anti -mc e storage .tipo mata o mesmo player 2 vezes não ganha nada . 

Yan LiimaY
09 de março de 2019 às 21:05
local config = {
    items = {{2160,20},{2148,2}}, -- ID DO ITEM, QUANTIDADE
    level = 1, -- Quanto irá adicionar de level
    storage = 673420 -- Storage
}

function onDeath(cid, corpse, deathList)
    if not isPlayer(cid) then
        return true
    end 
    local killer = deathList[1] 
    if isPlayer(killer) and getPlayerStorageValue(killer, config.storage) <= 0 then
        doPlayerAddExperience(killer, (getPlayerExperience(cid) + config.level))
        for i = 1, #config.items do
            doPlayerAddItem(killer, config.items[i][1], config.items[i][2])
			setPlayerStorageValue(killer, config.storage, 1)
        end 
        return true
    end
    return true
end

function onLogin(cid)
    registerCreatureEvent(cid, "LootPlayerDeath")
    return true
end

 

Editado Março 9 por nedroesdoksdja

Yan LiimaY
09 de março de 2019 às 23:46
O pedido neste tópico de foi atendido e/ou o autor do tópico resolveu sua duvida. Este tópico está fechado e foi movido para Pedidos - Resolvidos. Se você tiver outros pedidos, crie um novo tópico.