---Criador : S0NY
---Versão Testada: 8.54(Tfs 0.3.6)
---Créditos:
S0NY 90% IuniX 10%(por ter me ajudado a usar o for com tempo.)
---Utilidade do Script: O script consiste em você dar use na cama configurada, depois que você der use seu player vai ser teleportado para cima da cama e mudará seu oufit, 25 segundos depois você acordará e nesse periodo você não pode se mecher durante esses 25 segundos ele falará 4 vezes "ZzZ" e aparecerá o efeito "ZzZ", quando acordar irá ficar com hp e mana full, agora diferente da V1, depois que você acorda , você ficará 20 segundos mais lento pois acabou de acordar.
Vamos lá, primeiro vá em actions/scripts dentro da pasta do seu server, depois crie uma pasta chamada "others" sem as aspas óbvio, lá dentro crie um arquivo dormircama.lua e coloque isso dentro :
---BY S0NY---
function onUse(cid, item, frompos, item2, topos)
local sex = getPlayerSex(cid)
local mana = getPlayerMaxMana(cid)
local life = getCreatureMaxHealth(cid)
local tempo = 5000
local velo = getCreatureSpeed(cid)
p = {cid=cid, topos=topos, player=player, mana=mana, life=life, velo=velo}
if sex == 1 then doSetItemOutfit(cid, 6080, 25000)
end
if sex == 0 then doSetItemOutfit(cid, 6081, 25000)
end
doTeleportThing(cid, topos)
doSendAnimatedText(topos, "Dormindo!", 17)
local player = getPlayerPosition(cid)
function sono1(parameters)
doChangeSpeed(cid, -(velo/2+50))
doCreatureSetNoMove(cid, 1)
end
function sono2(parameters)
doSendMagicEffect(player, 32)
doPlayerSay(cid, "ZzZ...", 2)
return true
end
for i = 1,4 do
addEvent(sono2,tempo*i,cid,player)
end
function sono3(parameters)
doSendAnimatedText(topos, "Acordou!", 71)
doPlayerSendTextMessage(cid,2,"Você acabou de acordar, por isso ficará lento durante um tempo.")
doSendMagicEffect(player, 30)
doCreatureAddHealth(cid, life)
doCreatureAddMana(cid, mana)
doCreatureSetNoMove(cid, 0)
end
function sono4(parameters)
doChangeSpeed(cid, (velo/2+50))
end
addEvent(sono1,10,p)
addEvent(sono3,25000,p)
addEvent(sono4,45000,p)
end
Configurando o script:
local tempo = 5000:Aqui é o tempo como a própria variável diz, configure aqui o tempo das pausas de quando ele falar "ZzZ".
if sex == 1 then doSetItemOutfit(cid, 6080, 25000):Aqui no primeiro if, é se o "player" for homem, mudará a oufit dele pra de um corpo de homem deitado, durante 25 segundos, de preferência não mudem isso.No segundo se o "player" for mulher mudará pro oufit deitado de mulher.
doChangeSpeed(cid, (velo/2+50)): Aqui se configura a velocidade dele depois que ele acordar, pois quando ele acorda ele fica mais lento, é a velocidade do player dividida por 2 + 50, mas pode mudar isso se mudar em um tem que mudar no otro também.
doSendMagicEffect(player, 32): Aqui é o efeito que aparecerá quando o player falar "ZzZ" pode mudar, só mudar o numero depois da virgula, para ver os efeitos só usar o comando /z de 1 ao 68 com o char god.
doPlayerSay(cid, "ZzZ...", 2): Aqui é a mensagem que ele falará 4 vezes enquanto dorme, está configurada para falar 4 vezes "ZzZ" vai falar de quanto em quanto tempo configurado la em cima na local tempo e quantas vezes você configurar no "for" mas só mude até 4, ou se for colocar por mais tempo mude no for e terá que mudar a duração toda do script, porque senão o player vai ficar falando "ZzZ" fora da cama...
for i = 1,4 do: Aqui é uma parte que para iniciantes é dificil de editar ( obs eu sou iniciante e acho dificil ), então mude apenas o 1,4 isso é que a sequencia começa de 1 até o 4, ou seja executando essa função 4 vezes, se mudar aqui o numero de vezes que a pessoa falar "ZzZ" por exemplo 1,5 mude o tempo também do AddEvent porque se não vai dar bug.
doPlayerSendTextMessage(cid,2,"Você acabou de acordar, por isso ficará lento durante um tempo."): Aqui é a mensagem que aparecerá pra dizer que o player ficará lento porque acordou, mude apenas o que está entre aspas como quiser.
doCreatureAddHealth(cid, life),doCreatureAddMana(cid, mana): Aqui é a parte onde você acorda e cura todo seu hp e mp, mas vocês podem mudar é só tirar as letras ali e botar quanto vocês quiserem, botei isso pra quando o player acordar ficar com mana e life full mas se quiser pode mudar.
addEvent(sono4,45000,p): Ali é o tempo do script, em milissegundos ou seja, 25000 igual a 25 segundos, aí configure como quiser, terá que mudar no resto pra ficar compativel, se não as coisas vão ficar fora do tempo.
Tag: Vá na sua pasta actions, abra o arquivo actions.xml em bloco de notas e adicione a seguinte tag:
<action itemid="1754-1755;1758-1759;7819-7820;7815-7816;5502-5503;7817-7818;1760-1761;7821-7822;1756-1757;5500-5501" event="script" value="others/dormircama.lua" allowfaruse="1"/>
Lembrando que para adicionar novas camas tem que adicionar os 4 ids, os 2 dela pra cima e os 2 dela pro lado.
Changelog:
-Usando for para diminuir o script
-Modificado o 9999 de life e mana para o life todo e mana toda.
-Agora mudando a velocidade
Mudanças a serem feitas:
-Não poder deslogar enquanto dorme.
-Não poder falar enquanto dorme.
Video para demonstração:
Aff, eu quis fazer um tópico com cor, mas bugou tudo , ficou aparecendo vários códigos , algum moderador vê isso aí por favor , agora eu tirei as cores