SA

[Creatureevent] Contagem De Frags No Look

Por Saymon14, 19 de nov. de 2010 em Globalevents e Spells

script
15
9.1k
Saymon14S
19 de novembro de 2010 às 11:23

Esse script mostra a quantidade de frags que o player tem quando voce da look nele exemplo: You see Theax. He is a Royal Paladin.[frags:43]

 

Crie na pasta Data/Creaturescripts/script o arquivo fraglook.lua

e cole isso

--Script By Theax ""
function getPlayerFrags(cid)
   local time = os.time()
   local times = {today = (time - 86400), week = (time - (7 * 86400))}

   local contents, result = {day = {}, week = {}, month = {}}, db.getResult("SELECT `pd`.`date`, `pd`.`level`, `p`.`name` FROM `player_killers` pk LEFT JOIN `killers` k ON `pk`.`kill_id` = `k`.`id` LEFT JOIN `player_deaths` pd ON `k`.`death_id` = `pd`.`id` LEFT JOIN `players` p ON `pd`.`player_id` = `p`.`id` WHERE `pk`.`player_id` = " .. getPlayerGUID(cid) .. " AND `k`.`unjustified` = 1 AND `pd`.`date` >= " .. (time - (30 * 86400)) .. " ORDER BY `pd`.`date` DESC")
   if(result:getID() ~= -1) then
       repeat
           local content = {date = result:getDataInt("date")}
           if(content.date > times.today) then
               table.insert(contents.day, content)
           elseif(content.date > times.week) then
               table.insert(contents.week, content)
           else
               table.insert(contents.month, content)
           end
       until not result:next()
       result:free()
   end

   local size = {
       day = table.maxn(contents.day),
       week = table.maxn(contents.week),
       month = table.maxn(contents.month)
   } 
   return size.day + size.week + size.month
end 

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

function onLook(cid, thing, position, lookDistance)
   if isPlayer(thing.uid) and thing.uid ~= cid then
       doPlayerSetSpecialDescription(thing.uid,'[Frags: '..getPlayerFrags(thing.uid)..']')
       return true
   elseif thing.uid == cid then
       doPlayerSetSpecialDescription(cid,'[Frags: '..getPlayerFrags(cid)..']')
       local string = 'You see yourself.'
       if getPlayerFlagValue(cid, PLAYERFLAG_SHOWGROUPINSTEADOFVOCATION) then
           string = string..' You are '.. getPlayerGroupName(cid) ..'.'
       elseif getPlayerVocation(cid) ~= 0 then
           string = string..' You are '.. getPlayerVocationName(cid) ..'.'
       else
           string = string..' You have no vocation.'
       end
       string = string..getPlayerSpecialDescription(cid)..''

       if getPlayerNameByGUID(getPlayerPartner(cid), false, false) ~= nil then
           string = string..' You are '.. (getPlayerSex(cid) == 0 and 'wife' or 'husband') ..' of '.. getPlayerNameByGUID(getPlayerPartner(cid)) ..'.'
       end

       if getPlayerGuildId(cid) > 0 then 
           string = string..' You are ' .. (getPlayerGuildRank(cid) == '' and 'a member' or getPlayerGuildRank(cid)) ..' of the '.. getPlayerGuildName(cid)
           string = getPlayerGuildNick(cid) ~= '' and string..' ('.. getPlayerGuildNick(cid) ..').' or string..'.'
       end 

       if getPlayerFlagValue(cid, PLAYERCUSTOMFLAG_CANSEECREATUREDETAILS) then
           string = string..'nHealth: ['.. getCreatureHealth(cid) ..' / '.. getCreatureMaxHealth(cid) ..'], Mana: ['.. getCreatureMana(cid) ..' / '.. getCreatureMaxMana(cid) ..'].'
           string = string..'nIP: '.. doConvertIntegerToIp(getPlayerIp(cid)) ..'.'
       end

       if getPlayerFlagValue(cid, PLAYERCUSTOMFLAG_CANSEEPOSITION) then
           string = string..'nPosition: [X:'.. position.x..'] [Y:'.. position.y..'] [Z:'.. position.z..'].'
       end
       doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string)  
       return false
   end
   return true
end

Agora no Data/Creaturescripts/creaturescripts.xml

adicione essas tags:

<event type="login" name="fraglook_register" event="script" value="fraglook.lua"/>
   <event type="look" name="fraglook" event="script" value="fraglook.lua"/>  

 

•Creditos

Theax

Editado Novembro 19 por Saymon14

2 semanas depois...
bloderB
30 de novembro de 2010 às 18:13

Bem legal esse script,acho que ficaria legal em um ot de WAR ,mais em pvp tbm é legal,gostei :thumbsupsmiley:

Flw!

02 de dezembro de 2010 às 16:56

Bem eu tava procurando isso mais vo testar aki depois te flo como fikou kra ...Mais vlws mesmo assim por trazer pro xtibia :thumbsupsmiley:

2 semanas depois...
bonazza20B
13 de dezembro de 2010 às 16:59

acheo bem bacana o seu script,vou testar lá no meu servidor

vlw cara (:

1 mês depois...
w3ndelW
26 de janeiro de 2011 às 16:24

esse Cara eh Pika , Testado , Aprovado , e Usando é Claro !

4 meses depois...
LimoonesL
18 de maio de 2011 às 08:46

Mano funcionou perfeitamente...Fica rox com um Guild War system.. que to procurando a meses =/ REP++ ai

1 mês depois...
sigma696S
07 de junho de 2011 às 13:48

Rep+++ + uma vez esse cara mandou bem

droophenriqueD
09 de junho de 2011 às 00:15

Viiu soou novo no forum Xtibia.

Mais espero estar trazendo mtos trblhos proprios paraká.

Gostaria de tirar uma duvida sobre seu script ...

 

ele roda certinho no meeu otserv que estoou criando, mas queria sabeer se é possivel fazeer oq eu estoou pensando.

 

You see Leonod. He is a Royal Paladin.[frags:43] ((( ESSE É O ORIGINAL )))

You see Leonod. He is a Royal Paladin. [Frags:43] ((( TEM COMO DAR UM ESPAÇO DEPOIS DO PONTO DO *ROYAL PALDIN*

E DEIXAR O F ="DA PALAVRA FRAGS MAISUCULO"

 

Fikoo no Aguardoo Desde Já.

MalexusM
09 de junho de 2011 às 12:31

Pow fico até legal

aprovado.

:thumbsupsmiley2:

SkyDangerousS
09 de junho de 2011 às 12:47

@Malexus

 

Não reviva tópicos , isso é considerado flood.

Apenas reviva tópicos em caso de dúvidas.

 

Tópico parado desde : 19 novembro 2010

Editado Junho 9 por SkyDangerous

09 de junho de 2011 às 13:18

ele não reviveu nenhum topico olhe a data do ultimo post antes de alertar alguem *

09 de junho de 2011 às 15:44

Realmente, o tópico não foi revivido, mas enfim, continua sendo flood, então continua o alerta.

 

--

 

Bom script por sinal.

 

Abraços.

sigma696S
09 de junho de 2011 às 17:03

Veio pergunt aeu puz ele no serv so q quando mato outro cara nao mostra frag fica sempre no 0

2 semanas depois...
Enzo CaueE
21 de junho de 2011 às 09:40

Opaa , brigado , tava procurando mesmo um scrip desses , =]

1 mês depois...
abdalah1A
27 de julho de 2011 às 14:39

Belo script só tem um probleminha

eu queria um script de fraglook que quando desse look em outro player aparecesse os frags ..

No caso seu script apenas mostra os meus frags pra mim mesmo .. quando os outros dao look não aparece .. entendi ?

 

REP + pra quem ajudar ai.