Sistema De Sentar Com Recuperação Automatica.

Flaah
Por Flaah
em Actions e Talkactions
  • 1
  • 2

Flaah

Victor Hugo
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 26/12/11Posts: 201Char no Tibia: Flaah

Ola galera to XTIBIA, esse é meu primeiro tópico, e só tenho 6 meses de tibia, mais deu pra eu fazer um script, simples mais simbolico e bem util para servers em geral, então vamos lá...

 

Bom o script se baseia-se em 2 scripts juntados mais a ajuda do nosso e velho amigo Vodkart, ele me ajudo na edição e ajustes dos erros encontrados no sistema.

 

O funcionamento é simples, vc da o comando !sentar (você pode editar como quizer), e o seu o personagm sentar, e com isso o MANA e LIFE vão se recuperando aos poucos (você pode editar o tempo de recuperação e quando ele vai ganha de MANA e LIFE por tempo), para que o personagem volte ao normal vc deve digita o comando denovo, !sentar, ai ele saira da paralisação e voltara a andar normalmente.

 

Primeiramente pegue um arquivo qualquer no seu server e renomeie para: sentar.lua

 

Depois abra esse arquivo e coloque o SCRIPT abaixo dentro do arquivo: sentar.lua:

 

SCRIPT:

-- (Sistema para sentar com recuperação automatica) --
-- Criadores: Flaah e Vodkart (Não retirem os créditos) --

 events = {}
 config = {
 sit = {hp = 5, mana = 5},
 outfit = {lookType = 357},
 storage = 21211
}
 local outfits = {
					[1] = {lookType = 200}, -- o numero 1 é o ID da vocação e 200 é o ID do looktype.
					[2] = {lookType = 201}, -- o numero 2 é o ID da vocação e 201 é o ID do looktype.
					[3] = {lookType = 202}, -- o numero 1 é o ID da vocação e 202 é o ID do looktype.	  

}
 function onSay(cid, words, param, channel)
 setPlayerStorageValue(cid, config.storage, getPlayerStorageValue(cid, config.storage) == -1 and 1 or -1)
 doCreatureSetNoMove(cid, getPlayerStorageValue(cid, config.storage) == 1 and true or false)
 if getPlayerStorageValue(cid, config.storage) == 1 then
 doPlayerSay(cid, "Ufa, Relaxando")
 doSetCreatureOutfit(cid, config.outfit, -1)
 doSendMagicEffect(getCreaturePosition(cid), 69)
 doSitRelax(cid, config.sit)
 else
 doPlayerSay(cid, "OPA, hora de volta ao trabalho")
 doRemoveCondition(cid, CONDITION_OUTFIT)
 stopEvent(events[getPlayerGUID(cid)])
 local voc_id = getPlayerVocation(cid)
 if getPlayerVocation(cid) > 0 then
 doSetCreatureOutfit(cid, outfits[voc_id], -1)
 end
 end
 return true
 end
 function doSitRelax(cid, formula)
 if not isCreature(cid) then return LUA_ERROR end
 doCreatureAddHealth(cid, formula.hp)
 doCreatureAddMana(cid, formula.mana)
 doSendMagicEffect(getCreaturePosition(cid), 69)
 events[getPlayerGUID(cid)] = addEvent(doSitRelax, 5000, cid, formula)
 end

 

 

COMANDO:

 

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

 

INFORMAÇÕES:

 

O que esta em:

 

[1], [2] [3]

 

Você devera coloca cada vocation que tem no seu server.

 

O que esta em:

 

{lookType = 200}

 

Você devera colocar cada looktype que representa cada vocation do seu server.

 

O que esta em:

 

sit = {hp = 5, mana = 5},

 

São a quantidade de MANA e LIFE que o player ira ganha quando estive sentado.

 

O que esta em:

 

outfit = {lookType = 3},

 

é looktype de quando o player estive sentado.

 

O que esta em:

 

doPlayerSay(cid, "Ufa, Relaxando")

e

doPlayerSay(cid, "OPA, hora de volta ao trabalho")

 

São as falas que o player ira solta quando fizer o comando se !sentar e depois !sentar denovo para pode levantar.

 

O que esta em:

 

doSendMagicEffect(getCreaturePosition(cid),  CONST_ME_HOLYAREA)

 

É o efeito que o player irar ganha ao sentar e o segundo é quando o player estive ganhando o MANA e LIFE.

 

E o que esta em:

 

events[getPlayerGUID(cid)] = addEvent(doSitRelax, 5000, cid, formula)

 

É o tempo que o player irar fica ganhando o MANA E LIFE. (Sendo que 5000 são 5 segundos).

 

OBS: Para que vc coloque mais vocations e lookType é só repetir essa linha, mais claro trocando os numeros pelos o que você quer:

 

[1] = {lookType = 200},

 

Bom.. tomara que vocês tenham gostado , deu um pouco de trabalho mais valeu a pena, Obrigadão Vodkart pela ajuda, e obrigado XTIBIA pelo ótimo forum de vocês, Boa Noite a Todos.

 

PS: Tomara que eu tenha merecido um +REP ai u.u, KKKKK'

 

ASS: Flaah :)

Sou desse carinha..



582459_362016673913095_1385656134_n.jpg

 

"Pense nisso você tbm"

 

"Tudo o que um sonho precisa para ser realizado é alguém que acredite que ele possa ser realizado"



35l7z91.jpg

Vilden

Loading. . .
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 09/05/08Posts: 1597

Bem legal, mais a final, ele não senta =/... Deveria tentar colocar isso como !ki tipo dragon ball que ele pega as força la e tal.

Atenciosamente, Vilden.

Flaah

Victor Hugo
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 26/12/11Posts: 201Char no Tibia: Flaah

Po boa idéia.. mais senta sim, so ter o lookType pra sentar...

 

Testei aqui e deu super certo, qual sua versão?

 

Testei na versão 8.54.. mais essa idéia que vc me deu foi ótima, semana que vem eu começo a fazer :)

 

Vlw a idéia :)

Sou desse carinha..



582459_362016673913095_1385656134_n.jpg

 

"Pense nisso você tbm"

 

"Tudo o que um sonho precisa para ser realizado é alguém que acredite que ele possa ser realizado"



35l7z91.jpg

markindoot

Schznister Equilibriun
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 27/10/12Posts: 323Char no Tibia: Schznister Equilibriun

Flaah voce conseguiria faser esse script sem comando para min?

Você pode ficar desapontado se falhar, mas você está certamente condenado se não tentar.

Flaah

Victor Hugo
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 26/12/11Posts: 201Char no Tibia: Flaah

Como assim, sem comando?!

Sou desse carinha..



582459_362016673913095_1385656134_n.jpg

 

"Pense nisso você tbm"

 

"Tudo o que um sonho precisa para ser realizado é alguém que acredite que ele possa ser realizado"



35l7z91.jpg

JasonLucas

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 03/01/12Posts: 32Char no Tibia: nick ant

Tenta fazer por ActionID ai quando o cara clickar pra usar ele senta automaticamente.

Flaah

Victor Hugo
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 26/12/11Posts: 201Char no Tibia: Flaah

Isso é mole, so tira a linha:

 

function onSay(cid, words, param, channel)

 

E coloca a linha:

 

function onUse(cid, item, frompos, item2, topos)

Sou desse carinha..



582459_362016673913095_1385656134_n.jpg

 

"Pense nisso você tbm"

 

"Tudo o que um sonho precisa para ser realizado é alguém que acredite que ele possa ser realizado"



35l7z91.jpg

markindoot

Schznister Equilibriun
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 27/10/12Posts: 323Char no Tibia: Schznister Equilibriun

sem comando que eu falo é o player subir no banco ai o outfit muda.

ele sai do banco o outfit volta

Você pode ficar desapontado se falhar, mas você está certamente condenado se não tentar.

Flaah

Victor Hugo
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 26/12/11Posts: 201Char no Tibia: Flaah

Mais isso que o script que te mandei faiz:

 

Aqui ó.

 

Crie um arquivo chamado: sentar.lua

 

E coloque dentro:

 

events = {}
config = {
male = {lookType = 301},
female = {lookType = 291},
storage = 21211
}
function onStepIn(cid, item, position, fromPosition)
setPlayerStorageValue(cid, config.storage, getPlayerStorageValue(cid, config.storage) == -1 and 1 or -1)
if getPlayerStorageValue(cid, config.storage) == 1 then
doPlayerSay(cid, "Ufa, Relaxando")
doSetCreatureOutfit(cid, config.male, -1)
doSetCreatureOutfit(cid, config.female, -1)
doSendMagicEffect(getCreaturePosition(cid),  2)
else
doPlayerSay(cid, "você ficou em pé")
doRemoveCondition(cid, CONDITION_OUTFIT)
stopEvent(events[getPlayerGUID(cid)])
end
return true
end
function doSitRelax(cid, formula)
if not isCreature(cid) then return LUA_ERROR end
doCreatureAddHealth(cid, formula.hp)
doCreatureAddMana(cid, formula.mana)
doSendMagicEffect(getCreaturePosition(cid),  2)
events[getPlayerGUID(cid)] = addEvent(doSitRelax, 5000, cid, formula)
end

 

Depois, crie um arquivo escrito: sair.lua

 

E coloque dentro:

 

events = {}
config = {
male = {lookType = 301},
female = {lookType = 291},
storage = 21211
}
function onStepOut(cid, item, position, fromPosition)
setPlayerStorageValue(cid, config.storage, getPlayerStorageValue(cid, config.storage) == -1 and 1 or -1)
if getPlayerStorageValue(cid, config.storage) == 1 then
doPlayerSay(cid, "Ufa, Relaxando")
doSetCreatureOutfit(cid, config.male, -1)
doSetCreatureOutfit(cid, config.female, -1)
doSendMagicEffect(getCreaturePosition(cid),  2)
else
doPlayerSay(cid, "você ficou em pé")
doRemoveCondition(cid, CONDITION_OUTFIT)
stopEvent(events[getPlayerGUID(cid)])
end
return true
end
function doSitRelax(cid, formula)
if not isCreature(cid) then return LUA_ERROR end
doCreatureAddHealth(cid, formula.hp)
doCreatureAddMana(cid, formula.mana)
doSendMagicEffect(getCreaturePosition(cid),  2)
events[getPlayerGUID(cid)] = addEvent(doSitRelax, 5000, cid, formula)
end

 

 

Depois coloque no movements.xml

 

<movevent type="StepIn" itemid="1652" event="script" value="sentar.lua"/>
<movevent type="StepOut" itemid="1652" event="script" value="sair.lua"/>

 

OBS: Mais informações pra editar o script, entre:

 

http://www.xtibia.co...cao-automatica/

 

PS: No itemid="1652" vc modifica pro ID da cadeira, ou banco que vc queira. happy.png

 

AJUDEI? +REP

Sou desse carinha..



582459_362016673913095_1385656134_n.jpg

 

"Pense nisso você tbm"

 

"Tudo o que um sonho precisa para ser realizado é alguém que acredite que ele possa ser realizado"



35l7z91.jpg

markindoot

Schznister Equilibriun
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 27/10/12Posts: 323Char no Tibia: Schznister Equilibriun

flaah o script ta certo mais há 1 bug:

ele sobi fika assim e fika como mulher

sentado.bmp

sai do banco ele vira \/

vira isso.bmp

meu god e homem

Itens Q.bmp

Você pode ficar desapontado se falhar, mas você está certamente condenado se não tentar.

Flaah

Victor Hugo
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 26/12/11Posts: 201Char no Tibia: Flaah

Ver agora, editei la em cima.

Sou desse carinha..



582459_362016673913095_1385656134_n.jpg

 

"Pense nisso você tbm"

 

"Tudo o que um sonho precisa para ser realizado é alguém que acredite que ele possa ser realizado"



35l7z91.jpg

craigmabbit

avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 05/10/12Posts: 245

na talk que você fez tem como editar pra male e female ai

Flaah

Victor Hugo
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 26/12/11Posts: 201Char no Tibia: Flaah

Tem sim, aqui ó:

 

-- (Sistema para sentar com recuperação automatica) --
-- Criadores: Flaah e Vodkart (Não retirem os créditos) --

 events = {}
 config = {
 sit = {hp = 5, mana = 5},
 male = {lookType = 301},
 female = {lookType = 291},
 storage = 21211
}
 local outfits = {
					[1] = {lookType = 200}, -- o numero 1 é o ID da vocação e 200 é o ID do looktype.
					[2] = {lookType = 201}, -- o numero 2 é o ID da vocação e 201 é o ID do looktype.
					[3] = {lookType = 202}, -- o numero 1 é o ID da vocação e 202 é o ID do looktype.	  

}
 function onSay(cid, words, param, channel)
 setPlayerStorageValue(cid, config.storage, getPlayerStorageValue(cid, config.storage) == -1 and 1 or -1)
 doCreatureSetNoMove(cid, getPlayerStorageValue(cid, config.storage) == 1 and true or false)
 if getPlayerStorageValue(cid, config.storage) == 1 then
 doPlayerSay(cid, "Ufa, Relaxando")
 doSetCreatureOutfit(cid, config.male, -1)
 doSetCreatureOutfit(cid, config.female, -1)
 doSendMagicEffect(getCreaturePosition(cid), 69)
 doSitRelax(cid, config.sit)
 else
 doPlayerSay(cid, "OPA, hora de volta ao trabalho")
 doRemoveCondition(cid, CONDITION_OUTFIT)
 stopEvent(events[getPlayerGUID(cid)])
 local voc_id = getPlayerVocation(cid)
 if getPlayerVocation(cid) > 0 then
 doSetCreatureOutfit(cid, outfits[voc_id], -1)
 end
 end
 return true
 end
 function doSitRelax(cid, formula)
 if not isCreature(cid) then return LUA_ERROR end
 doCreatureAddHealth(cid, formula.hp)
 doCreatureAddMana(cid, formula.mana)
 doSendMagicEffect(getCreaturePosition(cid), 69)
 events[getPlayerGUID(cid)] = addEvent(doSitRelax, 5000, cid, formula)
 end

 

Ou se preferi:

 

events = {}
config = {
sit = {hp = 5, mana = 5},
male = {lookType = 301},
female = {lookType = 291},
storage = 21211
}
function onSay(cid, words, param, channel)
setPlayerStorageValue(cid, config.storage, getPlayerStorageValue(cid, config.storage) == -1 and 1 or -1)
doCreatureSetNoMove(cid, getPlayerStorageValue(cid, config.storage) == 1 and true or false)
if getPlayerStorageValue(cid, config.storage) == 1 then
doPlayerSay(cid, "Ufa, Relaxando")
doSetCreatureOutfit(cid, config.male, -1)
doSetCreatureOutfit(cid, config.female, -1)
doSendMagicEffect(getCreaturePosition(cid),  2)
doSitRelax(cid, config.sit)
else
doPlayerSay(cid, "você ficou em pé")
doRemoveCondition(cid, CONDITION_OUTFIT)
stopEvent(events[getPlayerGUID(cid)])
end
return true
end
function doSitRelax(cid, formula)
if not isCreature(cid) then return LUA_ERROR end
doCreatureAddHealth(cid, formula.hp)
doCreatureAddMana(cid, formula.mana)
doSendMagicEffect(getCreaturePosition(cid),  2)
events[getPlayerGUID(cid)] = addEvent(doSitRelax, 5000, cid, formula)
end

 

AJUDEI? +REP mdr.gif

Sou desse carinha..



582459_362016673913095_1385656134_n.jpg

 

"Pense nisso você tbm"

 

"Tudo o que um sonho precisa para ser realizado é alguém que acredite que ele possa ser realizado"



35l7z91.jpg

markindoot

Schznister Equilibriun
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 27/10/12Posts: 323Char no Tibia: Schznister Equilibriun

Flaah aki funcionou direitinho Quando voltar Rep+ pra vc flws

Você pode ficar desapontado se falhar, mas você está certamente condenado se não tentar.

craigmabbit

avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 05/10/12Posts: 245

rep+ vlw

  • 1
  • 2