Support for Balthus Event.
Contributed by Index.
This commit is contained in:
120
L2J_Mobius_10.2_MasterClass/dist/game/data/multisell/343300001.xml
vendored
Normal file
120
L2J_Mobius_10.2_MasterClass/dist/game/data/multisell/343300001.xml
vendored
Normal file
@@ -0,0 +1,120 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/multisell.xsd">
|
||||
<npcs>
|
||||
<npc>34330</npc> <!-- Festival Fairy -->
|
||||
</npcs>
|
||||
<item>
|
||||
<ingredient id="49783" count="70" /> <!-- Fairy's Lucky Coin -->
|
||||
<ingredient id="57" count="100000" /> <!-- Adena -->
|
||||
<production id="81707" count="1" /> <!-- Festival Fairy's Gift - Event -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="8" /> <!-- Fairy's Lucky Coin -->
|
||||
<ingredient id="57" count="500000" /> <!-- Adena -->
|
||||
<production id="80934" count="1" /> <!-- Festival Fairy's Box: Crystals - Event -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="20" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="48229" count="1" /> <!-- Party Summoning Scroll -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="25" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="13302" count="1" /> <!-- My Teleport Scroll - Event -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="6750" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="81869" count="1" /> <!-- Superior Ruby Lv. 10 - Event -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="6750" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="81870" count="1" /> <!-- Superior Sapphire Lv. 10 - Event -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="6750" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="81871" count="1" /> <!-- Superior Red Cat's Eye Lv. 10 - Event -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="6750" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="81872" count="1" /> <!-- Superior Blue Cat's Eye Lv. 10 - Event -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="100" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80472" count="1" /> <!-- Greater Topaz Lv. 1 - Event -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="100" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80475" count="1" /> <!-- Greater Obsidian Lv. 1 - Event -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="100" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80476" count="1" /> <!-- Greater Opal Lv. 1 - Event -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="100" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80477" count="1" /> <!-- Greater Emerald Lv. 1 - Event -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="100" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80478" count="1" /> <!-- Greater Aquamarine Lv. 1 - Event -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="100" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80479" count="1" /> <!-- Greater Diamond Lv. 1 - Event -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="100" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80480" count="1" /> <!-- Greater Pearl Lv. 1 - Event -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="100" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80481" count="1" /> <!-- Greater Vital Stone Lv. 1 - Event -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="100" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80482" count="1" /> <!-- Greater Garnet Lv. 1 - Event -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="200" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80483" count="1" /> <!-- Greater Tanzanite Lv. 1 - Event -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="500" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80484" count="1" /> <!-- Greater Red Cat's Eye Lv. 1 - Event -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="500" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80485" count="1" /> <!-- Greater Blue Cat's Eye Lv. 1 - Event -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="250" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80486" count="1" /> <!-- Mysterious Talisman - STR - 7-day -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="250" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80487" count="1" /> <!-- Mysterious Talisman - INT - 7-day -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="250" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80488" count="1" /> <!-- Mysterious Talisman - DEX - 7-day -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="250" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80489" count="1" /> <!-- Mysterious Talisman - WIT - 7-day -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="250" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80490" count="1" /> <!-- Mysterious Talisman - CON - 7-day -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="250" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80491" count="1" /> <!-- Mysterious Talisman - MEN - 7-day -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="250" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80492" count="1" /> <!-- Mysterious Talisman - Attribute Attack - 7-day -->
|
||||
</item>
|
||||
<item>
|
||||
<ingredient id="49783" count="250" /> <!-- Fairy's Lucky Coin -->
|
||||
<production id="80493" count="1" /> <!-- Mysterious Talisman - Attribute Resistance - 7-day -->
|
||||
</item>
|
||||
</list>
|
6
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/34330-1.htm
vendored
Normal file
6
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/34330-1.htm
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
<html><body>Event Manager Festival Fairy:<br>
|
||||
Every hour I was trying raffle the item of all the player.<br>
|
||||
For start to be participant - you need to get coupon and use it.<br>
|
||||
Every day you can get 3 coupons from the Bag and I can sell you more coupons.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest BalthusFestival 34330.htm">Back</Button>
|
||||
</body></html>
|
5
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/34330-2.htm
vendored
Normal file
5
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/34330-2.htm
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
<html><body>Event Manager Festival Fairy:<br>
|
||||
Here we go.<br>
|
||||
I give you this bag, but on event period you can get only one!<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest BalthusFestival 34330.htm">Back</Button>
|
||||
</body></html>
|
4
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/34330-3.htm
vendored
Normal file
4
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/34330-3.htm
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Event Manager Festival Fairy:<br>
|
||||
Sorry, but you already have your Event Bag.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest BalthusFestival 34330.htm">Back</Button>
|
||||
</body></html>
|
6
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/34330-4.htm
vendored
Normal file
6
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/34330-4.htm
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
<html><body>Event Manager Festival Fairy:<br>
|
||||
I can exchange coupons for you, let me see on your coupon.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest BalthusFestival exchange_coupon_1">+6 Leviathan Robe</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest BalthusFestival exchange_coupon_2">+6 Leviathan Light Armor</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest BalthusFestival exchange_coupon_3">+6 Leviathan Heavy Armor</Button>
|
||||
</body></html>
|
4
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/34330-5.htm
vendored
Normal file
4
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/34330-5.htm
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Event Manager Festival Fairy:<br>
|
||||
Sorry, but you don't have required coupon.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest BalthusFestival 34330.htm">Back</Button>
|
||||
</body></html>
|
4
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/34330-6.htm
vendored
Normal file
4
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/34330-6.htm
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Event Manager Festival Fairy:<br>
|
||||
Good luck in next raffle!<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest BalthusFestival 34330.htm">Back</Button>
|
||||
</body></html>
|
5
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/34330-7.htm
vendored
Normal file
5
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/34330-7.htm
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
<html><body>Event Manager Festival Fairy:<br>
|
||||
I cant give you Bags with Coupons, because you level is too small!<br>
|
||||
Back to me, when your level will be %require_level%<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest BalthusFestival 34330.htm">Back</Button>
|
||||
</body></html>
|
10
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/34330.htm
vendored
Normal file
10
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/34330.htm
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
<html><body>Event Manager Festival Fairy:<br>
|
||||
Hello! Are you want to win some reward today?<br>
|
||||
Don't worry, I will give for all player's consolation reward if someone won reward!<br>
|
||||
If you have some Fairy Coins - I can exchange it on items for you.<br>
|
||||
Good luck!<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest BalthusFestival 34330-1.htm">Learn more about the event</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 343300001">Exchange coins on items</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest BalthusFestival 34330-4.htm">I want to exchange reward coupon</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest BalthusFestival get_event_bag">Give me Event Bag for taking Coupons</Button>
|
||||
</body></html>
|
236
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/BalthusFestival.java
vendored
Normal file
236
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/BalthusFestival.java
vendored
Normal file
@@ -0,0 +1,236 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package events.BalthusFestival;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.l2jmobius.gameserver.instancemanager.events.BalthusEventManager;
|
||||
import org.l2jmobius.gameserver.model.actor.Npc;
|
||||
import org.l2jmobius.gameserver.model.actor.Player;
|
||||
import org.l2jmobius.gameserver.model.events.EventType;
|
||||
import org.l2jmobius.gameserver.model.events.ListenerRegisterType;
|
||||
import org.l2jmobius.gameserver.model.events.annotations.RegisterEvent;
|
||||
import org.l2jmobius.gameserver.model.events.annotations.RegisterType;
|
||||
import org.l2jmobius.gameserver.model.events.impl.creature.OnCreatureSkillFinishCast;
|
||||
import org.l2jmobius.gameserver.model.events.impl.creature.player.OnPlayerLogin;
|
||||
import org.l2jmobius.gameserver.model.events.impl.creature.player.OnPlayerLogout;
|
||||
import org.l2jmobius.gameserver.model.holders.ItemHolder;
|
||||
import org.l2jmobius.gameserver.model.holders.SkillHolder;
|
||||
import org.l2jmobius.gameserver.model.quest.LongTimeEvent;
|
||||
import org.l2jmobius.gameserver.model.skill.BuffInfo;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.balthusevent.ExBalthusEvent;
|
||||
|
||||
/**
|
||||
* @author Index
|
||||
*/
|
||||
public class BalthusFestival extends LongTimeEvent
|
||||
{
|
||||
// NPC
|
||||
private static final int FESTIVAL_FAIRY = 34330;
|
||||
// Item
|
||||
private static final ItemHolder GOOD_LUCK_BAG = new ItemHolder(60011, 1); // Festival Fairy's Good Luck Bag
|
||||
// Skills
|
||||
private static final List<SkillHolder> SKILLS = new ArrayList<>(8);
|
||||
static
|
||||
{
|
||||
SKILLS.add(new SkillHolder(29441, 1)); // Fairy_Coupon_1_Hour
|
||||
SKILLS.add(new SkillHolder(39171, 1)); // Fairy_Coupon_2_Hour
|
||||
SKILLS.add(new SkillHolder(39171, 2)); // Fairy_Coupon_3_Hour
|
||||
SKILLS.add(new SkillHolder(39171, 3)); // Fairy_Coupon_6_Hour
|
||||
SKILLS.add(new SkillHolder(39171, 4)); // Fairy_Coupon_8_Hour
|
||||
SKILLS.add(new SkillHolder(39171, 5)); // Fairy_Coupon_Unlimited_Hour
|
||||
SKILLS.add(new SkillHolder(27859, 1)); // Balthus_Coupon_2_Hour
|
||||
SKILLS.add(new SkillHolder(48853, 1)); // Balthus_Coupon_2_Hour
|
||||
}
|
||||
// Misc
|
||||
private static final String BALTHUS_BAG_VAR = "BALTHUS_BAG";
|
||||
|
||||
private BalthusFestival()
|
||||
{
|
||||
addStartNpc(FESTIVAL_FAIRY);
|
||||
addFirstTalkId(FESTIVAL_FAIRY);
|
||||
addTalkId(FESTIVAL_FAIRY);
|
||||
if (isEventPeriod())
|
||||
{
|
||||
BalthusEventManager.getInstance();
|
||||
}
|
||||
}
|
||||
|
||||
@RegisterEvent(EventType.ON_PLAYER_LOGIN)
|
||||
@RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
|
||||
public void onPlayerLogin(OnPlayerLogin event)
|
||||
{
|
||||
if (!isEventPeriod())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
final Player player = event.getPlayer();
|
||||
if (player == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
for (SkillHolder skill : SKILLS)
|
||||
{
|
||||
final BuffInfo buff = player.getEffectList().getBuffInfoBySkillId(skill.getSkillId());
|
||||
if (buff != null)
|
||||
{
|
||||
cancelQuestTimer("balthusEventBuff" + player.getObjectId(), null, player);
|
||||
startQuestTimer("balthusEventBuff" + player.getObjectId(), buff.getTime() * 1000, null, player);
|
||||
BalthusEventManager.getInstance().addPlayer(player);
|
||||
}
|
||||
}
|
||||
player.sendPacket(new ExBalthusEvent(player));
|
||||
}
|
||||
|
||||
@RegisterEvent(EventType.ON_PLAYER_LOGOUT)
|
||||
@RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
|
||||
public void onPlayerLogout(OnPlayerLogout event)
|
||||
{
|
||||
if (!isEventPeriod())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
final Player player = event.getPlayer();
|
||||
if ((player == null))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
cancelQuestTimer("balthusEventBuff" + player.getObjectId(), null, player);
|
||||
BalthusEventManager.getInstance().removePlayer(player);
|
||||
}
|
||||
|
||||
@RegisterEvent(EventType.ON_CREATURE_SKILL_FINISH_CAST)
|
||||
@RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
|
||||
public void onCreatureSkillFinishCast(OnCreatureSkillFinishCast event)
|
||||
{
|
||||
if (!isEventPeriod())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
final Player player = event.getCaster().getActingPlayer();
|
||||
if (player == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
for (SkillHolder skill : SKILLS)
|
||||
{
|
||||
if (event.getSkill() == skill.getSkill())
|
||||
{
|
||||
startQuestTimer("balthusEventBuff" + player.getObjectId(), skill.getSkill().getAbnormalTime() * 1000, null, player);
|
||||
BalthusEventManager.getInstance().addPlayer(player);
|
||||
player.sendPacket(new ExBalthusEvent(player));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, Npc npc, Player player)
|
||||
{
|
||||
if (!isEventPeriod())
|
||||
{
|
||||
return "Balthus Event disabled.";
|
||||
}
|
||||
|
||||
if (event.equals("balthusEventBuff" + player.getObjectId()))
|
||||
{
|
||||
BalthusEventManager.getInstance().removePlayer(player);
|
||||
player.sendPacket(new ExBalthusEvent(player));
|
||||
}
|
||||
|
||||
if (event.equals("get_event_bag"))
|
||||
{
|
||||
if (player.getLevel() < BalthusEventManager.getInstance().getMinimalLevel())
|
||||
{
|
||||
return getHtm(player, "34300-7.htm").replace("%require_level%", String.valueOf(BalthusEventManager.getInstance().getMinimalLevel()));
|
||||
}
|
||||
else if (player.getVariables().getBoolean(BALTHUS_BAG_VAR, false))
|
||||
{
|
||||
return "34330-3.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
player.getVariables().set(BALTHUS_BAG_VAR, true);
|
||||
player.addItem("Balthus Event", GOOD_LUCK_BAG.getId(), GOOD_LUCK_BAG.getCount(), null, true);
|
||||
return "34330-2.htm";
|
||||
}
|
||||
}
|
||||
else if (event.equals("34330.htm"))
|
||||
{
|
||||
return event;
|
||||
}
|
||||
else if (event.equals("34330-1.htm"))
|
||||
{
|
||||
return event;
|
||||
}
|
||||
else if (event.equals("34330-4.htm"))
|
||||
{
|
||||
return event;
|
||||
}
|
||||
else if (event.startsWith("exchange_coupon_"))
|
||||
{
|
||||
switch (event.substring(16))
|
||||
{
|
||||
case ("1"):
|
||||
{
|
||||
if (!player.destroyItemByItemId("Destroy Coupon", 81726, 1, null, true))
|
||||
{
|
||||
return "34330-5.htm";
|
||||
}
|
||||
player.addItem("Balthus Coupon", 81711, 1, null, true);
|
||||
return "34330-6.htm";
|
||||
}
|
||||
case ("2"):
|
||||
{
|
||||
if (!player.destroyItemByItemId("Destroy Coupon", 81726, 1, null, true))
|
||||
{
|
||||
return "34330-5.htm";
|
||||
}
|
||||
player.addItem("Balthus Coupon", 81710, 1, null, true);
|
||||
return "34330-6.htm";
|
||||
}
|
||||
case ("3"):
|
||||
{
|
||||
if (!player.destroyItemByItemId("Destroy Coupon", 81726, 1, null, true))
|
||||
{
|
||||
return "34330-5.htm";
|
||||
}
|
||||
player.addItem("Balthus Coupon", 81709, 1, null, true);
|
||||
return "34330-6.htm";
|
||||
}
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onFirstTalk(Npc npc, Player player)
|
||||
{
|
||||
return npc.getId() + ".htm";
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new BalthusFestival();
|
||||
}
|
||||
}
|
24
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/config.xml
vendored
Normal file
24
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/config.xml
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<event name="Balthus Event" active="30 06 2021-29 07 2021" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../xsd/eventConfig.xsd">
|
||||
<!-- Reward sets on reward.xml -->
|
||||
<spawnlist>
|
||||
<add npc="34330" x="-14143" y="123176" z="-3096" heading="30212" /> <!-- Gludio -->
|
||||
<add npc="34330" x="16354" y="142848" z="-2680" heading="14450" /> <!-- Dion -->
|
||||
<add npc="34330" x="80814" y="147987" z="-3448" heading="3355" /> <!-- Giran -->
|
||||
<add npc="34330" x="82008" y="53874" z="-1472" heading="3355" /> <!-- Oren -->
|
||||
<add npc="34330" x="147457" y="27863" z="-2248" heading="17863" /> <!-- Aden -->
|
||||
<add npc="34330" x="112172" y="220447" z="-3648" heading="30708" /> <!-- Heine -->
|
||||
<add npc="34330" x="148195" y="-57368" z="-2752" heading="17863" /> <!-- Goddard -->
|
||||
<add npc="34330" x="44530" y="-48368" z="-776" heading="14450" /> <!-- Rune -->
|
||||
<add npc="34330" x="86897" y="-141346" z="-1320" heading="49153" /> <!-- Shutgard -->
|
||||
<add npc="34330" x="-114822" y="256385" z="-1472" heading="49744" /> <!-- Talking Island -->
|
||||
<add npc="34330" x="-78832" y="249115" z="-3272" heading="56380" /> <!-- Faeron Village -->
|
||||
<add npc="34330" x="-80485" y="149537" z="-3016" heading="16383" /> <!-- Gluddin -->
|
||||
<add npc="34330" x="117380" y="76684" z="-2672" heading="40961" /> <!-- Hunters Village -->
|
||||
<add npc="34330" x="208499" y="87743" z="-1006" heading="11264" /> <!-- Arcan -->
|
||||
</spawnlist>
|
||||
<messages>
|
||||
<add type="onEnd" text="Balthus Festival: Event end!" />
|
||||
<add type="onEnter" text="Balthus Festival: Event ongoing!" />
|
||||
</messages>
|
||||
</event>
|
39
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/rewards.xml
vendored
Normal file
39
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/rewards.xml
vendored
Normal file
@@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
https://l2central.info/main/events_and_promos/848.html?lang=en
|
||||
https://l2central.info/main/events_and_promos/608.html?lang=ru
|
||||
https://eu.4gameforum.com/threads/661220/
|
||||
reward from - hour - to - hour
|
||||
item id - item_id - count - item_count - chance - chance for been chosen like reward - chance_to_win - chance for item for been raffled;
|
||||
-->
|
||||
<list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="rewards.xsd" easyMode="true" minLevel="105" id="49783" count="100" mailSubject="Balthus Knight Lottery" mailContent="You win reward in Balthus Event!">
|
||||
<reward from="11" to="19">
|
||||
<items>
|
||||
<item id="81453" count="1" chance="50" lotteryChance="12.5"/>
|
||||
<item id="48910" count="1" chance="50" lotteryChance="12.5"/>
|
||||
<item id="81832" count="1" chance="50" lotteryChance="12.5"/>
|
||||
<item id="48677" count="1" chance="50" lotteryChance="12.5"/>
|
||||
<item id="48678" count="1" chance="50" lotteryChance="12.5"/>
|
||||
<item id="81726" count="1" chance="50" lotteryChance="12.5"/>
|
||||
<item id="80501" count="1" chance="50" lotteryChance="12.5"/>
|
||||
<item id="81429" count="1" chance="50" lotteryChance="12.5"/>
|
||||
</items>
|
||||
</reward>
|
||||
<reward from="20" to="22">
|
||||
<items>
|
||||
<item id="35564" count="1" chance="50" lotteryChance="33"/>
|
||||
<item id="29385" count="1" chance="50" lotteryChance="33"/>
|
||||
<item id="19464" count="1" chance="50" lotteryChance="34"/>
|
||||
</items>
|
||||
</reward>
|
||||
<reward from="23" to="23">
|
||||
<items>
|
||||
<item id="36414" count="1" chance="50" lotteryChance="100"/>
|
||||
</items>
|
||||
</reward>
|
||||
<reward from="00" to="10">
|
||||
<items>
|
||||
<item id="47399" count="1" chance="50" lotteryChance="100"/>
|
||||
</items>
|
||||
</reward>
|
||||
</list>
|
41
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/rewards.xsd
vendored
Normal file
41
L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/BalthusFestival/rewards.xsd
vendored
Normal file
@@ -0,0 +1,41 @@
|
||||
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
<xs:element name="list">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="reward" maxOccurs="unbounded" minOccurs="0">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="items">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="item" maxOccurs="unbounded" minOccurs="0">
|
||||
<xs:complexType>
|
||||
<xs:simpleContent>
|
||||
<xs:extension base="xs:string">
|
||||
<xs:attribute type="xs:int" name="id" use="optional"/>
|
||||
<xs:attribute type="xs:int" name="count" use="optional"/>
|
||||
<xs:attribute type="xs:double" name="chance" use="optional"/>
|
||||
<xs:attribute type="xs:double" name="lotteryChance" use="optional"/>
|
||||
</xs:extension>
|
||||
</xs:simpleContent>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
<xs:attribute type="xs:int" name="from" use="optional"/>
|
||||
<xs:attribute type="xs:int" name="to" use="optional"/>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
<xs:attribute type="xs:string" name="easyMode"/>
|
||||
<xs:attribute type="xs:int" name="minLevel"/>
|
||||
<xs:attribute type="xs:int" name="id"/>
|
||||
<xs:attribute type="xs:int" name="count"/>
|
||||
<xs:attribute type="xs:string" name="mailSubject"/>
|
||||
<xs:attribute type="xs:string" name="mailContent"/>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:schema>
|
||||
|
@@ -102,12 +102,16 @@
|
||||
<!-- Disguises you as a Balthus Knight for 2 h. Can be used only by characters of level 85 or higher. The effect is removed if you switch to a different class. -->
|
||||
<set name="icon" val="icon.ev_balthus_token" />
|
||||
<set name="default_action" val="SKILL_REDUCE" />
|
||||
<set name="reuse_delay" val="120000" /> <!-- 1 minute -->
|
||||
<set name="material" val="PAPER" />
|
||||
<set name="is_tradable" val="false" />
|
||||
<set name="is_dropable" val="false" />
|
||||
<set name="is_sellable" val="false" />
|
||||
<set name="is_stackable" val="true" />
|
||||
<set name="is_freightable" val="true" />
|
||||
<set name="handler" val="ItemSkills" />
|
||||
<skills>
|
||||
<skill id="27859" level="1" /> <!-- Lucky Gift Coupon (2-hour) -->
|
||||
</skills>
|
||||
</item>
|
||||
<item id="28610" name="Veteran Duo Bracelet Pack" additionalName="Event" type="EtcItem">
|
||||
<!-- Contains 1 Veteran Duo Bracelet. -->
|
||||
|
@@ -1283,12 +1283,16 @@
|
||||
<!-- Can apply to the Lucky Gift raffle for 2 h. Can be used only by characters of level 85 or higher. The effect is removed if you switch to a different class. -->
|
||||
<set name="icon" val="icon.ev_balthus_token" />
|
||||
<set name="default_action" val="SKILL_REDUCE" />
|
||||
<set name="reuse_delay" val="120000" /> <!-- 1 minute -->
|
||||
<set name="material" val="PAPER" />
|
||||
<set name="is_tradable" val="false" />
|
||||
<set name="is_dropable" val="false" />
|
||||
<set name="is_sellable" val="false" />
|
||||
<set name="is_stackable" val="true" />
|
||||
<set name="is_freightable" val="true" />
|
||||
<set name="material" val="PAPER" />
|
||||
<set name="handler" val="ItemSkills" />
|
||||
<skills>
|
||||
<skill id="39171" level="1" /> <!-- Lucky Gift Coupon (2-hour) -->
|
||||
</skills>
|
||||
</item>
|
||||
<item id="47386" name="Sibi's Letter" additionalName="Event" type="EtcItem">
|
||||
<!-- Letter from Sibi, the Balthus Knights Supply Officer. -->
|
||||
|
@@ -402,6 +402,14 @@
|
||||
<set name="is_sellable" val="false" />
|
||||
<set name="is_stackable" val="true" />
|
||||
<set name="is_freightable" val="true" />
|
||||
<set name="immediate_effect" val="true" />
|
||||
<set name="is_oly_restricted" val="true" />
|
||||
<set name="is_event_restricted" val="true" />
|
||||
<set name="handler" val="ItemSkills" />
|
||||
<set name="etcitem_type" val="SCROLL" />
|
||||
<skills>
|
||||
<skill id="39171" level="2" /> <!--Lucky Gift Coupon (3-hour) -->
|
||||
</skills>
|
||||
</item>
|
||||
<item id="48224" name="Lucky Gift Coupon" additionalName="6-hour" type="EtcItem">
|
||||
<!-- For 6 h., changes the appearance of your armor into that of the Hanbok, also allows you to take part in the Lucky Gift Draw. For characters of level 85 or higher. The effect is removed if you switch to a different class. -->
|
||||
@@ -413,6 +421,14 @@
|
||||
<set name="is_sellable" val="false" />
|
||||
<set name="is_stackable" val="true" />
|
||||
<set name="is_freightable" val="true" />
|
||||
<set name="immediate_effect" val="true" />
|
||||
<set name="is_oly_restricted" val="true" />
|
||||
<set name="is_event_restricted" val="true" />
|
||||
<set name="handler" val="ItemSkills" />
|
||||
<set name="etcitem_type" val="SCROLL" />
|
||||
<skills>
|
||||
<skill id="39171" level="3" /> <!--Lucky Gift Coupon (6-hour) -->
|
||||
</skills>
|
||||
</item>
|
||||
<item id="48225" name="Festival Fairy's Five-colored Sweets" additionalName="Event" type="EtcItem">
|
||||
<!-- For 30 min., Vitality bonus +30%. -->
|
||||
|
@@ -740,6 +740,14 @@
|
||||
<set name="is_sellable" val="false" />
|
||||
<set name="is_stackable" val="true" />
|
||||
<set name="is_freightable" val="true" />
|
||||
<set name="immediate_effect" val="true" />
|
||||
<set name="is_oly_restricted" val="true" />
|
||||
<set name="is_event_restricted" val="true" />
|
||||
<set name="handler" val="ItemSkills" />
|
||||
<set name="etcitem_type" val="SCROLL" />
|
||||
<skills>
|
||||
<skill id="39171" level="4" /> <!--Lucky Gift Coupon (8-hour) -->
|
||||
</skills>
|
||||
</item>
|
||||
<item id="48854" name="1 Billion Adena Box" type="EtcItem">
|
||||
<!-- Festival Fairy's gift. Double-click to obtain 1 billion adena. -->
|
||||
|
@@ -86,6 +86,17 @@
|
||||
<set name="is_dropable" val="false" />
|
||||
<set name="is_sellable" val="false" />
|
||||
<set name="is_freightable" val="true" />
|
||||
<set name="immediate_effect" val="true" />
|
||||
<set name="is_sellable" val="false" />
|
||||
<set name="is_stackable" val="true" />
|
||||
<set name="is_oly_restricted" val="true" />
|
||||
<set name="is_event_restricted" val="true" />
|
||||
<set name="handler" val="ItemSkills" />
|
||||
<set name="reuse_delay" val="5" />
|
||||
<set name="etcitem_type" val="SCROLL" />
|
||||
<skills>
|
||||
<skill id="29441" level="1" /> <!-- Glowing Dragon's Attribute Potion -->
|
||||
</skills>
|
||||
</item>
|
||||
<item id="60010" name="Pantheon's Protection Box" type="EtcItem">
|
||||
<!-- Double-click to obtain 1 useful item with a certain chance. -->
|
||||
@@ -98,12 +109,19 @@
|
||||
<item id="60011" name="Festival Fairy's Good Luck Bag" additionalName="Event" type="EtcItem">
|
||||
<!-- Double-click to obtain 3 Festival Fairy's Lucky Tickets (1-hour). -->
|
||||
<set name="icon" val="icon.card_event_luck_pocket" />
|
||||
<set name="default_action" val="SKILL_REDUCE" />
|
||||
<set name="material" val="FISH" />
|
||||
<set name="is_tradable" val="false" />
|
||||
<set name="is_dropable" val="false" />
|
||||
<set name="is_destroyable" val="false" />
|
||||
<set name="is_sellable" val="false" />
|
||||
<set name="default_action" val="PEEL" />
|
||||
<set name="immediate_effect" val="true" />
|
||||
<set name="material" val="PAPER" />
|
||||
<set name="is_stackable" val="true" />
|
||||
<set name="reuse_delay" val="86400000" /> <!-- 1 Day -->
|
||||
<set name="handler" val="ExtractableItems" />
|
||||
<capsuled_items>
|
||||
<item id="60009" min="3" max="3" chance="100" /> <!-- Festival Fairy's Lucky Ticket -->
|
||||
</capsuled_items>
|
||||
</item>
|
||||
<item id="60012" name="Barter Package" type="EtcItem">
|
||||
<!-- Double-click to obtain rare items. -->
|
||||
|
@@ -1103,8 +1103,41 @@
|
||||
<skill id="27859" toLevel="1" name="Balthus Knights' Top-grade Mark">
|
||||
<!-- Grants you a disguise for 2 h. You'll have a chance to receive special supplies. Acquired XP/ SP +50%. -->
|
||||
<icon>icon.ev_balthus_token</icon>
|
||||
<operateType>A1</operateType>
|
||||
<itemConsumeCount>1</itemConsumeCount>
|
||||
<itemConsumeId>28609</itemConsumeId>
|
||||
<abnormalLevel>1</abnormalLevel>
|
||||
<abnormalTime>7200</abnormalTime>
|
||||
<abnormalType>CHANGEBODY</abnormalType>
|
||||
<abnormalVisualEffect>CHANGESHAPE_TRANSFORM</abnormalVisualEffect>
|
||||
<stayAfterDeath>true</stayAfterDeath>
|
||||
<blockedInOlympiad>true</blockedInOlympiad>
|
||||
<effectPoint>1</effectPoint>
|
||||
<isMagic>4</isMagic> <!-- Magic Skill -->
|
||||
<magicLevel>56</magicLevel>
|
||||
<operateType>A2</operateType>
|
||||
<reuseDelay>60000</reuseDelay>
|
||||
<canBeDispelled>false</canBeDispelled>
|
||||
<hitTime>500</hitTime>
|
||||
<basicProperty>NONE</basicProperty>
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<hitCancelTime>0</hitCancelTime>
|
||||
<targetType>SELF</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<irreplacableBuff>true</irreplacableBuff>
|
||||
<isNecessaryToggle>true</isNecessaryToggle>
|
||||
<passiveConditions>
|
||||
<condition name="CheckLevel">
|
||||
<minLevel>85</minLevel>
|
||||
</condition>
|
||||
</passiveConditions>
|
||||
<effects>
|
||||
<effect name="ExpModify">
|
||||
<amount>50</amount>
|
||||
</effect>
|
||||
<effect name="SpModify">
|
||||
<amount>50</amount>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="27860" toLevel="1" name="Royal R99-grade White Save Ticket - Armor">
|
||||
<operateType>A1</operateType>
|
||||
|
@@ -1969,7 +1969,74 @@
|
||||
<skill id="29441" toLevel="1" name="Lucky Gift Coupon (1-hour)">
|
||||
<!-- For $s1, PvE damage +10%, Attribute Resistance +20, acquired XP +10%. Allows to take part in the raffle. -->
|
||||
<icon>icon.skill0000</icon>
|
||||
<operateType>A1</operateType>
|
||||
<itemConsumeCount>1</itemConsumeCount>
|
||||
<itemConsumeId>60009</itemConsumeId>
|
||||
<abnormalLevel>1</abnormalLevel>
|
||||
<abnormalTime>3600</abnormalTime>
|
||||
<abnormalType>CHANGEBODY</abnormalType>
|
||||
<abnormalVisualEffect>CHANGESHAPE_TRANSFORM</abnormalVisualEffect>
|
||||
<stayAfterDeath>true</stayAfterDeath>
|
||||
<blockedInOlympiad>true</blockedInOlympiad>
|
||||
<effectPoint>1</effectPoint>
|
||||
<isMagic>4</isMagic> <!-- Magic Skill -->
|
||||
<magicLevel>56</magicLevel>
|
||||
<operateType>A2</operateType>
|
||||
<reuseDelay>60000</reuseDelay>
|
||||
<canBeDispelled>false</canBeDispelled>
|
||||
<hitTime>500</hitTime>
|
||||
<basicProperty>NONE</basicProperty>
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<hitCancelTime>0</hitCancelTime>
|
||||
<targetType>SELF</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<irreplacableBuff>true</irreplacableBuff>
|
||||
<isNecessaryToggle>true</isNecessaryToggle>
|
||||
<passiveConditions>
|
||||
<condition name="CheckLevel">
|
||||
<minLevel>85</minLevel>
|
||||
</condition>
|
||||
</passiveConditions>
|
||||
<effects>
|
||||
<effect name="PveMagicalSkillDamageBonus">
|
||||
<amount>10</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
<effect name="PvePhysicalAttackDamageBonus">
|
||||
<amount>10</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
<effect name="PvePhysicalSkillDamageBonus">
|
||||
<amount>10</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
<effect name="DefenceAttribute">
|
||||
<amount>20</amount>
|
||||
<attribute>FIRE</attribute>
|
||||
</effect>
|
||||
<effect name="DefenceAttribute">
|
||||
<amount>20</amount>
|
||||
<attribute>WATER</attribute>
|
||||
</effect>
|
||||
<effect name="DefenceAttribute">
|
||||
<amount>20</amount>
|
||||
<attribute>EARTH</attribute>
|
||||
</effect>
|
||||
<effect name="DefenceAttribute">
|
||||
<amount>20</amount>
|
||||
<attribute>WIND</attribute>
|
||||
</effect>
|
||||
<effect name="DefenceAttribute">
|
||||
<amount>20</amount>
|
||||
<attribute>HOLY</attribute>
|
||||
</effect>
|
||||
<effect name="DefenceAttribute">
|
||||
<amount>20</amount>
|
||||
<attribute>DARK</attribute>
|
||||
</effect>
|
||||
<effect name="ExpModify">
|
||||
<amount>10</amount>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="29442" toLevel="1" name="Freya's Lucky Pouch">
|
||||
<icon>icon.skill0000</icon>
|
||||
|
@@ -47,10 +47,18 @@
|
||||
<value level="4">icon.etc_lottery_card_i00</value>
|
||||
<value level="5">icon.christmas_card_box2</value>
|
||||
</icon>
|
||||
<itemConsumeCount>1</itemConsumeCount>
|
||||
<itemConsumeId>49784</itemConsumeId>
|
||||
<abnormalLevel>1</abnormalLevel>
|
||||
<abnormalTime>3600</abnormalTime>
|
||||
<abnormalLevel>
|
||||
<value level="1">1</value>
|
||||
<value level="2">2</value>
|
||||
<value level="3">3</value>
|
||||
<value level="4">4</value>
|
||||
</abnormalLevel>
|
||||
<abnormalTime>
|
||||
<value level="1">3600</value>
|
||||
<value level="2">7200</value>
|
||||
<value level="3">21600</value>
|
||||
<value level="4">28800</value>
|
||||
</abnormalTime>
|
||||
<abnormalType>CHANGEBODY</abnormalType>
|
||||
<abnormalVisualEffect>CHANGESHAPE_TRANSFORM</abnormalVisualEffect>
|
||||
<stayAfterDeath>true</stayAfterDeath>
|
||||
@@ -67,6 +75,8 @@
|
||||
<hitCancelTime>0</hitCancelTime>
|
||||
<targetType>SELF</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<isNecessaryToggle>true</isNecessaryToggle>
|
||||
<irreplacableBuff>true</irreplacableBuff>
|
||||
<passiveConditions>
|
||||
<condition name="CheckLevel">
|
||||
<minLevel>85</minLevel>
|
||||
|
Reference in New Issue
Block a user