JH

[Creaturescript] Simple Reputation System !

Por jhon992, 30 de nov. de 2011 em Globalevents e Spells

otserv
tibia
script
92
19.7k
VodkartV
18 de abril de 2012 às 11:29

@melocom, ja adaptei sua ideia no script. Só ir na primeira página e copiar a parte de Comprar determinado item com Pontos de Reputação.

quer um npc tbm?

PsyMcKenzieP
18 de abril de 2012 às 13:54

Mano se eu te falar que vi esse OT num server e fiquei mais de 1 ano procurando e não achei

se não acredita.

Muito Obrigado tenho certeza que irá ajudar várias pessoas.

Inclusive irei testar jajá ;]~

melocomM
18 de abril de 2012 às 16:13

Jhon992 fico otimo esse script no meu ot ta fasendo maior susseso

so q tive algumas reclamasos os players n querem perde pontos

por matar alguem q n ta pk como modifico ?

Vodkart vc e show cara sempre q vc tiver alguma coisa nova posta ai q eu vo tedar rep +

vlw pela ajudar tenho algums ideias q acho q vcs vao gosta vo continuar postando pedidos

to querendo comesar a criar topicos mais os creditos serao todos de vcs

obrigado pela ajuda ate agora

Editado Abril 18 por melocom

VodkartV
18 de abril de 2012 às 18:04

Jhon992 fico otimo esse script no meu ot ta fasendo maior susseso

so q tive algumas reclamasos os players n querem perde pontos

por matar alguem q n ta pk como modifico ?

Vodkart vc e show cara sempre q vc tiver alguma coisa nova posta ai q eu vo tedar rep +

vlw pela ajudar tenho algums ideias q acho q vcs vao gosta vo continuar postando pedidos

to querendo comesar a criar topicos mais os creditos serao todos de vcs

obrigado pela ajuda ate agora

 

poste suas idéias para que possamos inclui-la no sistema!

melocomM
19 de abril de 2012 às 00:37

vo criar mais um topico com pedido e mando o link pra vc

e um script q vi uma ves em um ot a acho q seria legal passa para os outros

e seus rep + sao garantidos continua me ajudando q eu ajudo vc

vlw

DarksajD
22 de abril de 2012 às 00:56

curti muito, se puder faça uma atualização

pra cada monstro da uma determinada quantia de ponto

 

em caso do !buy, com faz pra por como npc?

1 mês depois...
VodkartV
04 de maio de 2012 às 23:08

Passando para deixar um Rep Look:

 

 

nome do seu script.lua

function getReps(cid)
return getPlayerStorageValue(cid,102086) < 0 and 0 or getPlayerStorageValue(cid,102086)
end
function onLook(cid, thing, position, lookDistance)
if isPlayer(thing.uid) then
doPlayerSetSpecialDescription(thing.uid, "\n[Reps: " .. getReps(thing.uid) .."]")
end
return true
end

 

creaturescript.xml

<event type="look" name="showRep" event="script" value="nome do seu script.lua"/>

 

creaturescript/script/login.lua adc:

registerCreatureEvent(cid, "showRep")

RodrigoScR
06 de maio de 2012 às 18:17

como posso fazer que pra cada monstro da uma determinada quantia de points?

jhon992J
06 de maio de 2012 às 18:36

@RodrigoSigrist, criei ali um script que torna isso editavel e jah esta na pagina inicial do tópico.

RodrigoScR
06 de maio de 2012 às 19:13

Obrigado!! REP+

nariN
09 de maio de 2012 às 09:29

aqui não funcionou, os monstros que era para dar rep não morrem e da esse erro

 

 

[9:21:31.279] [Error - CreatureScript Interface]

[9:21:31.279] data/creaturescripts/scripts/repsystem.lua:onKill

[9:21:31.280] Description:

[9:21:31.280] data/creaturescripts/scripts/repsystem.lua:19: attempt to index fi

eld '?' (a nil value)

[9:21:31.281] stack traceback:

[9:21:31.282] data/creaturescripts/scripts/repsystem.lua:19: in function <data

/creaturescripts/scripts/repsystem.lua:2>

jhon992J
09 de maio de 2012 às 12:16

você deve ter feito algo errado. tente copiar os códigos novamente e teste o script como esta antes de alterar os monstros.

o problema deve ter ocorrido na hora de adicionar mais monstros no vetor, ou na hora de copiar o script.

nariN
09 de maio de 2012 às 12:39

copiei e fiz igual vc falou sem add novos monstro e continua com o erro

 

 

[12:38:06.040] [Error - CreatureScript Interface]

[12:38:06.041] data/creaturescripts/scripts/repsystem.lua:onKill

[12:38:06.041] Description:

[12:38:06.041] data/creaturescripts/scripts/repsystem.lua:15: attempt to index f

ield '?' (a nil value)

[12:38:06.042] stack traceback:

[12:38:06.043] data/creaturescripts/scripts/repsystem.lua:15: in function <data

/creaturescripts/scripts/repsystem.lua:2>

VodkartV
09 de maio de 2012 às 13:29

copiei e fiz igual vc falou sem add novos monstro e continua com o erro

 

 

[12:38:06.040] [Error - CreatureScript Interface]

[12:38:06.041] data/creaturescripts/scripts/repsystem.lua:onKill

[12:38:06.041] Description:

[12:38:06.041] data/creaturescripts/scripts/repsystem.lua:15: attempt to index f

ield '?' (a nil value)

[12:38:06.042] stack traceback:

[12:38:06.043] data/creaturescripts/scripts/repsystem.lua:15: in function <data

/creaturescripts/scripts/repsystem.lua:2>

tente assim

 

--<Script by jhon992>--
function onKill(cid, target, lastHit)
local pkDeathPoints = 1 -- pontos que vai ganhar por matar pk.
local deathPlayer = 2 -- pontos que vai perder por matar player normal.
Monster = {
["demon"] = 3,
["morgaroth"] = 5,
["hydra"]= 2,
["dragon"] = 1
}
  n = getCreatureName(target)
  if isMonster(target) and Monster[string.lower(n)] then
  setPlayerStorageValue(cid, 102086, getPlayerStorageValue(cid, 102086)+Monster[string.lower(n)])
  doSendAnimatedText(getThingPos(cid), 'Rep+', 30)
  doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"Você ganhou "..Monster[string.lower(n)].." ponto de reputação por matar um ".. n ..".")
  elseif (isPlayer(target) == true) then
  if (getCreatureSkullType(target) > 2) then
  setPlayerStorageValue(cid, 102086, getPlayerStorageValue(cid, 102086)+pkDeathPoints)
  doSendAnimatedText(getThingPos(cid), 'Rep+', 30)
  doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"Você ganhou "..(pkDeathPoints).." ponto de reputação por matar "..n..".")
  return true
  end
  setPlayerStorageValue(cid, 102086, getPlayerStorageValue(cid, 102086)-deathPlayer)  
  doSendAnimatedText(getThingPos(cid), 'Rep-', 144)
  doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"Você perdeu "..(deathPlayer).." ponto de reputação por matar "..n..".")
end
return TRUE
end

nariN
09 de maio de 2012 às 13:45

Obrigado @Vodkart funcionou sim :D