This commit is contained in:
mobius
2015-01-01 20:02:50 +00:00
parent eeae660458
commit a6a3718849
17894 changed files with 2818932 additions and 0 deletions

View File

@@ -0,0 +1,11 @@
<html><body>Volunteer:<br>
We gatekeepers are under constant criticism and attack, always dealing with complaints that our teleportation services are too slow or too limited. We don't retaliate, but not because we can't, mind you.<br>
I'm sure you can see some of our strength in the way we endure the attacks upon us.<br>
But this is only a glimpse of our true power. We have decided to use our power for the greater good.<br>
Just 10,000 Adena, my friend! For a donation of 10,000 Adena, you too can purchase a genuine <font color="LEVEL">Gatekeeper Transformation Stick</font>.<br>
You can make a donation once a day to earn this Shadow Item which gives you the ability to transform into a gatekeeper and experience our great powers.<br>
You can only use the gatekeeper powers when you have this stick equipped.<br>
Once you remove it, you will revert to your original form.<br>
The money that you donate will benefit our Gatekeeper Welfare Foundation, so please participate!<br>
<a action="bypass -h Quest LoveYourGatekeeper 32477.htm">Back</a>
</body></html>

View File

@@ -0,0 +1,9 @@
<html><body>Volunteer:<br>
You can use the Gatekeeper Transformation Stick to transform yourself to look like us for an entire hour!<br>
When you use the Gatekeeper Transformation Stick to look like us, you will possess our great powers and you will gain vitality while hunting. It's fantastic!<br>
You can obtain a Gatekeeper Transformation Stick once a day per account for a donation of just 10,000 Adena.<br>
All proceeds go to the Gatekeeper Welfare Foundation, so please participate early and often!<br>
Please know that during the transformation, your physical form and your attributes will change.<br>
<a action="bypass -h Quest LoveYourGatekeeper transform_stick">Donate 10,000 Adena.</a><br>
<a action="bypass -h Quest LoveYourGatekeeper 32477-4.htm">"I won't give up my precious Adena!"</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Volunteer:<br>
You don't have enough Adena. A Gatekeeper Transformation Stick costs 10,000 Adena!<br>
Don't worry about the expense -- it's worth it.<br>
<a action="bypass -h Quest LoveYourGatekeeper 32477.htm">Back</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Volunteer:<br>
Oh... you've gone too far!<br>
Is 10,000 Adena really such an exorbitant sum?<br>
<a action="bypass -h Quest LoveYourGatekeeper 32477.htm">Go back.</a>
</body></html>

View File

@@ -0,0 +1,8 @@
<html><body>Volunteer:<br>
Well, aren't you kind...<br>
Your encouragement and support gives us even more strength.<br>
As a token of our gratitude, we will allow you to change your appearance to look like us.<br>
I should warn you though: unlike using a Gatekeeper Transformation Stick, you won't be able to display any real power with this regular appearance change.<br>
<a action="bypass -h Quest LoveYourGatekeeper transform">"Yes, please!"</a><br>
<a action="bypass -h Quest LoveYourGatekeeper 32477.htm">"I don't know. It sounds scary."</a>
</body></html>

View File

@@ -0,0 +1,8 @@
<html><body>Volunteer:<br>
Goodness! Don't hit me!<br>
I am from the Gatekeeper Welfare Foundation. We are currently sponsoring a <font color="LEVEL">"Love Your Gatekeeper" campaign</font>.<br>
Please take part and show your support for our brave gatekeepers.<br>
<a action="bypass -h Quest LoveYourGatekeeper 32477-1.htm">Learn about the campaign.</a><br>
<a action="bypass -h Quest LoveYourGatekeeper 32477-2.htm">Purchase a Transformation Stick.</a><br>
<a action="bypass -h Quest LoveYourGatekeeper 32477-5.htm">Encourage the gatekeeper.</a>
</body></html>

View File

@@ -0,0 +1,129 @@
/*
* Copyright (C) 2004-2014 L2J DataPack
*
* This file is part of L2J DataPack.
*
* L2J DataPack 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.
*
* L2J DataPack 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.LoveYourGatekeeper;
import com.l2jserver.gameserver.model.actor.L2Npc;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
import com.l2jserver.gameserver.model.event.LongTimeEvent;
import com.l2jserver.gameserver.model.holders.SkillHolder;
import com.l2jserver.gameserver.model.itemcontainer.Inventory;
import com.l2jserver.gameserver.model.quest.QuestState;
import com.l2jserver.gameserver.model.quest.State;
import com.l2jserver.gameserver.network.SystemMessageId;
import com.l2jserver.gameserver.network.serverpackets.SystemMessage;
/**
* Love Your Gatekeeper event.
* @author Gladicek
*/
public final class LoveYourGatekeeper extends LongTimeEvent
{
// NPC
private static final int GATEKEEPER = 32477;
// Item
private static final int GATEKEEPER_TRANSFORMATION_STICK = 12814;
// Misc
private static final int HOURS = 24;
private static final int PRICE = 10000;
// Skills
private static SkillHolder TELEPORTER_TRANSFORM = new SkillHolder(5655, 1);
private LoveYourGatekeeper()
{
super(LoveYourGatekeeper.class.getSimpleName(), "events");
addStartNpc(GATEKEEPER);
addFirstTalkId(GATEKEEPER);
addTalkId(GATEKEEPER);
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
final QuestState st = getQuestState(player, false);
if (st == null)
{
return getNoQuestMsg(player);
}
switch (event)
{
case "transform_stick":
{
if (player.getAdena() >= PRICE)
{
long _reuse = 0;
String _streuse = st.get("reuse");
if (_streuse != null)
{
_reuse = Long.parseLong(_streuse);
}
if (_reuse > System.currentTimeMillis())
{
final long remainingTime = (_reuse - System.currentTimeMillis()) / 1000;
final int hours = (int) (remainingTime / 3600);
final int minutes = (int) ((remainingTime % 3600) / 60);
final SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.S1_WILL_BE_AVAILABLE_FOR_RE_USE_AFTER_S2_HOUR_S_S3_MINUTE_S);
sm.addItemName(GATEKEEPER_TRANSFORMATION_STICK);
sm.addInt(hours);
sm.addInt(minutes);
player.sendPacket(sm);
}
else
{
st.takeItems(Inventory.ADENA_ID, PRICE);
st.giveItems(GATEKEEPER_TRANSFORMATION_STICK, 1);
st.setState(State.STARTED);
st.set("reuse", String.valueOf(System.currentTimeMillis() + (HOURS * 3600000)));
}
}
else
{
return "32477-3.htm";
}
return null;
}
case "transform":
{
if (player.isTransformed())
{
return null;
}
player.doCast(TELEPORTER_TRANSFORM.getSkill());
return null;
}
}
return event;
}
@Override
public String onFirstTalk(L2Npc npc, L2PcInstance player)
{
if (player.getQuestState(getName()) == null)
{
newQuestState(player);
}
return "32477.htm";
}
public static void main(String[] args)
{
new LoveYourGatekeeper();
}
}

View File

@@ -0,0 +1,40 @@
<?xml version="1.0" encoding="UTF-8"?>
<event name="Love Your Gatekeeper" active="27 02 2008-28 02 2008" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../xsd/eventConfig.xsd">
<spawnlist>
<add npc="32477" x="-80762" y="151118" z="-3043" heading="28672" />
<add npc="32477" x="-84046" y="150193" z="-3129" heading="4096" />
<add npc="32477" x="-82675" y="151652" z="-3129" heading="46943" />
<add npc="32477" x="-12992" y="122818" z="-3117" heading="0" />
<add npc="32477" x="-13964" y="121947" z="-2988" heading="32768" />
<add npc="32477" x="-14823" y="123752" z="-3117" heading="8192" />
<add npc="32477" x="18178" y="145149" z="-3054" heading="7400" />
<add npc="32477" x="19185" y="144377" z="-3097" heading="32768" />
<add npc="32477" x="19508" y="145753" z="-3086" heading="47999" />
<add npc="32477" x="17396" y="170259" z="-3507" heading="30000" />
<add npc="32477" x="44150" y="-48708" z="-800" heading="32999" />
<add npc="32477" x="44280" y="-47664" z="-792" heading="49167" />
<add npc="32477" x="79806" y="55570" z="-1560" heading="0" />
<add npc="32477" x="83328" y="55824" z="-1525" heading="32768" />
<add npc="32477" x="80986" y="54504" z="-1525" heading="32768" />
<add npc="32477" x="83358" y="149223" z="-3400" heading="32768" />
<add npc="32477" x="82277" y="148598" z="-3467" heading="0" />
<add npc="32477" x="81621" y="148725" z="-3467" heading="32768" />
<add npc="32477" x="81680" y="145656" z="-3533" heading="32768" />
<add npc="32477" x="117498" y="76630" z="-2695" heading="38000" />
<add npc="32477" x="119536" y="76988" z="-2275" heading="40960" />
<add npc="32477" x="111585" y="221011" z="-3544" heading="16384" />
<add npc="32477" x="107922" y="218094" z="-3675" heading="0" />
<add npc="32477" x="114920" y="220020" z="-3632" heading="32768" />
<add npc="32477" x="147888" y="-58048" z="-2979" heading="49000" />
<add npc="32477" x="147285" y="-56461" z="-2776" heading="11500" />
<add npc="32477" x="147120" y="27312" z="-2192" heading="40960" />
<add npc="32477" x="147959" y="25695" z="-2000" heading="16384" />
<add npc="32477" x="87792" y="-142240" z="-1343" heading="44000" />
<add npc="32477" x="87557" y="-140657" z="-1542" heading="20476" />
<add npc="32477" x="115933" y="76482" z="-2711" heading="58999" />
</spawnlist>
<messages>
<add type="onEnd" text="Love Your Gatekeeper: Event end!" />
<add type="onEnter" text="Love Your Gatekeeper: Event ongoing!" />
</messages>
</event>