Ir para conteúdo

[Creature Script] Anti Power Abuser


patrickjean

Posts Recomendados

Falaé galera do XTibia, vim trazer outro script

Espero que gostem!!

 

 

Autor: MiltonHit

Nome: Anti Abuser System

 

 

#Explicação sobre o Script:

 

 

ele simplismente da uma punição a quem mata outro player com x leveis de diferença, e ainda calcula a diferença e da uma punição de xp de acordo.

 

OBS:Ele só é acionado se o alvo estiver sem pk, caso o alvo esteja pk, o script ignora.

 

por exemplo, um lv 200 mata um level 100, ai o script vai calcular:

 

100 leveis de diferença * 2000 =

Player vai perder 200k de experiencia.

script ta bem legal,espero que gostem!

 

 

#Instalação:

 

 

Abra a pasta Data/creaturescript/script , crie um arquivo chamado antiabuser.lua e adicione:

function onKill(cid,target,lastHit)
 if getCreatureSkullType(target) >= 1 then
    return TRUE
 end
 local dif = getPlayerLevel(cid)-getPlayerLevel(target)
 local diff = 100 --aqui você define a diferença de lvs que receberam a punição
 local puni = (dif*2000) --aqui voce define quanto de experiencia o matador vai perder.

 if isPlayer(cid) and isPlayer(target) and dif >= diff then
   doPlayerSendTextMessage(cid,21,'Você não teve honra!Matou um player com '..dif..' leveis de diferença e perdeu '..puni..' pontos de expêriencia.')
   doPlayerAddExp(cid, -puni)
   return TRUE
else
return TRUE
 end
return TRUE
end

 

agora abra seu login.lua que se encontra na pasta data/creaturescript/scripts e adicione isso antes do ultimo return true:

registerCreatureEvent(cid, "antiabuser")

Depois disso registre essa tag no creaturescripts.xml:

 

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

 

 

Pronto!!

Agora um player vai pensar 2x antes de matar alguem com muitos leveis de diferença!

Gostou?? Te ajudei?? REP++

=D

Link para o comentário
Compartilhar em outros sites

legal...

 

agora pra que tanto return true :X, e pra que colocar um else, se num vai acontecer nada...

 

e se vc registrou no login.lua esse evento, logico que cid é um player.

 

mais pratico:

 

function onKill(cid,target,lastHit)
local dif = getPlayerLevel(cid)-getPlayerLevel(target)
local diff = 100 --aqui você define a diferença de lvs que receberam a punição
local puni = (dif*2000) --aqui voce define quanto de experiencia o matador vai perder.
if isPlayer(target) and dif >= diff and getCreatureSkullType(target) < 1 then
	doPlayerSendTextMessage(cid,21,'Você não teve honra!Matou um player com '..dif..' leveis de diferença e perdeu '..puni..' pontos de expêriencia.')
	doPlayerAddExp(cid, -puni)
end
return true
end

 

REP+ pela sua força de vontade

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

Não seria bem mais prático um script que não deixe ele atacar o cara:

 

function onCombat(cid, target)

local diff = 100 --aqui você define a diferença de lvs que receberam a punição
local puni = (dif*2000) --aqui voce define quanto de experiencia o matador vai perder.

if isPlayer(target) and getPlayerLevel(cid)-getPlayerLevel(target) >= diff and getCreatureSkullType(target) < 1 then
return FALSE
end

return TRUE
end

Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...

Esse script tem um bug

alguem ja testou?

aki qndo vc mata um monstro e perde toda a vida

o monstro não morre...e vc continua atacando indefinidamente

alguem sabe arrumar

meu ot we do 8.60

vlw

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...