KN
pedido

Script Para quando matar o player de mesmo ip perde level

Por knightkunn, 14 de dez. de 2012 em Scripts

script
8
1.6k
knightkunnK
14 de dezembro de 2012 às 13:14

Eu tava querendo um script para que quando matar o player de mesmo ip perde level.

 

Ajuda ae!!!

Editado Dezembro 14 por knightkunn

SmiXS
14 de dezembro de 2012 às 13:27

Não intendi muito bem. Quem vai perder level o que morreu ou quem matou?

SkyDangerousS
14 de dezembro de 2012 às 13:29

Tem esse aqui:

 

function onKill(cid, target)
--config----------------------------
local lvl = getPlayerLevel(cid) --players level
local nlvl = getPlayerLevel(cid) + 5 -- add 5 levels
--end-------------------------------
if isPlayer(target) == TRUE then
if getPlayerIp(cid) ~= getPlayerIp(target) then
local exp = (50 * (lvl) * (lvl) * (lvl) - 150 * (lvl) * (lvl) + 400 * (lvl)) / 5
local nexp = (50 * (nlvl) * (nlvl) * (nlvl) - 150 * (nlvl) * (nlvl) + 400 * (nlvl)) / 5
local newexp = nexp - exp
doPlayerAddExp(cid,newexp)
doSendAnimatedText(getPlayerPosition(cid), "Orgasmic~", 198)
else
doPlayerAddExperience(cid, -50000000)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"You have been punished for killing a player of the same IP.")
end
end
return TRUE
end 

 

vê se funciona !

knightkunnK
14 de dezembro de 2012 às 13:31

Tpw quem matou vai perde level

 

Ex: Player A mata Player B = O player A ( ira perde level como uma punição) e o Player B ira morrer normalmente perdendo a % normal do ot

 

Ou seja estava querendo um script para punir o player A por mata um player de mesmo ip.

 

Para evitar Free Exp por mc.

SkyDangerousS
14 de dezembro de 2012 às 13:35

Tpw quem matou vai perde level

 

Ex: Player A mata Player B = O player A ( ira perde level como uma punição) e o Player B ira morrer normalmente perdendo a % normal do ot

 

Ou seja estava querendo um script para punir o player A por mata um player de mesmo ip.

 

Para evitar Free Exp por mc.

 

Testou o script que eu passei, ele é um creaturescript, só por as tags no creaturescripts.xml e no login.lua e testar, eu peguei aqui do fórum mesmo

knightkunnK
14 de dezembro de 2012 às 14:11

Consequi Vlw AE!

Editado Dezembro 14 por knightkunn

Yan OliveiraY
14 de dezembro de 2012 às 14:13

Dúvida Resolvida!

 

Tópico Movido.

OneshotO
14 de dezembro de 2012 às 14:21

@knightkunn

 

Em data/creaturescripts/scripts, crie um arquivo chamado sameipkill.lua e cole o conteúdo abaixo:

 

function onKill(cid, target)
if isPlayer(cid) and isPlayer(target) then
	local m = doConvertIntegerToIp(getPlayerIp(cid))
	local n = doConvertIntegerToIp(getPlayerIp(target))
	if m == n then
		local x, y = getPlayerExperience(cid), getExperienceForLevel(getPlayerLevel(cid) - 1)
		doPlayerAddExperience(cid, (y - x))
	end
end
return true
end

 

No creaturescripts.xml, você deve colocar

 

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

 

E no login.lua em data/creaturescripts/scripts, você deve colocar:

 

registerCreatureEvent(cid, "SameIpKill")

 

Antes de:

 

return true

 

O script faz com que o trapaceiro perca um nível toda vez que matar alguém de mesmo IP.

 

Abraços.

Editado Dezembro 14 por Oneshot