Ir para conteúdo

Posts Recomendados

Ola galera xtibiana venho monstra meu novo sistema o trainer off sytem.

 

Como ele funciona?

Bem...

O player ao dizer uma talkaction ele paga um certo preço para pode upar quando estiver off.

Ele paga o dinheiro de acordo com a hora que ele vai ficar treinando off.

Se ele tentar logar na hora que ele estiver upando ele e recebido com uma mensagem e desloga.

 

A talk funciona de tal maneira:

/treiner (E a quantidade de horas que quer upar)

Exemplo quero upar 4 horas eu falo:

/treiner 4.

 

Uma hora custa 100 platinum coins depende do dinheiro do seu otserv.

 

Lets go.

 

Crie uma arquivo lua em talkactions chamado de treiner e coloque este código:

function onSay(cid, words, param, channel)
function doSetTimeTrainer(cid, time)
exhaustion.set(cid, 44226, time*36000*1000)
end
function doAddAllSkillTrainer(cid, quant)
doPlayerAddSkill(cid, SKILL_FIST, quant)
doPlayerAddSkill(cid, SKILL_CLUB, quant)
doPlayerAddSkill(cid, SKILL_SWORD, quant)
doPlayerAddSkill(cid, SKILL_AXE, quant)
doPlayerAddSkill(cid, SKILL_DISTANCE, quant)
doPlayerAddSkill(cid, SKILL_SHIELD, quant)
doPlayerAddSkill(cid, SKILL_FISHING, quant)
doRemoveCreature(cid)
end

local money = 9999  --- Quanto de money por hora
local limit = 60 -- Qual e o limite de horas que ele pode upar
local skill = 6 --- Quantos de skill ele vai ganhar por hora
local t = string.explode(param, ",")
if param == '' or param == " " or param == nil then
return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você precisa colocar quanto de treino você quer")
end
if getPlayerGroupId(cid) >= 2 then
return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode usar o sistema com pessoas da equipe(tutor,gm,cm,god) use com players")
end

if tonumber(t[1]) >= limit then
return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "O limite de horas e "..limit.."")
end

local time = t[1]
local gold = t[1]*money
if getPlayerMoney(cid) <= money then
return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você precisa ter pelo 100000 de money para treinar")
end
if gold >= getPlayerMoney(cid) then
return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Para cada 1 hora de treino e necessario 100000 de money")
end
doPlayerRemoveMoney(cid, gold)
doSetTimeTrainer(cid, time)
doAddAllSkillTrainer(cid, t[1]*skill)
return true
end

 

Agora coloque esta tag em talkactions.xml:

 

<talkaction words="/trainer" event="script" value="trainer.lua"/>

 

Agora vá em creaturescripts e crie um arquivo lua chamado de treiner e coloque isto:

 

function onLogin(cid)
function getTimeTrainer(cid)
return exhaustion.get(cid, 44226)
end
if getTimeTrainer(cid) then
doShowTextDialog(cid, 1952, "Você esta treinando não pode logar ate que seu treinamento termine")
return addEvent(doRemoveCreature, 180, cid)
end
return true
end

 

Agora vá em creaturescripts e abra o login.lua e registre o evento colocando isto antes do ultimo return:

 

registerCreatureEvent(cid, "treiner")

 

Coloque a tag em creaturescripts.xml

 

<event type="login" name="trainer" event="script" value="trainer.lua"/>

 

 

aa398440cd9c7e16e392583f38e216ee.gif

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

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Atualizações~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 

Eu coloquei

 

 

 

Limite de hora
Explicação de Configuração
Aumento de pontos de skills

 

 

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

qndo ele fala /trainer 2 ele ja vai ser kikado na hora e não poderá logar dentro dessas 2 horas?

e qual o limite de horas pra treina?

 

Sim ele e kikado e durante estas 2 horas ele não pode logar.

Eu configurei para o limite de horas for 60 mais se quiser pode alterar.

Link para o comentário
Compartilhar em outros sites

Funciona em 8.60?

 

Olha cara testei em 9.10 mais acho que funciona.

 

Obs:

Eu ia utilizar a função para banir só que otservs com a versão acima de 9.x não tem sistema de banir.

Então resolvi criar um mini-sistema de ban para fazer o script.

Link para o comentário
Compartilhar em outros sites

hmm ok vou testar no meu 8.60 aqui.

=)

 

Opa um detalhe não teste com God.

Este sistema não funciona com Gods ou pessoas da equipe do seu ot.

Teste com players normais

 

Atualizei o script veja o que eu coloquei:

 

 

 

Verificação de players da equipe agora apenas player normais podem usar a talkactions isso evita bug

 

 

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

  • 1 month later...

cuidado amigo, o topico estava parado a + de 1 mes e isso pode ser considerado food... leia as regras do forum..

 

Na verdade, não tem problema nenhum reviver o tópico caso o comentário não seja um flood, no caso dele não foi flood e não poderia ser alertado.

Link para o comentário
Compartilhar em outros sites

As Scrpt Funfo d boa... agora so aguarda o tempo para ve se funfo tudo certo :)

 

se Funfa d boa volto aki pra da REP+

 

Opa e mesmo.

O tempo estava errado.

 

Pronto ja foi concertado

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...