BlackTibia

No estás conectado. Conéctate o registrate

 » Open Tibia » Pedido de Scripts » 

Fire Storm Event

Fire Storm Event

#1 Fire Storm Event el Vie Ago 21, 2015 6:05 pm

wasa023


Estudiante
Aqui Estoy Como Dice El Tema Necesito Un Fire Storm Automatico Para allison , que al ganar les de una copa con su name y que le de > 5 puntos < configurable

@[VIP] rafael Lo quiero UN ejemplo El Tp Esta En El Templo Cuando Te Metes , Estaras En otro Lado Y De Hay Pasaras Al Event automaticamen

#2 Re: Fire Storm Event el Sáb Ago 22, 2015 6:30 pm

Vodkart


Scripter
5 pontos? que sistema é esse?

#3 Re: Fire Storm Event el Miér Ago 26, 2015 12:17 pm

wasa023


Estudiante
[Tienes que estar registrado y conectado para ver este vínculo] escribió:5 pontos? que sistema é esse?
Osea Es El Mismo Fire Storm Event Pero Que El Que Gane No Le De Items Que Le De Premium Points Y Una Copa Con El name Del Ganador Que Diga Ejemplo (vodkart Winner Event Fire Storm) Si Puedes Crearmelo Brother Ayudame. los Premium Points Que Sean Configurables A Mi gusto Y Que Sea Automatico.

#4 Re: Fire Storm Event el Miér Ago 26, 2015 11:52 pm

wasa023


Estudiante
[Tienes que estar registrado y conectado para ver este vínculo] escribió:
[Tienes que estar registrado y conectado para ver este vínculo] escribió:5 pontos? que sistema é esse?
Osea Es El Mismo Fire Storm Event Pero Que El Que Gane No Le De Items Que Le De Premium Points Y Una Copa Con El name Del Ganador Que Diga Ejemplo (vodkart Winner Event Fire Storm) Si Puedes Crearmelo Brother Ayudame. los Premium Points Que Sean Configurables A Mi gusto Y Que Sea Automatico.
!bump

#5 Re: Fire Storm Event el Jue Ago 27, 2015 5:58 pm

wasa023


Estudiante
@Bump

#6 Re: Fire Storm Event el Jue Ago 27, 2015 9:33 pm

Vodkart


Scripter
Código:
<?xml version="1.0" encoding="ISO-8859-1"?>
<mod name="Fire Storm Event" version="8.6" author="Vodkart" contact="" enabled="yes">
<config name="fire_config"><![CDATA[
Fire = {
   storages = {172200}, -- n edite
   players = {min = 2, max = 50}, -- min, max players no evento
   Reward_Points = 10, -- premium points from player winner
   timeToStartEvent = 30, -- segundos para começar o evento
   CheckTime = 5, -- tempo que o TP fica aberto para os jogadores adrentarem o evento
   teleport = {{x=158, y=53, z=7}, {x=189 , y=58, z=7}}, -- posição do teleport, posição para onde o jogador vai
   arena = {{x=186,y=54,z=7},{x=193,y=60,z=7}} -- posição começo e final da area
}
Fire_Days = {
   ["Monday"] = {"13:00","18:00","20:00","22:00"},
   ["Tuesday"] = {"13:00","18:00","20:00","22:00"},
   ["Wednesday"] = {"13:00","18:00","20:00","22:00"},
   ["Thursday"] = {"13:00","18:00","20:00","22:00"},
   ["Friday"] = {"13:00","18:00","21:45","22:00"},
   ["Saturday"] = {"13:00","18:00","20:00","22:00"},
   ["Sunday"] = {"13:00","18:00","20:00","22:00"}
}
function removeFireTp()
   local t = getTileItemById(Fire.teleport[1], 1387).uid
   return t > 0 and doRemoveItem(t) and doSendMagicEffect(Fire.teleport[1], CONST_ME_POFF)
end
function getPlayersInFireEvent()
   local t = {}
   for _, pid in pairs(getPlayersOnline()) do
      if isInRange(getPlayerPosition(pid), Fire.arena[1], Fire.arena[2]) then
         t[#t+1] = pid
      end
   end
   return t
end
function doFireInArea()
   repeat
      local pos = {x=math.random(Fire.arena[1].x, Fire.arena[2].x), y=math.random(Fire.arena[1].y,Fire.arena[2].y), z=Fire.arena[1].z}
      local m = getTopCreature(pos).uid
      doSendDistanceShoot({x = pos.x - math.random(4, 6), y = pos.y - 5, z = pos.z}, pos, CONST_ANI_FIRE)
      addEvent(doSendMagicEffect, 150, pos, CONST_ME_HITBYFIRE)
      addEvent(doSendMagicEffect, 150, pos, CONST_ME_FIREAREA)
      if m ~= 0 and isPlayer(m) then
         doCreatureSay(m, "Burn Burn", TALKTYPE_ORANGE_1)
         doCreatureAddMana(m, getCreatureMana(m) ~= 0 and -getCreatureMana(m) or 0)
         doPlayerSendTextMessage(m, MESSAGE_EVENT_ADVANCE, "[Fire Storm Event] você foi atingindo e morreu queimado.")
         doTeleportThing(m, getTownTemplePosition(getPlayerTown(m)))
      end
      if #getPlayersInFireEvent() == 1 then
         local cid = getPlayersInFireEvent()[1]
         doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
         db.executeQuery('UPDATE accounts SET premium_points=premium_points+' .. Reward_Points ..' WHERE id='.. getPlayerAccountId(cid))
         doBroadcastMessage("Fire Storm Event Finalizado. O jogador vencedor é ".. getCreatureName(cid).. ". Parabens.", MESSAGE_EVENT_ADVANCE)
      else
         doBroadcastMessage("Ninguém sobreviveu ao Fire Storm Event.", MESSAGE_EVENT_ADVANCE)
      end
   until #getPlayersInFireEvent() == 0
end
function CheckFireEvent(delay)
   if getGlobalStorageValue(Fire.storages[1]) ~= (Fire.players.max+1) then
      if delay > 0 and getGlobalStorageValue(Fire.storages[1]) < Fire.players.max then
         doBroadcastMessage("[Fire Storm Event] Venha partipar do evento entrando no teleport!")
      elseif delay == 0 and getGlobalStorageValue(Fire.storages[1]) < Fire.players.min then
         for _, cid in pairs(getPlayersInFireEvent()) do
            doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
         end
         removeFireTp()
         doBroadcastMessage("Fire Storm Event Foi finalizado por falta de jogadores.")
         setGlobalStorageValue(Fire.storages[1], 0)
      elseif delay == 0 and getGlobalStorageValue(Fire.storages[1]) >= Fire.players.min then
         removeFireTp()
         doBroadcastMessage("Fire Storm Event vai começar em "..Fire.timeToStartEvent.." segundos. Tome Cuidado!")
         addEvent(doFireInArea, Fire.timeToStartEvent*1000)
      end
      addEvent(CheckFireEvent, 60000, delay-1)
   end
end
]]></config>
<globalevent name="Storm_Fire_Start" interval="60" event="script"><![CDATA[
domodlib('fire_config')
function onThink(interval, lastExecution)
   if Fire_Days[os.date("%A")] then
      local hrs = tostring(os.date("%X")):sub(1, 5)
      if isInArray(Fire_Days[os.date("%A")], hrs) then
         local tp = doCreateItem(1387, 1, Fire.teleport[1])
         doItemSetAttribute(tp, "aid", 45100)
         CheckFireEvent(Fire.CheckTime)
         setGlobalStorageValue(Fire.storages[1], 0)
      end
   end
   return true
end]]></globalevent>
<event type="login" name="Storm_Fire_Login" event="script"><![CDATA[
domodlib('fire_config')
function onLogin(cid)
   registerCreatureEvent(cid, "FireStormBatle")
   if isInRange(getPlayerPosition(cid), Fire.arena[1], Fire.arena[2]) then
      doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
   end
   return true
end]]></event>
<event type="combat" name="FireStormBatle" event="script"><![CDATA[
domodlib('fire_config')
if isPlayer(cid) and isPlayer(target) and isInRange(getPlayerPosition(cid), Fire.arena[1], Fire.arena[2]) then
   doPlayerSendCancel(cid, "You may not attack this player.")
   return false
end
return true
]]></event>
<movevent type="StepIn" actionid ="45100" event="script"><![CDATA[
domodlib('fire_config')
function onStepIn(cid, item, position, fromPosition)
   if not isPlayer(cid) then return true end
   if getPlayerAccess(cid) > 3 then return doTeleportThing(cid, Fire.teleport[2]) end
   if getGlobalStorageValue(Fire.storages[1]) <= Fire.players.max then
      doTeleportThing(cid, Fire.teleport[2])
      setGlobalStorageValue(Fire.storages[1], getGlobalStorageValue(Fire.storages[1])+1)
      if getGlobalStorageValue(Fire.storages[1]) == Fire.players.max then
         setGlobalStorageValue(Fire.storages[1], getGlobalStorageValue(Fire.storages[1])+1)
         removeFireTp()
         doBroadcastMessage("Fire Storm Event vai começar em "..Fire.timeToStartEvent.." segundos. Tome Cuidado!")
         addEvent(doFireInArea, Fire.timeToStartEvent*1000)
      end
   end
   return true
end]]></movevent>
</mod>

#7 Re: Fire Storm Event el Vie Ago 28, 2015 6:48 pm

wasa023


Estudiante
@Up Broth HAy Fire_Days = {
["Monday"] = {"13:00","18:00","20:00","22:00"},
["Tuesday"] = {"13:00","18:00","20:00","22:00"},
["Wednesday"] = {"13:00","18:00","20:00","22:00"},
["Thursday"] = {"13:00","18:00","20:00","22:00"},
["Friday"] = {"13:00","18:00","21:45","22:00"},
["Saturday"] = {"13:00","18:00","20:00","22:00"},
["Sunday"] = {"13:00","18:00","20:00","22:00"}
}

si Yo Nadamas Lo Quiero 1 o 2 veces al dia solo pongo las horas y borro osea hay 4 , ejemplo hay estara el evento 4 veces al dia y yo los quiero o 1 ves o 2 vecess solo borro 2 horas ejemplo que quede haci ["Sunday"] = {"13:00","18:00"}
}

solo le borro las 2 y ya esta?

Gracias

#8 Re: Fire Storm Event el Vie Ago 28, 2015 6:50 pm

wasa023


Estudiante
[Tienes que estar registrado y conectado para ver este vínculo] escribió:
Código:
<?xml version="1.0" encoding="ISO-8859-1"?>
<mod name="Fire Storm Event" version="8.6" author="Vodkart" contact="" enabled="yes">
<config name="fire_config"><![CDATA[
Fire = {
   storages = {172200}, -- n edite
   players = {min = 2, max = 50}, -- min, max players no evento
   Reward_Points = 10, -- premium points from player winner
   timeToStartEvent = 30, -- segundos para começar o evento
   CheckTime = 5, -- tempo que o TP fica aberto para os jogadores adrentarem o evento
   teleport = {{x=158, y=53, z=7}, {x=189 , y=58, z=7}}, -- posição do teleport, posição para onde o jogador vai
   arena = {{x=186,y=54,z=7},{x=193,y=60,z=7}} -- posição começo e final da area
}
Fire_Days = {
   ["Monday"] = {"13:00","18:00","20:00","22:00"},
   ["Tuesday"] = {"13:00","18:00","20:00","22:00"},
   ["Wednesday"] = {"13:00","18:00","20:00","22:00"},
   ["Thursday"] = {"13:00","18:00","20:00","22:00"},
   ["Friday"] = {"13:00","18:00","21:45","22:00"},
   ["Saturday"] = {"13:00","18:00","20:00","22:00"},
   ["Sunday"] = {"13:00","18:00","20:00","22:00"}
}
function removeFireTp()
   local t = getTileItemById(Fire.teleport[1], 1387).uid
   return t > 0 and doRemoveItem(t) and doSendMagicEffect(Fire.teleport[1], CONST_ME_POFF)
end
function getPlayersInFireEvent()
   local t = {}
   for _, pid in pairs(getPlayersOnline()) do
      if isInRange(getPlayerPosition(pid), Fire.arena[1], Fire.arena[2]) then
         t[#t+1] = pid
      end
   end
   return t
end
function doFireInArea()
   repeat
      local pos = {x=math.random(Fire.arena[1].x, Fire.arena[2].x), y=math.random(Fire.arena[1].y,Fire.arena[2].y), z=Fire.arena[1].z}
      local m = getTopCreature(pos).uid
      doSendDistanceShoot({x = pos.x - math.random(4, 6), y = pos.y - 5, z = pos.z}, pos, CONST_ANI_FIRE)
      addEvent(doSendMagicEffect, 150, pos, CONST_ME_HITBYFIRE)
      addEvent(doSendMagicEffect, 150, pos, CONST_ME_FIREAREA)
      if m ~= 0 and isPlayer(m) then
         doCreatureSay(m, "Burn Burn", TALKTYPE_ORANGE_1)
         doCreatureAddMana(m, getCreatureMana(m) ~= 0 and -getCreatureMana(m) or 0)
         doPlayerSendTextMessage(m, MESSAGE_EVENT_ADVANCE, "[Fire Storm Event] você foi atingindo e morreu queimado.")
         doTeleportThing(m, getTownTemplePosition(getPlayerTown(m)))
      end
      if #getPlayersInFireEvent() == 1 then
         local cid = getPlayersInFireEvent()[1]
         doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
         db.executeQuery('UPDATE accounts SET premium_points=premium_points+' .. Reward_Points ..' WHERE id='.. getPlayerAccountId(cid))
         doBroadcastMessage("Fire Storm Event Finalizado. O jogador vencedor é ".. getCreatureName(cid).. ". Parabens.", MESSAGE_EVENT_ADVANCE)
      else
         doBroadcastMessage("Ninguém sobreviveu ao Fire Storm Event.", MESSAGE_EVENT_ADVANCE)
      end
   until #getPlayersInFireEvent() == 0
end
function CheckFireEvent(delay)
   if getGlobalStorageValue(Fire.storages[1]) ~= (Fire.players.max+1) then
      if delay > 0 and getGlobalStorageValue(Fire.storages[1]) < Fire.players.max then
         doBroadcastMessage("[Fire Storm Event] Venha partipar do evento entrando no teleport!")
      elseif delay == 0 and getGlobalStorageValue(Fire.storages[1]) < Fire.players.min then
         for _, cid in pairs(getPlayersInFireEvent()) do
            doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
         end
         removeFireTp()
         doBroadcastMessage("Fire Storm Event Foi finalizado por falta de jogadores.")
         setGlobalStorageValue(Fire.storages[1], 0)
      elseif delay == 0 and getGlobalStorageValue(Fire.storages[1]) >= Fire.players.min then
         removeFireTp()
         doBroadcastMessage("Fire Storm Event vai começar em "..Fire.timeToStartEvent.." segundos. Tome Cuidado!")
         addEvent(doFireInArea, Fire.timeToStartEvent*1000)
      end
      addEvent(CheckFireEvent, 60000, delay-1)
   end
end
]]></config>
<globalevent name="Storm_Fire_Start" interval="60" event="script"><![CDATA[
domodlib('fire_config')
function onThink(interval, lastExecution)
   if Fire_Days[os.date("%A")] then
      local hrs = tostring(os.date("%X")):sub(1, 5)
      if isInArray(Fire_Days[os.date("%A")], hrs) then
         local tp = doCreateItem(1387, 1, Fire.teleport[1])
         doItemSetAttribute(tp, "aid", 45100)
         CheckFireEvent(Fire.CheckTime)
         setGlobalStorageValue(Fire.storages[1], 0)
      end
   end
   return true
end]]></globalevent>
<event type="login" name="Storm_Fire_Login" event="script"><![CDATA[
domodlib('fire_config')
function onLogin(cid)
   registerCreatureEvent(cid, "FireStormBatle")
   if isInRange(getPlayerPosition(cid), Fire.arena[1], Fire.arena[2]) then
      doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
   end
   return true
end]]></event>
<event type="combat" name="FireStormBatle" event="script"><![CDATA[
domodlib('fire_config')
if isPlayer(cid) and isPlayer(target) and isInRange(getPlayerPosition(cid), Fire.arena[1], Fire.arena[2]) then
   doPlayerSendCancel(cid, "You may not attack this player.")
   return false
end
return true
]]></event>
<movevent type="StepIn" actionid ="45100" event="script"><![CDATA[
domodlib('fire_config')
function onStepIn(cid, item, position, fromPosition)
   if not isPlayer(cid) then return true end
   if getPlayerAccess(cid) > 3 then return doTeleportThing(cid, Fire.teleport[2]) end
   if getGlobalStorageValue(Fire.storages[1]) <= Fire.players.max then
      doTeleportThing(cid, Fire.teleport[2])
      setGlobalStorageValue(Fire.storages[1], getGlobalStorageValue(Fire.storages[1])+1)
      if getGlobalStorageValue(Fire.storages[1]) == Fire.players.max then
         setGlobalStorageValue(Fire.storages[1], getGlobalStorageValue(Fire.storages[1])+1)
         removeFireTp()
         doBroadcastMessage("Fire Storm Event vai começar em "..Fire.timeToStartEvent.." segundos. Tome Cuidado!")
         addEvent(doFireInArea, Fire.timeToStartEvent*1000)
      end
   end
   return true
end]]></movevent>
</mod>
Y Donde Va Colocado En Movements , Etc Donde Broth

#9 Re: Fire Storm Event el Sáb Ago 29, 2015 2:17 am

wasa023


Estudiante
[Tienes que estar registrado y conectado para ver este vínculo] @Bump

#10 Re: Fire Storm Event el Sáb Ago 29, 2015 12:19 pm

Mystera


Novato
[Tienes que estar registrado y conectado para ver este vínculo]
Es un Mod, va en la carpeta mods, claro si tienes un servidor el cual maneje los "mods".

En dado caso que no la tengas, lo tendrás que separar, xml y lua, y hacerlo de manera normal.

#11 Re: Fire Storm Event el Sáb Ago 29, 2015 12:39 pm

wasa023


Estudiante
[Tienes que estar registrado y conectado para ver este vínculo] escribió:[Tienes que estar registrado y conectado para ver este vínculo]
Es un Mod, va en la carpeta mods, claro si tienes un servidor el cual maneje los "mods".

En dado caso que no la tengas, lo tendrás que separar, xml y lua, y hacerlo de manera normal.
Tiene Mod Solo Creo Un Xml Con El Name De Fire Storm Event Y Lo Pego Y Ya?

#12 Re: Fire Storm Event el Dom Ago 30, 2015 6:11 pm

Vodkart


Scripter
O evento é automatico, não precisa colocar NADA em movements, pq o Movements ali é para limitar a quantidade de player.

só altere aqui:

Código:
Fire = {
  storages = {172200}, -- n edite
  players = {min = 2, max = 50}, -- min, max players no evento
  Reward_Points = 10, -- premium points from player winner
  timeToStartEvent = 30, -- segundos para começar o evento
  CheckTime = 5, -- tempo que o TP fica aberto para os jogadores adrentarem o evento
  teleport = {{x=158, y=53, z=7}, {x=189 , y=58, z=7}}, -- posição do teleport, posição para onde o jogador vai
  arena = {{x=186,y=54,z=7},{x=193,y=60,z=7}} -- posição começo e final da area
}
Fire_Days = {
  ["Monday"] = {"13:00","18:00","20:00","22:00"},
  ["Tuesday"] = {"13:00","18:00","20:00","22:00"},
  ["Wednesday"] = {"13:00","18:00","20:00","22:00"},
  ["Thursday"] = {"13:00","18:00","20:00","22:00"},
  ["Friday"] = {"13:00","18:00","21:45","22:00"},
  ["Saturday"] = {"13:00","18:00","20:00","22:00"},
  ["Sunday"] = {"13:00","18:00","20:00","22:00"}
}

#13 Re: Fire Storm Event el Dom Ago 30, 2015 7:06 pm

Mystera


Novato
[Tienes que estar registrado y conectado para ver este vínculo] asi es , y lo editas.. lo que te dijo Vodkart ^

#14 Re: Fire Storm Event el Dom Ago 30, 2015 7:22 pm

wasa023


Estudiante
[Tienes que estar registrado y conectado para ver este vínculo] escribió:O evento é automatico, não precisa colocar NADA em movements, pq o Movements ali é para limitar a quantidade de player.

só altere aqui:

Código:
Fire = {
  storages = {172200}, -- n edite
  players = {min = 2, max = 50}, -- min, max players no evento
  Reward_Points = 10, -- premium points from player winner
  timeToStartEvent = 30, -- segundos para começar o evento
  CheckTime = 5, -- tempo que o TP fica aberto para os jogadores adrentarem o evento
  teleport = {{x=158, y=53, z=7}, {x=189 , y=58, z=7}}, -- posição do teleport, posição para onde o jogador vai
  arena = {{x=186,y=54,z=7},{x=193,y=60,z=7}} -- posição começo e final da area
}
Fire_Days = {
  ["Monday"] = {"13:00","18:00","20:00","22:00"},
  ["Tuesday"] = {"13:00","18:00","20:00","22:00"},
  ["Wednesday"] = {"13:00","18:00","20:00","22:00"},
  ["Thursday"] = {"13:00","18:00","20:00","22:00"},
  ["Friday"] = {"13:00","18:00","21:45","22:00"},
  ["Saturday"] = {"13:00","18:00","20:00","22:00"},
  ["Sunday"] = {"13:00","18:00","20:00","22:00"}
}

Gracias Pueden Cerrar El Tema Yaa, [Tienes que estar registrado y conectado para ver este vínculo] Ayudame Con El Mensaje k te envie

#15 Re: Fire Storm Event Hoy a las 1:39 pm

Contenido patrocinado


Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

Permisos de este foro:
No puedes responder a temas en este foro.

 

¿Quién está en línea?

En total hay 0 usuarios en línea: 0 Registrados, 0 Ocultos y 0 Invitado

Usuarios navegando en este foro: Ninguno

Forum Statistics

Nuestros miembros han públicado un total de posts en temas.
Actualmente hay miembros registrados.
Démosle la bienvenida al miembro más reciente,
La mayor cantidad de usuarios en línea ha sido de .