PS

Sistema de Sentar

Por PsyMcKenzie, 12 de abr. de 2013 em Mods, funções e outros

script
5.0 (1)
24
4.5k
PsyMcKenzieP
12 de abril de 2013 às 01:24

É um sistema do tipo Ragnarok em que ao usar a talk, o player ficará imóvel e seu life e mana irão subir.

Vamos ao script!

Em data/talkactions/scripts, crie um arquivo com o nome de sentar.lua e adicione:



local sentar = {health = 5, mana = 5}
local storage = 12345

function onSay(cid, words)

if getTilePzInfo(getPlayerPosition(cid)) then
if getPlayerStorageValue(cid, 12345) == -1 then
doCreatureSay(cid, "Ahh, vou descansar...", TALKTYPE_MONSTER)
doSendMagicEffect(getCreaturePosition(cid), 1)
doPlayerAddHpManaSentar(cid, sentar)
doCreatureSetNoMove(cid, true)
setPlayerStorageValue(cid, 12345, 1)
else
setPlayerStorageValue(cid, 12345, -1)
doCreatureSetNoMove(cid, false)
doCreatureSay(cid, "Já descansei.", TALKTYPE_MONSTER)
stopEvent(hpmana)
end
end
return true
end

function doPlayerAddHpManaSentar(cid, formula)
if not isCreature(cid) then return true end
doCreatureAddHealth(cid, formula.health)
doCreatureAddMana(cid, formula.mana)
hpmana = addEvent(doPlayerAddHpManaSentar, 5000, cid, formula)
end[/code]

[b]Agora em talkactions.xml adicione a tag:[/b]

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



Imagens:

sentar1.png

sentar2.png


É isso ai galera, espero que isso sirva pra alguém.
Abraços e até semana que vem! ;)




Créditos: LuckOake por ajudar com storage.

Editado Outubro 8 por Bennyyw

AlexclusiveA
12 de abril de 2013 às 02:05

Legal cara, vou colocar no meu! já testou né?

Funciona em 8.6?

PsyMcKenzieP
12 de abril de 2013 às 11:39

Já testei sim.

Provavelmente funciona.

Testei na versão 9.83

Mas qualquer erro, posta ai.

RoksasR
12 de abril de 2013 às 16:17

Não funcionou aqui :)

8.60!

PsyMcKenzieP
12 de abril de 2013 às 16:18

Qual o erro?

 

@EDIT

Está usando a talk em pz?

Só funciona se estiver em pz.

 

@EDIT2

Adicionado imagens ao tópico.

 

@EDIT3

Tenta agora.

 

 

local sentar = {health = 5, mana = 5}

local storage = 12345

 

function onSay(cid, words)

 

if getTilePzInfo(getPlayerPosition(cid)) then

if getPlayerStorageValue(cid, 12345) == -1 then

doCreatureSay(cid, "Ahh, vou descansar...", TALKTYPE_MONSTER)

doSendMagicEffect(getCreaturePosition(cid), 1)

doPlayerAddHpManaSentar(cid, sentar)

doCreatureSetNoMove(cid, true)

setPlayerStorageValue(cid, 12345, 1)

else

setPlayerStorageValue(cid, 12345, -1)

doCreatureSetNoMove(cid, false)

doCreatureSay(cid, "Já descansei.", TALKTYPE_MONSTER)

stopEvent(hpmana)

end

end

return true

end

 

function doPlayerAddHpManaSentar(cid, formula)

if not isCreature(cid) then return true end

doCreatureAddHealth(cid, formula.health)

doCreatureAddMana(cid, formula.mana)

hpmana = addEvent(doPlayerAddHpManaSentar, 5000, cid, formula)

end

Editado Abril 12 por PsyMcKenzie

isoselesI
12 de abril de 2013 às 21:22

Você pode fazer isso quando você diz! lançar-lhe mudar a roupa e quando você diz que volta a colocar a roupa que você teve?

PsyMcKenzieP
12 de abril de 2013 às 21:23

Vou fazer aqui pra você cara.

 

@EDIT

Tenta isso:

 

 

 

local sentar = {health = 5, mana = 5}

local storage = 12345

 

local outfits = {

[1] = {lookType = 200},

[2] = {lookType = 201},

[3] = {lookType = 202}

}

 

function onSay(cid, words)

 

if getTilePzInfo(getPlayerPosition(cid)) then

if getPlayerStorageValue(cid, 12345) == -1 then

doCreatureSay(cid, "Ahh, vou descansar...", TALKTYPE_MONSTER)

doSetCreatureOutfit(cid, config.outfit, -1)

doSendMagicEffect(getCreaturePosition(cid), 1)

doPlayerAddHpManaSentar(cid, sentar)

doCreatureSetNoMove(cid, true)

setPlayerStorageValue(cid, 12345, 1)

else

setPlayerStorageValue(cid, 12345, -1)

doCreatureSetNoMove(cid, false)

doCreatureSay(cid, "Já descansei.", TALKTYPE_MONSTER)

stopEvent(hpmana)

local voc_id = getPlayerVocation(cid)

if getPlayerVocation(cid) > 0 then

doSetCreatureOutfit(cid, outfits[voc_id], -1)

end

end

return true

end

 

function doPlayerAddHpManaSentar(cid, formula)

if not isCreature(cid) then return true end

doCreatureAddHealth(cid, formula.health)

doCreatureAddMana(cid, formula.mana)

hpmana = addEvent(doPlayerAddHpManaSentar, 5000, cid, formula)

end

 

Aqui você configura:

 

[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.  

Editado Abril 12 por PsyMcKenzie

GorennG
12 de abril de 2013 às 22:04

Nossa só traz conteudos legais pro Forum muito bom !!

PsyMcKenzieP
12 de abril de 2013 às 22:25

Obrigado Gorenn, estou tentando fazer 1 por semana.

Tem alguma ideia pro próximo? Que seja no nível básico

ThiagoBjiT
12 de abril de 2013 às 22:33

Gostei muito da criatividade Psy, parabéns!

Logo que vi o título, pensei que era sistema em que o player senta-se (a bundinha, o movimento), só que ai entrei no tópico e vi que não era, mas, era bem mais legal.

 

Achei bem criativo. Gostei da criatividade, que na qual, a cada segundo que o player vai descansando, vai almentando hp e mana, achei bem legal¹²³, show mano!

 

Você já atingiu seu limite de reputações positivas para hoje

GorennG
12 de abril de 2013 às 22:38

1 Que eu sempre quis ver , não sei se existe é o sistema de vampiro , que quando alguem está numa batalha com um vampire tem chance de sofrer mutação.. nessa mutação a pessoa iria se transformando aos poucos em vampiro e dai varias coisas também, é um bem complicado mais será top de +

PsyMcKenzieP
12 de abril de 2013 às 22:39

*----------*

Valew ThiagoBji!

Obrigado pelo seu comentário mano, é de grande incentivo!

Vou procurar evoluir e estar trazendo sempre conteúdos novos para o fórum.

Abraços!

 

@Gorenn

Seria este?

http://www.xtibia.com/forum/topic/210319-perfect-zombie-system-event/

Editado Abril 12 por PsyMcKenzie

ThiagoBjiT
12 de abril de 2013 às 23:00

De nada mano! Se quiser ideias de sistemas é só me pedir que eu á qualquer hora tenho ideias shows, se quiser, tamo ai.

Me adiciona ou aceita lá no MSN, pra nós batermos um papinho sobre ideias de sistemas pra você fazer, pra você treinar, etcs.

 

MSN: Thiago.WIllian2012@hotmail.com

 

Tudo de bom pra você mano, abraços.

GorennG
12 de abril de 2013 às 23:04

Não , na verdade falei em estilo rpg , lutando contra um inimigo vampire você pegar a infecção e virar um vampire com novas magias etc e é claro seria foda também se perdesse vida se estivesse dia !

 

É bem rpgistico estilo skyrim uhauhahua mais se existisse um Projeto Bom de Rpg ficaria muito legal

PsyMcKenzieP
12 de abril de 2013 às 23:09

@Thiago

Vou te add mano :D

To precisando de ideias mesmo pra treinar, obrigado por querer me ajudar.

Abração!

 

@Gorenn

É este aqui: http://www.xtibia.com/forum/topic/198902-vampire-system/