Por
Absolute
Olá TKzianos de plantão rs!
Trago hoje um evento criado pelo mestre Collor e modificado por mim! É o evento RAIN ITEMS! O Nome já diz tudo, nada melhor para os players do que chover items não é? rs.
Como funciona?
Em dias marcados irá ocorrer uma chuva de determinados items (configuráveis).
Os Items irão cair em X posições que você irá configurar no sistema.
Os players terão de ser ágeis para coletar o item em sua backpack.
Vamos ao que interessa!
Em data/mods crie um arquivo com o nome de w-rainItems.xml e dentro coloque o seguinte conteúdo:
<?xml version="1.0" encoding="UTF-8"?>
<mod name="Rain Item" version="1.0.0" author="Collor/Abs" contact="lu.lukinha" enabled="yes">
<config name="config_rain_item">
<![CDATA[
configRainItem = {
days = {
['Monday'] = {'11:00:20', '19:00:20'},
['Tuesday'] = {'11:00:20', '19:00:20'},
['Wednesday'] = {'11:00:20', '19:00:20'},
['Thursday'] = {'11:00:20', '19:00:20'},
['Friday'] = {'11:00:10', '19:00:20'},
['Saturday'] = {'11:00:00', '19:00:20'},
['Sunday'] = {'11:00:20', '19:00:30'}
},
items = {
2644, -- king
9778, -- yalaha mask
8865, -- dark lords cape
8890, -- robe of the underworld
3983, -- bast skirt
9933, -- firewalker boots
7735, -- star wand
2640, -- softy
9693, -- addon
8306, -- remover
2506, -- dragon scale helmet
8888, -- master archers armor
9777, -- yalahari leg piece
8850, -- chain bolter
6433, -- necromancer shield
8903, -- spellbook of lost souls
2496, -- horned helmet
9776, -- yalahari armor
2469, -- dragon scale legs
6391, -- nightmare shield
8925, -- solar
7422, -- jade hammer
2390, -- mls
7722, -- stamina
8300, -- upgrade
8266, -- koshei
2346 -- 100pkt
},
positions = {
{x=997, y=981, z=7},
{x=998, y=981, z=7},
{x=999, y=981, z=7},
{x=1000, y=981, z=7},
{x=1001, y=981, z=7},
{x=1002, y=981, z=7},
{x=997, y=982, z=7},
{x=998, y=982, z=7},
{x=999, y=982, z=7},
{x=1000, y=982, z=7},
{x=1001, y=982, z=7},
{x=1002, y=982, z=7},
{x=997, y=983, z=7},
{x=998, y=983, z=7},
{x=999, y=983, z=7},
{x=1000, y=983, z=7},
{x=1001, y=983, z=7},
{x=997, y=984, z=7},
{x=999, y=984, z=7},
{x=1000, y=984, z=7},
{x=1001, y=984, z=7},
{x=1002, y=984, z=7},
{x=994, y=985, z=7},
{x=995, y=985, z=7},
{x=996, y=985, z=7},
{x=997, y=985, z=7},
{x=998, y=985, z=7},
{x=999, y=985, z=7},
{x=1000, y=985, z=7},
{x=1001, y=985, z=7},
{x=1002, y=985, z=7},
{x=1003, y=985, z=7},
{x=1004, y=985, z=7},
{x=1005, y=985, z=7},
{x=1006, y=985, z=7},
{x=994, y=986, z=7},
{x=995, y=986, z=7},
{x=996, y=986, z=7},
{x=997, y=986, z=7},
{x=998, y=986, z=7},
{x=999, y=986, z=7},
{x=1000, y=986, z=7},
{x=1001, y=986, z=7},
{x=1002, y=986, z=7},
{x=1003, y=986, z=7},
{x=1004, y=986, z=7},
{x=1005, y=986, z=7},
{x=1006, y=986, z=7},
{x=996, y=987, z=7},
{x=996, y=988, z=7},
{x=996, y=989, z=7},
{x=996, y=990, z=7},
{x=996, y=991, z=7},
{x=996, y=992, z=7},
{x=996, y=993, z=7},
{x=1003, y=987, z=7},
{x=1003, y=988, z=7},
{x=1003, y=989, z=7},
{x=1003, y=990, z=7},
{x=1003, y=991, z=7},
{x=1003, y=992, z=7},
{x=1003, y=993, z=7},
{x=996, y=994, z=7},
{x=997, y=994, z=7},
{x=998, y=994, z=7},
{x=1001, y=994, z=7},
{x=1002, y=994, z=7},
{x=1003, y=994, z=7},
{x=996, y=995, z=7},
{x=997, y=995, z=7},
{x=998, y=995, z=7},
{x=999, y=995, z=7},
{x=1000, y=995, z=7},
{x=1001, y=995, z=7},
{x=1002, y=995, z=7},
{x=1003, y=995, z=7},
{x=996, y=996, z=7},
{x=997, y=996, z=7},
{x=998, y=996, z=7},
{x=1001, y=996, z=7},
{x=1002, y=996, z=7},
{x=1003, y=996, z=7},
{x=996, y=997, z=7},
{x=997, y=997, z=7},
{x=998, y=997, z=7},
{x=999, y=997, z=7},
{x=1000, y=997, z=7},
{x=1001, y=997, z=7},
{x=1002, y=997, z=7},
{x=1003, y=997, z=7},
{x=996, y=998, z=7},
{x=997, y=998, z=7},
{x=998, y=998, z=7},
{x=999, y=998, z=7},
{x=1001, y=998, z=7},
{x=1002, y=998, z=7},
{x=1003, y=998, z=7},
{x=996, y=999, z=7},
{x=998, y=999, z=7},
{x=999, y=999, z=7},
{x=1001, y=999, z=7},
{x=1002, y=999, z=7},
{x=1003, y=999, z=7},
{x=996, y=1000, z=7},
{x=997, y=1000, z=7},
{x=998, y=1000, z=7},
{x=999, y=1000, z=7},
{x=1001, y=1000, z=7},
{x=1002, y=1000, z=7},
{x=1003, y=1000, z=7},
{x=996, y=1001, z=7},
{x=997, y=1001, z=7},
{x=998, y=1001, z=7},
{x=999, y=1001, z=7},
{x=1000, y=1001, z=7},
{x=1001, y=1001, z=7},
{x=1002, y=1001, z=7},
{x=1003, y=1001, z=7},
{x=996, y=1002, z=7},
{x=997, y=1002, z=7},
{x=998, y=1002, z=7},
{x=999, y=1002, z=7},
{x=1000, y=1002, z=7},
{x=1001, y=1002, z=7},
{x=1002, y=1002, z=7},
{x=1003, y=1002, z=7},
{x=998, y=1003, z=7},
{x=999, y=1003, z=7},
{x=1000, y=1003, z=7},
{x=1001, y=1003, z=7},
{x=1002, y=1003, z=7},
{x=1003, y=1003, z=7},
{x=990, y=998, z=7},
{x=991, y=998, z=7},
{x=991, y=999, z=7},
{x=992, y=999, z=7},
{x=991, y=1000, z=7},
{x=992, y=1000, z=7},
{x=993, y=1000, z=7},
{x=994, y=1000, z=7},
{x=995, y=1000, z=7},
{x=982, y=1001, z=7},
{x=983, y=1001, z=7},
{x=984, y=1001, z=7},
{x=985, y=1001, z=7},
{x=986, y=1001, z=7},
{x=987, y=1001, z=7},
{x=988, y=1001, z=7},
{x=989, y=1001, z=7},
{x=990, y=1001, z=7},
{x=991, y=1001, z=7},
{x=992, y=1001, z=7},
{x=993, y=1001, z=7},
{x=994, y=1001, z=7},
{x=995, y=1001, z=7},
{x=983, y=1002, z=7},
{x=984, y=1002, z=7},
{x=988, y=1002, z=7},
{x=989, y=1002, z=7},
{x=990, y=1002, z=7},
{x=991, y=1002, z=7},
{x=992, y=1002, z=7},
{x=993, y=1002, z=7},
{x=994, y=1002, z=7},
{x=995, y=1002, z=7},
{x=984, y=1003, z=7},
{x=985, y=1003, z=7},
{x=986, y=1003, z=7},
{x=987, y=1003, z=7},
{x=988, y=1003, z=7},
{x=989, y=1003, z=7},
{x=990, y=1003, z=7},
{x=991, y=1003, z=7},
{x=992, y=1003, z=7},
{x=993, y=1003, z=7},
{x=984, y=1004, z=7},
{x=985, y=1004, z=7},
{x=986, y=1004, z=7},
{x=987, y=1004, z=7},
{x=988, y=1004, z=7},
{x=984, y=1005, z=7},
{x=985, y=1005, z=7},
{x=986, y=1005, z=7},
{x=987, y=1005, z=7},
{x=988, y=1005, z=7},
{x=983, y=1006, z=7},
{x=984, y=1006, z=7},
{x=985, y=1006, z=7},
{x=986, y=1006, z=7},
{x=987, y=1006, z=7},
{x=988, y=1006, z=7},
{x=980, y=1007, z=7},
{x=981, y=1007, z=7},
{x=982, y=1007, z=7},
{x=983, y=1007, z=7},
{x=984, y=1007, z=7},
{x=985, y=1007, z=7},
{x=986, y=1007, z=7},
{x=987, y=1007, z=7},
{x=988, y=1007, z=7},
{x=980, y=1008, z=7},
{x=981, y=1008, z=7},
{x=982, y=1008, z=7},
{x=983, y=1008, z=7},
{x=980, y=1009, z=7},
{x=981, y=1009, z=7},
{x=982, y=1009, z=7},
{x=983, y=1009, z=7},
{x=1004, y=998, z=7},
{x=1005, y=998, z=7},
{x=1006, y=998, z=7},
{x=1006, y=999, z=7},
{x=1002, y=993, z=7},
{x=1002, y=987, z=7},
{x=1002, y=988, z=7},
{x=996, y=984, z=7}
},
delayTime = 1, -- pomiedzy broadcastem a zrzuceniem itemu
amountOfPos = 20,
storage = 51836 -- set free storage
}
]]>
</config>
<lib name="lib_rain_item">
<![CDATA[
domodlib("config_rain_item")
function throwItem()
local i, itemPos = 1, {}
repeat
local pos = configRainItem.positions[math.random(#configRainItem.positions)]
if isInArray(itemPos, pos) then
pos = configRainItem.positions[math.random(#configRainItem.positions)]
else
itemPos[i] = pos
i = i + 1
end
until i == configRainItem.amountOfPos
for _, pos in pairs(itemPos) do
doSendDistanceShoot({x = pos.x - math.random(4, 6), y = pos.y - 5, z = pos.z}, pos, CONST_ANI_FIRE)
for __, effect in pairs({34, 55, 56}) do
doSendMagicEffect(pos, effect)
end
addEvent(doCreateItem, 100, configRainItem.items[math.random(#configRainItem.items)], 1, pos)
doSetStorage(configRainItem.storage, -1)
end
end
]]>
</lib>
<globalevent name="Rain_Item_Days" interval="1000" event="script">
<![CDATA[
domodlib("lib_rain_item")
local daysOpen = {}
for k, v in pairs(configRainItem.days) do
table.insert(daysOpen, k)
end
function onThink(interval)
if isInArray(daysOpen, os.date('%A')) then
if isInArray(configRainItem.days[os.date('%A')], os.date('%X', os.time())) then
if getStorage(configRainItem.storage) ~= 1 then
doBroadcastMessage('Rain Items will start in '..configRainItem.delayTime..' min. Go to temple or depot!')
doSetStorage(configRainItem.storage, 1)
addEvent(throwItem, configRainItem.delayTime * 60 * 1000)
end
end
end
return true
end
]]>
</globalevent>
<talkaction words="!startrain" access="5" event="script">
<![CDATA[
domodlib("lib_rain_item")
function onSay(cid, words, param)
if getStorage(configRainItem.storage) > 0 then
return doPlayerSendCancel(cid, 'Rain Item is already running.')
end
doBroadcastMessage('Rain Items will start in ' .. configRainItem.delayTime .. ' min. Go to temple or depot!')
doSetStorage(configRainItem.storage, 1)
addEvent(throwItem, configRainItem.delayTime * 60 * 1000)
return true
end
]]>
</talkaction>
<globalevent name="Rain_Item_Start" type="startup" event="script">
<![CDATA[
domodlib("lib_rain_item")
function onStartup()
doSetStorage(configRainItem.storage, -1)
return true
end
]]>
</globalevent>
</mod>
Configurando:
1-
days = {
['Monday'] = {'11:00:20', '19:00:20'}, = Aqui são os dias e horário que ocorrerão o evento, no caso do exemplo está Segunda Feira ás 11 horas e as 19 horas.
Você deverá alterar o dia e a hora conforme desejar, o dia em inglês claro. Não sabe inglês faz cursinho na openenglish sqn.
2-
items = {
2644, -- king = 2644 é o ID do item que irá chover. O -- king não é anda apenas um exemplo pode deixar com o nome, o que vale é o ID!
3-
positions = {
{x=997, y=981, z=7}, = Mais do que claro, é as posições do mapa onde irá cair os items!
Nota: Caso queira iniciar o evento manualmente fora de hora execute o comando !startrain com seu ADM.
É isso aí galera, caso haja algum dúvida perguntem aqui no tópico!
Não gostou? Não critica, só olha e tenta fazer melhor
Absolute.
Posts Recomendados
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.