Skip to content

Instantly share code, notes, and snippets.

@Pandragon
Last active August 29, 2015 13:57
Show Gist options
  • Save Pandragon/9416353 to your computer and use it in GitHub Desktop.
Save Pandragon/9416353 to your computer and use it in GitHub Desktop.
### Eclipse Workspace Patch 1.0
#P L2J_DataPack_BETA
Index: dist/game/data/buylists/0135605.xml
===================================================================
--- dist/game/data/buylists/0135605.xml (revision 0)
+++ dist/game/data/buylists/0135605.xml (working copy)
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/buylist.xsd">
+ <npcs>
+ <npc>35605</npc> <!-- Angout (Steward) -->
+ </npcs>
+ <item id="6902" /> <!-- Pledge Shield -->
+ <item id="1829" count="5" restock_delay="60" /> <!-- Scroll of Escape: Clan Hall -->
+ <item id="5169" count="5" restock_delay="60" /> <!-- Deluxe Food for Strider -->
+</list>
Index: dist/game/data/scripts.cfg
===================================================================
--- dist/game/data/scripts.cfg (revision 10372)
+++ dist/game/data/scripts.cfg (working copy)
@@ -347,7 +347,7 @@
conquerablehalls/DevastatedCastle/DevastatedCastle.java
conquerablehalls/FortressOfResistance/FortressOfResistance.java
conquerablehalls/FortressOfTheDead/FortressOfTheDead.java
-#conquerablehalls/RainbowSpringsChateau/RainbowSpringsChateau.java
+conquerablehalls/RainbowSpringsChateau/RainbowSpringsChateau.java
# Events
events/CharacterBirthday/CharacterBirthday.java
Index: dist/game/data/scripts/conquerablehalls/RainbowSpringsChateau/messenger_yetti001.htm
===================================================================
--- dist/game/data/scripts/conquerablehalls/RainbowSpringsChateau/messenger_yetti001.htm (revision 10372)
+++ dist/game/data/scripts/conquerablehalls/RainbowSpringsChateau/messenger_yetti001.htm (working copy)
@@ -1,7 +1,7 @@
<html><body>Messenger Yetti:<br>
Pettite~ the transparent and energetic building behind me is <font color="LEVEL">Rainbow Spring</font>. Not my type, but very high class nonetheless. It's a place so nice, it's simply overlooked by ignorant adventurers. The winner gets ultimate bragging rights.<br>
The last winner was <font color="LEVEL">%owner%</font>, challenge him if you think you can defeat a clan!<br><br>
-Registration finished at: <font color="LEVEL">%time%</font><br><br>
+Registration is finished at: <font color="LEVEL">%time%</font><br><br>
<a action="bypass -h Quest RainbowSpringsChateau messenger_yetti002.htm">Hideout battle game instruction</a><br>
<a action="bypass -h Quest RainbowSpringsChateau register">Hideout battle game registration</a><br>
<a action="bypass -h Quest RainbowSpringsChateau messenger_yetti015.htm">Cancel registration</a><br>
Index: dist/game/data/scripts/conquerablehalls/RainbowSpringsChateau/RainbowSpringsChateau.java
===================================================================
--- dist/game/data/scripts/conquerablehalls/RainbowSpringsChateau/RainbowSpringsChateau.java (revision 10372)
+++ dist/game/data/scripts/conquerablehalls/RainbowSpringsChateau/RainbowSpringsChateau.java (working copy)
@@ -38,7 +38,6 @@
import com.l2jserver.gameserver.cache.HtmCache;
import com.l2jserver.gameserver.datatables.ClanTable;
import com.l2jserver.gameserver.datatables.NpcData;
-import com.l2jserver.gameserver.datatables.SkillData;
import com.l2jserver.gameserver.datatables.SpawnTable;
import com.l2jserver.gameserver.instancemanager.CHSiegeManager;
import com.l2jserver.gameserver.instancemanager.ZoneManager;
@@ -51,11 +50,11 @@
import com.l2jserver.gameserver.model.actor.L2Character;
import com.l2jserver.gameserver.model.actor.L2Npc;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
+import com.l2jserver.gameserver.model.entity.clanhall.ClanHallSiegeEngine;
import com.l2jserver.gameserver.model.entity.clanhall.SiegableHall;
import com.l2jserver.gameserver.model.entity.clanhall.SiegeStatus;
import com.l2jserver.gameserver.model.items.L2Item;
import com.l2jserver.gameserver.model.items.instance.L2ItemInstance;
-import com.l2jserver.gameserver.model.quest.Quest;
import com.l2jserver.gameserver.model.skills.Skill;
import com.l2jserver.gameserver.network.clientpackets.Say2;
import com.l2jserver.gameserver.network.serverpackets.NpcSay;
@@ -65,7 +64,7 @@
* Rainbow Springs Chateau clan hall siege script.
* @author BiggBoss
*/
-public final class RainbowSpringsChateau extends Quest
+public final class RainbowSpringsChateau extends ClanHallSiegeEngine
{
private static final Logger _log = Logger.getLogger(RainbowSpringsChateau.class.getName());
@@ -151,6 +150,14 @@
}
}
+ public static L2Clan _winner;
+
+ @Override
+ public L2Clan getWinner()
+ {
+ return _winner;
+ }
+
private static class SiegeEnd implements Runnable
{
private final L2Clan _winner;
@@ -250,21 +257,13 @@
private static final String[] _textPassages =
{
- "Text Passage 1",
- "Passage Text 2",
- "Im getting out of ideas",
- "But i can write few more",
- "Are five sentences",
- "enough for this f*** siege?",
- "i think ill add few more",
- "like this one",
- "Please, if you know the true passages",
- "Contact me at L2JForum =)"
+ "Fight for Rainbow Springs!",
+ "Are you a match for the Yetti?",
+ "Did somebody order a knuckle sandwich?"
};
- private static final Skill[] DEBUFFS =
- {
- SkillData.getInstance().getSkill(0, 1)
+ private static final Skill[] DEBUFFS = {
+ // SkillData.getInstance().getSkill(0, 1)
};
protected static Map<Integer, Long> _warDecreesCount = new HashMap<>();
@@ -276,9 +275,9 @@
protected static ScheduledFuture<?> _nextSiege, _siegeEnd;
private static String _registrationEnds;
- private RainbowSpringsChateau()
+ public RainbowSpringsChateau()
{
- super(-1, RainbowSpringsChateau.class.getSimpleName(), "conquerablehalls");
+ super(-1, RainbowSpringsChateau.class.getSimpleName(), "conquerablehalls", RAINBOW_SPRINGS);
addFirstTalkId(MESSENGER);
addTalkId(MESSENGER);
@@ -867,7 +866,8 @@
}
}
- private static void loadAttackers()
+ @Override
+ public void loadAttackers()
{
try (Connection con = L2DatabaseFactory.getInstance().getConnection())
{
@@ -898,7 +898,7 @@
int hour = c.get(Calendar.HOUR);
int mins = c.get(Calendar.MINUTE);
- _registrationEnds = year + "-" + month + "-" + day + " " + hour + ":" + mins;
+ _registrationEnds = year + "-" + month + "-" + day + " " + hour + (mins < 10 ? ":0" : ":") + mins;
}
public static void launchSiege()
@@ -907,7 +907,8 @@
ThreadPoolManager.getInstance().executeGeneral(new SiegeStart());
}
- public static void endSiege()
+ @Override
+ public void endSiege()
{
if (_siegeEnd != null)
{
Index: dist/game/data/stats/npcs/35600-35700.xml
===================================================================
--- dist/game/data/stats/npcs/35600-35700.xml (revision 10372)
+++ dist/game/data/stats/npcs/35600-35700.xml (working copy)
@@ -36,7 +36,7 @@
<height normal="10.5" />
</collision>
</npc>
- <npc id="35601" level="70" type="L2Npc" name="Doorman">
+ <npc id="35601" level="70" type="L2CastleDoormen" name="Doorman">
<!-- Confirmed CT2.5 -->
<parameters>
<param name="MoveAroundSocial" value="0" />
@@ -78,7 +78,7 @@
<height normal="10.5" />
</collision>
</npc>
- <npc id="35602" level="70" type="L2Npc" name="Doorman">
+ <npc id="35602" level="70" type="L2CastleDoormen" name="Doorman">
<!-- Confirmed CT2.5 -->
<parameters>
<param name="MoveAroundSocial" value="0" />
@@ -202,7 +202,7 @@
<height normal="10.5" />
</collision>
</npc>
- <npc id="35605" level="56" type="L2Npc" name="Angout" title="Steward">
+ <npc id="35605" level="56" type="L2ClanHallManager" name="Angout" title="Steward">
<!-- Confirmed CT2.5 -->
<parameters>
<param name="MoveAroundSocial" value="80" />
Index: dist/game/data/buylists/0235605.xml
===================================================================
--- dist/game/data/buylists/0235605.xml (revision 0)
+++ dist/game/data/buylists/0235605.xml (working copy)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/buylist.xsd">
+ <npcs>
+ <npc>35605</npc> <!-- Angout (Steward) -->
+ </npcs>
+ <item id="6902" /> <!-- Pledge Shield -->
+ <item id="1829" count="5" restock_delay="60" /> <!-- Scroll of Escape: Clan Hall -->
+ <item id="5858" count="2" restock_delay="60" /> <!-- Blessed Scroll of Escape: Clan Hall -->
+ <item id="5169" count="10" restock_delay="60" /> <!-- Deluxe Food for Strider -->
+ <item id="952" count="1" restock_delay="240" /> <!-- Scroll: Enchant Armor (C-Grade) -->
+ <item id="7133" count="1" restock_delay="60" /> <!-- Scroll of Escape: Town of Goddard -->
+ <item id="7132" count="1" restock_delay="60" /> <!-- Scroll of Escape: Town of Aden -->
+ <item id="8644" count="1" restock_delay="120" /> <!-- Recipe: Elixir of Life (A-Grade) (100%) -->
+ <item id="8650" count="1" restock_delay="120" /> <!-- Recipe: Elixir of Mental Strength (A-Grade) (100%) -->
+ <item id="9952" count="2" restock_delay="120" /> <!-- Orange Talisman - Hot Springs CP Potion -->
+ <item id="10166" count="1" restock_delay="120" /> <!-- Hot Springs CP Potion -->
+</list>
Index: dist/game/data/buylists/0335605.xml
===================================================================
--- dist/game/data/buylists/0335605.xml (revision 0)
+++ dist/game/data/buylists/0335605.xml (working copy)
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/buylist.xsd">
+ <npcs>
+ <npc>35605</npc> <!-- Angout (Steward) -->
+ </npcs>
+ <item id="6902" /> <!-- Pledge Shield -->
+ <item id="1829" count="5" restock_delay="60" /> <!-- Scroll of Escape: Clan Hall -->
+ <item id="5858" count="2" restock_delay="60" /> <!-- Blessed Scroll of Escape: Clan Hall -->
+ <item id="5169" count="10" restock_delay="60" /> <!-- Deluxe Food for Strider -->
+ <item id="952" count="1" restock_delay="240" /> <!-- Scroll: Enchant Armor (C-Grade) -->
+ <item id="7133" count="1" restock_delay="60" /> <!-- Scroll of Escape: Town of Goddard -->
+ <item id="7132" count="1" restock_delay="60" /> <!-- Scroll of Escape: Town of Aden -->
+ <item id="7583" count="1" restock_delay="120" /> <!-- Pet Exchange Ticket: Buffalo -->
+ <item id="6927" count="1" restock_delay="60" /> <!-- Recipe: Healing Potion (100%) -->
+ <item id="6933" count="1" restock_delay="60" /> <!-- Recipe: Haste Potion (100%) -->
+ <item id="6934" count="1" restock_delay="60" /> <!-- Recipe: Alacrity Potion (100%) -->
+ <item id="6930" count="1" restock_delay="60" /> <!-- Recipe: Greater Antidote (100%) -->
+ <item id="6932" count="1" restock_delay="60" /> <!-- Recipe: Emergency Dressing (100%) -->
+ <item id="6937" count="1" restock_delay="60" /> <!-- Recipe: Magic Haste Potion (100%) -->
+ <item id="6930" count="1" restock_delay="60" /> <!-- Recipe: Greater Antidote (100%) -->
+ <item id="6920" count="1" restock_delay="60" /> <!-- Recipe: Greater Fish Oil (100%) -->
+ <item id="8364" count="1" restock_delay="60" /> <!-- Recipe: Party Hat (100%) -->
+ <item id="6925" count="1" restock_delay="60" /> <!-- Recipe: Monocle (100%) -->
+ <item id="6943" count="1" restock_delay="60" /> <!-- Recipe: Dye Potion - A (100%) -->
+ <item id="6944" count="1" restock_delay="60" /> <!-- Recipe: Dye Potion - B (100%) -->
+ <item id="6945" count="1" restock_delay="60" /> <!-- Recipe: Dye Potion - C (100%) -->
+ <item id="6946" count="1" restock_delay="60" /> <!-- Recipe: Dye Potion - D (100%) -->
+ <item id="6990" count="1" restock_delay="60" /> <!-- Recipe: Greater Dye of STR (100%) -->
+ <item id="6991" count="1" restock_delay="60" /> <!-- Recipe: Greater Dye of STR (100%) -->
+ <item id="6992" count="1" restock_delay="60" /> <!-- Recipe: Greater Dye of CON (100%) -->
+ <item id="6993" count="1" restock_delay="60" /> <!-- Recipe: Greater Dye of CON (100%) -->
+ <item id="6994" count="1" restock_delay="60" /> <!-- Recipe: Greater Dye of DEX (100%) -->
+ <item id="6995" count="1" restock_delay="60" /> <!-- Recipe: Greater Dye of DEX (100%) -->
+ <item id="6996" count="1" restock_delay="60" /> <!-- Recipe: Greater Dye of INT (100%) -->
+ <item id="6997" count="1" restock_delay="60" /> <!-- Recipe: Greater Dye of INT (100%) -->
+ <item id="6998" count="1" restock_delay="60" /> <!-- Recipe: Greater Dye of MEN (100%) -->
+ <item id="6999" count="1" restock_delay="60" /> <!-- Recipe: Greater Dye of MEN (100%) -->
+ <item id="7000" count="1" restock_delay="60" /> <!-- Recipe: Greater Dye of WIT (100%) -->
+ <item id="7001" count="1" restock_delay="60" /> <!-- Recipe: Greater Dye of WIT (100%) -->
+ <item id="8645" count="1" restock_delay="60" /> <!-- Recipe: Elixir of Life (S-Grade) (100%) -->
+ <item id="8651" count="1" restock_delay="60" /> <!-- Recipe: Elixir of Mental Strength (S-Grade) (100%) -->
+ <item id="9605" count="1" restock_delay="60" /> <!-- Agathion Seal Bracelet - Rainbow Clan Hall -->
+ <item id="10141" count="1" restock_delay="60" /> <!-- Grey Talisman - Yeti Transform -->
+ <item id="9952" count="2" restock_delay="120" /> <!-- Orange Talisman - Hot Springs CP Potion -->
+ <item id="8751" count="1" restock_delay="120" /> <!-- High-Grade Life Stone - Level 70 -->
+ <item id="8762" count="1" restock_delay="720" /> <!-- Top-Grade Life Stone - Level 76 -->
+ <item id="16117" /> <!-- Recipe - Refined Penguin Hat (10%) -->
+ <item id="16120" /> <!-- Recipe - Refined Turtle Hat (10%) -->
+ <item id="16129" count="10" restock_delay="60" /> <!-- Fabric of Refined Penguin Hat -->
+ <item id="16132" count="10" restock_delay="60" /> <!-- Fabric of Refined Turtle Hat -->
+ <item id="10166" count="1" restock_delay="120" /> <!-- Hot Springs CP Potion -->
+</list>
Index: dist/game/data/scripts/conquerablehalls/RainbowSpringsChateau/messenger_yetti001a.htm
===================================================================
--- dist/game/data/scripts/conquerablehalls/RainbowSpringsChateau/messenger_yetti001a.htm (revision 10372)
+++ dist/game/data/scripts/conquerablehalls/RainbowSpringsChateau/messenger_yetti001a.htm (working copy)
@@ -1,6 +1,6 @@
<html><body>Messenger Yetti:<br>
Pettite~ the transparent and lively building behind me is called <font color="LEVEL">Rainbow Spring</font>. It's not your ordinary hideout. You won't see a horde of peasants spilling blood for it. This one is special. Very high class...<br>
-Registration finished at: <font color="LEVEL">%time%</font><br><br>
+Registration is finished at: <font color="LEVEL">%time%</font><br><br>
<a action="bypass -h Quest RainbowSpringsChateau messenger_yetti002.htm">Hideout battle game instruction</a><br>
<a action="bypass -h Quest RainbowSpringsChateau register">Hideout battle game registration</a><br>
<a action="bypass -h Quest RainbowSpringsChateau messenger_yetti015.htm">Cancel registration</a><br>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment