CO

Reputation System By Colex

Por colex, 17 de fev. de 2006 em Actions e Talkactions

otserv
tibia
script
25
10.3k
colexC
17 de fevereiro de 2006 às 23:23

Reputation system, consistem em 2 runes, 1 da pontos de reputação e a otra ve quantus pontos de reputação vc ou otro cara tem

Voce NAUM pode dar reputation points a si próprio

Para poder dar pontos de reputação tem ke ser um certo level escolhido por voce,aconselho a escolher level alto (100 por exemplo dependendo da experiencia) assim as pessoas naum ficam fazendu chars pra darem reputação para elas.

Se voce quiser tambem precisa de um certo level pra receber,aconselho aki tambem alto (100 por exemplo tbm).

Uma pessoa naum poderam spammar porque ela tem ke esperar dias pra poder dar reputatio points otra vez.

Aqui esta a action:

1º Parte: Rune para dar reputation points

no diretório data>actions>scripts crie um ficheiro com nome de rep.lua e adicione u seguinte code:

 

------Reputation System by Colex------function onUse(cid, item, frompos, item2, topos)days = 10080                    ---os dias são contados em segundosstorevalue = 8971               ---onde sera guardado o tempo de esperaname = getPlayerName(item2.uid)name2 = getPlayerName(cid)playername = getPlayerName(cid)lvl = getPlayerLevel(cid)lvl2 = getPlayerLevel(item2.uid)level = 50                      ---level necessario para dar reputation points level2 = 100                    ---level que pode receber reputation pointsrep = getPlayerStorageValue(item2.uid,8904)result = rep + 1if name2 == name thendoPlayerSendTextMessage(cid,22,"You cannot use this rune on your self.") return 0endif item2.itemid == cid then  if lvl >= level then    if lvl2 >= level2 then      if rep > 0 then      if (waiting(cid, storevalue, days) == 1) then        setPlayerStorageValue(item2.uid,8904,rep+1)        doPlayerSendTextMessage(cid,22,"You gave 1 reputation point to "..name..", now he/she has "..result.." points.")        doPlayerSendTextMessage(item2.uid,22,"You've received 1 reputation point from "..name2..", now you have "..result.." points.")      else        doPlayerSendCancel(cid,"You need to wait more time before start to give more reputation points.")       end    else        setPlayerStorageValue(item2.uid,8904,1)        doPlayerSendTextMessage(cid,22,"You gave 1 reputation point to "..name..", now he/she has 1 points.")        doPlayerSendTextMessage(item2.uid,22,"You've received 1 reputation point from "..name2..", now you have "..result.." points.")    end    else      doPlayerSendCancel(cid,"The player need level "..level2.." to receive reputation points.")        end  else    doPlayerSendCancel(cid,"You need level "..level.." to give reputation points.")   endelse  doPlayerSendCancel(cid,"You can not use this rune there.") endreturn 1endfunction waiting(cid, storevalue, days)      newWaiting = os.time()   oldWaiting = getPlayerStorageValue(cid, storevalue)   if (lastwaiting == nil or lastwaiting < 0) then       lastwaiting = 0   end   if (days == nil or days < 0) then       days = 1   end   diffTime = os.difftime(newWaiting, oldWaiting)   if (diffTime >= days) then       setPlayerStorageValue(cid, storevalue, newWaiting)       return 1   else       return 0   endend

 

2º Script: Rune para ver os reputations points

otra vez no diretório data>actions>scripts faça um ficheiro de nome rep2.lua e adicione u seguinte code:

 

------Reputation System by Colex------function onUse(cid, item, frompos, item2, topos)name2 = getPlayerName(cid)name = getPlayerName(item2.uid)rep = getPlayerStorageValue(item2.uid,8904)if rep > 0 thensetPlayerStorageValue(item2.uid,8904,0)return 0endif name2 == name thendoPlayerSendTextMessage(cid,22,"You have "..rep.." reputation points.") return 0endif item2.itemid == cid then  doPlayerSendTextMessage(cid,22,""..name.." has "..rep.." reputation points.")else  doPlayerSendCancel(cid,"You can not use this rune there.")endreturn 1end

 

agora na pasta data>actions adicione no ficheiro actions.xml as seguintes frases:

 

-----------Reputation System----------<action itemid="2263" script="rep.lua" allowfaruse="1" /><action itemid="2276" script="rep2.lua" allowfaruse="1" />-----------/Reputation System---------

 

----------------------------------------------

espero que gostem e comentem u que axam ;):

Editado Junho 14 por colex

ImperiI
18 de fevereiro de 2006 às 00:38

Colex, achei bom cara isso.

Porem esse negocio de reputação em runa, :/

Se fosse por monstros matados, Pessoa que mais mato.

Sei lá, algo que seja totalmente involuntario, ( me eskeço da palavra agora ).

Algo que os players num façam, que seja do propio Serrv.

Num sei se me entede.

Minha opiniao

F

U

I

RotcivR
18 de fevereiro de 2006 às 01:05

achei essa runa bem legal, se você colocar ela somente para level 100+ usar, fika divertido :grin:

colexC
18 de fevereiro de 2006 às 01:16
achei essa runa bem legal, se você colocar ela somente para level 100+ usar, fika divertido :grin:

 

 

 

issu é vc ke decide

é só vc colocar estas 2 tags 100

level = 50 ---level necessario para dar reputation points

level2 = 100 ---level que pode receber reputation points

Imperi

eu fiz istu daki pesandu nus sistemas dus forums, em que quandu uma pessoa ajuda a otra ela da pontos de reputação (;:

2 semanas depois...
GMxtibiaG
28 de fevereiro de 2006 às 18:44

legalzinhu

1 mês depois...
surviveS
09 de março de 2006 às 21:10

Bom eu sou novo por aki e gostei desse script, mais acho que se tivesse como usar sem ser como runa, como magia instantanea seria bem melhor tipo ( Reputation 'fulano' ) e pronto, ele nem precisa estar perto de vc. caso queira ver ( ViewReputation 'fulano' )

Editado Março 9 por survive

suborasS
10 de março de 2006 às 01:36

Aew Colex ta Rox MEW :D como sempre suas actions tam de parabens ( a alert system rune la) ta ROX tb... mais um porem.. num ta add mais q 10% ela add 10% e no prox use retira esses 10% por acaso tem um tempo certo para poder add outro alert ???!?!?!?

quanto a vc @survive

Sua ideia eh genial tb o.O .. mais isso seria pelas soucers (action eh tudo aquilo q se pode dar use) naum se pode dar usa numa palavra neh ? -.-"

HUAIHUAIhiuhuishiu

espero ter ajudado ao menos :p

colexC
10 de março de 2006 às 06:36

voce precisa esperar u tempo ke vc colocar la

lembrandu ke u tempo é em segundus

11 de março de 2006 às 08:31

Pra que server isso?

colexC
11 de março de 2006 às 10:14
Pra que server isso?

 

 

 

voce sabe u ke é reputação?

normalmente a reputação se ganha quandu um cara ajuda outro ou faz algu de bom, ai as pessoas se kiserem podem dar reputação pra ele.

pontos de reputação podem ajudar us gms a verem ke u cara ajuda as pessoas (kuandu procurar por exemplo um tutor)

e pontos de reputação pode ser um motivo para us players se ajudarem entre si

1 mês depois...
shanarS
07 de abril de 2006 às 07:26

ou Aki tem reputation Limite???

I outra da pra fazer alguma level door q precisa de 1 tanto de reputation para passar???

Axei 1 bug add 2 vezes reputation num char meu foi quando eu fui ver so tinha 1.

Editado Abril 7 por shanar

colexC
07 de abril de 2006 às 08:59
ou Aki tem reputation Limite???

I outra da pra fazer alguma level door q precisa de 1 tanto de reputation para passar???

Axei 1 bug add 2 vezes reputation num char meu foi quando eu fui ver so tinha 1.

 

 

 

ja atualizei a action

axu ke agr ja ta funcionandu 100%

vlw ;):

da pra fazer uma door por reputation sim

Editado Abril 7 por colex

1 ano depois...
Evil RyonE
02 de maio de 2007 às 05:27

Não ta funfando!

 

Eu tiro a linha de que name2 = name

 

bla bla

 

a linha pra num usar em vc mesmo pra mim testa eu add, ai vo ver eu num tenho reputação!

 

help

 

 

Conssegui é so tirar a linha

 

---------------------------------------

if rep > 0 then

setPlayerStorageValue(item2.uid,3333,0)

return 0

end

---------------------------------------

do rep2.lua e tudo fica otimo! brigado Colex!

Editado Maio 2 por Evil Ryon

k0diK
03 de maio de 2007 às 16:52

não tem o que falar, todas as actions do COLEX é "quase" perfeita

3 meses depois...
biazinha21B
07 de agosto de 2007 às 22:18

eh legal...mais isso nao tem funçao nenhuma no jogo