Ir para conteúdo
  • 0

Efeitos..


Pergunta

Opa galera, to montando um ot queria um script que ao entrar no GOD, saia os efeitos 29,30,31 na tela inteira, a cada 3 segundos e em qualquer lugar ( Random Position )

 

Tenho um script que uso aqui apartir do lvl 350+ apareçe uns efeitos, acho que da pra tirar uma base doque é:

 

 

function sendEffect(cid)

if isCreature(cid) then

local pos = getCreaturePosition(cid)

local x = math.random(pos.x-1,pos.x+1)

local y = math.random(pos.y-1,pos.y+1)

doSendMagicEffect({x=x,y=y,z=pos.z}, 4)

doSendMagicEffect({x=x,y=y,z=pos.z}, 34)

addEvent(sendEffect,2000,cid)

end

end

 

function onLogin(cid)

if getPlayerLevel(cid) >= 350 then

sendEffect(cid)

end

registerCreatureEvent(cid, "AdvEffect")

return TRUE

end

 

function onAdvance(cid, skill, oldLevel, newLevel)

if skill == SKILL__LEVEL and newLevel == 350 then

sendEffect(cid)

end

return TRUE

end

Link para o comentário
https://xtibia.com/forum/topic/193224-efeitos/
Compartilhar em outros sites

Posts Recomendados

  • 0

Script inical by: AnneMotta & Vodkart

  Mostrar conteúdo oculto

Editando:

 

-Verde: Numero do efeito.

-Vermelho: Outfit do god

Editado por Newtonnotwen
Link para o comentário
https://xtibia.com/forum/topic/193224-efeitos/#findComment-1329880
Compartilhar em outros sites

  • 0

Newtonnotwen o seu nunca ira funcionar so de vista da pra perceber

Reportado por conteúdo infuncional

 

edite aki leo nao sei se o do jeito que você quer

 

function sendEffect(cid)
if isCreature(cid) then
local pos = getCreaturePosition(cid)
local x = math.random(pos.x-1,pos.x+1)
local y = math.random(pos.y-1,pos.y+1)
doSendMagicEffect({x=x,y=y,z=pos.z}, 29)
doSendMagicEffect({x=x,y=y,z=pos.z}, 30)
doSendMagicEffect({x=x,y=y,z=pos.z}, 31)
addEvent(sendEffect,2000,cid)
end
end
function onLogin(cid)
if getPlayerAccess(cid) == 5 then
sendEffect(cid)
end
registerCreatureEvent(cid, "AdvEffect")
return TRUE
end
function onAdvance(cid, skill, oldLevel, newLevel)
if skill == SKILL__LEVEL and newLevel == 350 then
sendEffect(cid)
end
return TRUE
end

Link para o comentário
https://xtibia.com/forum/topic/193224-efeitos/#findComment-1329883
Compartilhar em outros sites

  • 0

Newtonnotwen, mas esse eh soh nos sqm do lado do player, tentei aumentar os sqms, tipo 8X8 QUADRADO.. Na tela intera...

 

 

SkyLigh, eh isso que eu quero, como aumento o espaço dos efeitos, tentei assim bugo:

 

 

 

local x = math.random(pos.x-1,pos.x+1)

local y = math.random(pos.y-1,pos.y+1)

local x = math.random(pos.x-2,pos.x+2)

local y = math.random(pos.y-2,pos.y+2)

local x = math.random(pos.x-3,pos.x+3)

local y = math.random(pos.y-3,pos.y+3)

doSendMagicEffect({x=x,y=y,z=pos.z}, 29)

doSendMagicEffect({x=x,y=y,z=pos.z}, 30)

doSendMagicEffect({x=x,y=y,z=pos.z}, 31)

Editado por leo420
Link para o comentário
https://xtibia.com/forum/topic/193224-efeitos/#findComment-1329884
Compartilhar em outros sites

  • 0
  Em 01/09/2012 em 23:26, SkyLigh disse:

Newtonnotwen o seu nunca ira funcionar so de vista da pra perceber

Reportado por conteúdo infuncional

 

edite aki leo nao sei se o do jeito que você quer

 

function sendEffect(cid)
if isCreature(cid) then
local pos = getCreaturePosition(cid)
local x = math.random(pos.x-1,pos.x+1)
local y = math.random(pos.y-1,pos.y+1)
doSendMagicEffect({x=x,y=y,z=pos.z}, 29)
doSendMagicEffect({x=x,y=y,z=pos.z}, 30)
doSendMagicEffect({x=x,y=y,z=pos.z}, 31)
addEvent(sendEffect,2000,cid)
end
end
function onLogin(cid)
if getPlayerAccess(cid) == 5 then
sendEffect(cid)
end
registerCreatureEvent(cid, "AdvEffect")
return TRUE
end
function onAdvance(cid, skill, oldLevel, newLevel)
if skill == SKILL__LEVEL and newLevel == 350 then
sendEffect(cid)
end
return TRUE
end

Reportado por me reportar pelo oque não sabe.

 

Não estou brincando.

Link para o comentário
https://xtibia.com/forum/topic/193224-efeitos/#findComment-1329885
Compartilhar em outros sites

  • 0

tente assim

 

function sendEffect(cid)
if isCreature(cid) then
local pos = getCreaturePosition(cid)
local x = math.random(pos.x-1,pos.x+1)
local y = math.random(pos.y-1,pos.y+1)
doSendMagicEffect({x=x,y=y,z=pos.z}, 29)
doSendMagicEffect({x=x,y=y,z=pos.z}, 30)
doSendMagicEffect({x=x,y=y,z=pos.z}, 31)
addEvent(sendEffect,2000,cid)
end
end
function onLogin(cid)
if getPlayerAccess(cid) == 5 then
local arr = {
{ 1, 1, 1, 1, 1, 1. },
{ 1, 0, 0, 0, 0, 1. },
{ 1, 0, 0, 0, 0, 1, },
{ 1, 0, 0, 2, 0, 1, },
{ 1, 0, 0, 0, 0, 1, },
{ 1, 0, 0, 0, 0, 1, },
{ 1, 1, 1, 1, 1, 1, },
}
local area = createCombatArea(arr)
setCombatArea(combat, area)
sendEffect(cid)
end
registerCreatureEvent(cid, "AdvEffect")
return TRUE
end
function onAdvance(cid, skill, oldLevel, newLevel)
if skill == SKILL__LEVEL and newLevel == 350 then
sendEffect(cid)
end
return TRUE
end

Link para o comentário
https://xtibia.com/forum/topic/193224-efeitos/#findComment-1329888
Compartilhar em outros sites

  • 0
  Em 01/09/2012 em 23:33, SkyLigh disse:

tente assim

 

function sendEffect(cid)
if isCreature(cid) then
local pos = getCreaturePosition(cid)
local x = math.random(pos.x-1,pos.x+1)
local y = math.random(pos.y-1,pos.y+1)
doSendMagicEffect({x=x,y=y,z=pos.z}, 29)
doSendMagicEffect({x=x,y=y,z=pos.z}, 30)
doSendMagicEffect({x=x,y=y,z=pos.z}, 31)
addEvent(sendEffect,2000,cid)
end
end
function onLogin(cid)
if getPlayerAccess(cid) == 5 then
local arr = {
{ 1, 1, 1, 1, 1, 1. },
{ 1, 0, 0, 0, 0, 1. },
{ 1, 0, 0, 0, 0, 1, },
{ 1, 0, 0, 2, 0, 1, },
{ 1, 0, 0, 0, 0, 1, },
{ 1, 0, 0, 0, 0, 1, },
{ 1, 1, 1, 1, 1, 1, },
}
local area = createCombatArea(arr)
setCombatArea(combat, area)
sendEffect(cid)
end
registerCreatureEvent(cid, "AdvEffect")
return TRUE
end
function onAdvance(cid, skill, oldLevel, newLevel)
if skill == SKILL__LEVEL and newLevel == 350 then
sendEffect(cid)
end
return TRUE
end

Testei aqui, os efeitos funcinou bem. mas soh nos sqm ao lado do char, queria que soltasse o efeito na tela intera tipo quadrado de 8 SQM X 8 SQM, mas aleatório o lugar dos efeitos..

 

-------- EDIIT

 

Deu certo, alterei esse:

local x = math.random(pos.x-1,pos.x+1)

local y = math.random(pos.y-1,pos.y+1)

 

para esse:

 

 

local x = math.random(pos.x-4,pos.x+4)

local y = math.random(pos.y-4,pos.y+4)

Editado por leo420
Link para o comentário
https://xtibia.com/forum/topic/193224-efeitos/#findComment-1329892
Compartilhar em outros sites

  • 0

Então eu criei essa parte

 

{ 1, 1, 1, 1, 1, 1. },
{ 1, 0, 0, 0, 0, 1. },
{ 1, 0, 0, 0, 0, 1, },
{ 1, 0, 0, 2, 0, 1, },
{ 1, 0, 0, 0, 0, 1, },
{ 1, 0, 0, 0, 0, 1, },
{ 1, 1, 1, 1, 1, 1, },

 

aonde ta o 1 e aonde vai aparecer os efeito e o 2 e o player e 0 e nada

Link para o comentário
https://xtibia.com/forum/topic/193224-efeitos/#findComment-1329893
Compartilhar em outros sites

  • 0

Tenta assim:

 

local area1 = {x=ppos.x+7, y=ppos.y+5, z=ppos.z}

local area2 = {x=ppos.x-7, y=ppos.y-5, z=ppos.z}

 

Ai você põe

 

from area1 to area2.

 

Ai você faz a função e adiciona:

 

addEvent(function, 1, area1, area2, efeito)

Editado por Newtonnotwen
Link para o comentário
https://xtibia.com/forum/topic/193224-efeitos/#findComment-1329902
Compartilhar em outros sites

  • 0

 

  Mostrar conteúdo oculto

 

 

ou usa

 

local pos = getPlayerPosition(cid)
local from = {x = pos.x + 8, y = pos.y + 8, z = pos.z}
local to = {x = pos.x - 8, y = pos.y - 8, z = pos.z}

for x = from.x, to.x do
for y = from.y, to.y do
pos = {x = x, y = y, z = pos.z}
end
end

Editado por Skymagnum
Link para o comentário
https://xtibia.com/forum/topic/193224-efeitos/#findComment-1329916
Compartilhar em outros sites

  • 0

Cara as pessoas fazem muita confusão com um pedido simples... Misturando script onAdvance sendo que não tem nada a ver com o pedido do tópico, o que ele postou é apenas uma base pra exemplificar o que ele quer mais ou menos.

 

Veja se esse agrada:

 

 

  Mostrar conteúdo oculto

 

 

As 6 primeiras linhas são de configurações para que você possa alterar ao seu gosto.

 

Se quiser algo a mais, mensagens saindo do god, tamanho da área ou qualquer outra coisa só pedir.

Qualquer dúvida em relação à configuração só perguntar também.

Editado por brun123
Link para o comentário
https://xtibia.com/forum/topic/193224-efeitos/#findComment-1330194
Compartilhar em outros sites

  • 0
  Em 02/09/2012 em 06:19, brun123 disse:

Cara as pessoas fazem muita confusão com um pedido simples... Misturando script onAdvance sendo que não tem nada a ver com o pedido do tópico, o que ele postou é apenas uma base pra exemplificar o que ele quer mais ou menos.

 

Veja se esse agrada:

 

 

  Mostrar conteúdo oculto

 

 

As 6 primeiras linhas são de configurações para que você possa alterar ao seu gosto.

 

Se quiser algo a mais, mensagens saindo do god, tamanho da área ou qualquer outra coisa só pedir.

Qualquer dúvida em relação à configuração só perguntar também.

 

brun, é isso que eu quero parça, mas da um erro: [Warning - Event::: loadScript ] Event onAdvance not found <data/creaturescripts/scripts/GodEffect.lua>

Link para o comentário
https://xtibia.com/forum/topic/193224-efeitos/#findComment-1330581
Compartilhar em outros sites

  • 0

Isso não é bem um erro, é só um aviso de que o servidor tentou carregar um script do tipo onAdvance e ele não existe.

Você deixou bem claro que era pra ficar jogando efeitos a cada 3 segundos quando GODs fizerem login, mas não especificou nada sobre algo de aumentar o level e jogar efeitos também...

 

É só tirar a tag do tipo advance do seu creaturescripts.xml (provavelmente tem mais de uma, tira aquela que está ligada ao arquivo GodEffect.lua).

Se quiser que algo aconteça quando chegar em X level ou algo do tipo, só explicar direitinho o que você quer.

Link para o comentário
https://xtibia.com/forum/topic/193224-efeitos/#findComment-1330830
Compartilhar em outros sites

  • 0

ah sim, nem tinha me ligado no "Advance" haha, agora tirei deu certinho o script =) coloquei 2 efeitos a cada 1 segundo .. valeu brun e sky +rep..

 

-----------------------------------------------------

 

TÓPICO RESOLVIDO

Link para o comentário
https://xtibia.com/forum/topic/193224-efeitos/#findComment-1330870
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...