Ir para conteúdo

Sleeping V2


xS0NYx

Posts Recomendados

---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 o.O , ficou aparecendo vários códigos D: , algum moderador vê isso aí por favor D:, agora eu tirei as cores

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

  • 2 weeks later...
×
×
  • Criar Novo...