Skip to content
Snippets Groups Projects
Commit d2d467f3 authored by Zoey76's avatar Zoey76
Browse files

BETA: Event fixes, thanks jurchiks.

	* Gift of Vitality refactoring and cleanup.
	* Heavy Medal refactoring and cleanup.
	* The Valentine Event refactoring and cleanup.
Some minor changes by me.
parent 7d9e4722
No related branches found
No related tags found
No related merge requests found
...@@ -27,9 +27,8 @@ import com.l2jserver.gameserver.network.SystemMessageId; ...@@ -27,9 +27,8 @@ import com.l2jserver.gameserver.network.SystemMessageId;
import com.l2jserver.gameserver.network.serverpackets.SystemMessage; import com.l2jserver.gameserver.network.serverpackets.SystemMessage;
/** /**
** @author Gnacik * Retail Event : 'Gift of Vitality'
** * @author Gnacik
** Retail Event : 'Gift of Vitality'
*/ */
public class GiftOfVitality extends Quest public class GiftOfVitality extends Quest
{ {
...@@ -64,28 +63,31 @@ public class GiftOfVitality extends Quest ...@@ -64,28 +63,31 @@ public class GiftOfVitality extends Quest
addStartNpc(_jack); addStartNpc(_jack);
addFirstTalkId(_jack); addFirstTalkId(_jack);
addTalkId(_jack); addTalkId(_jack);
for(Location loc : _spawns) for (Location loc : _spawns)
{
addSpawn(_jack, loc, false, 0); addSpawn(_jack, loc, false, 0);
}
} }
@Override @Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{ {
String htmltext = ""; String htmltext = event;
QuestState st = player.getQuestState(getName()); QuestState st = player.getQuestState(getName());
htmltext = event;
if (event.equalsIgnoreCase("vitality")) if (event.equalsIgnoreCase("vitality"))
{ {
long _reuse = 0; long _reuse = 0;
String _streuse = st.get("reuse"); String _streuse = st.get("reuse");
if(_streuse != null) if (_streuse != null)
{
_reuse = Long.parseLong(_streuse); _reuse = Long.parseLong(_streuse);
if(_reuse > System.currentTimeMillis()) }
if (_reuse > System.currentTimeMillis())
{ {
long remainingTime = (_reuse - System.currentTimeMillis()) / 1000; long remainingTime = (_reuse - System.currentTimeMillis()) / 1000;
int hours = (int) (remainingTime / 3600); int hours = (int) (remainingTime / 3600);
int minutes = (int) ((remainingTime%3600) / 60); int minutes = (int) ((remainingTime % 3600) / 60);
SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.AVAILABLE_AFTER_S1_S2_HOURS_S3_MINUTES); SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.AVAILABLE_AFTER_S1_S2_HOURS_S3_MINUTES);
sm.addSkillName(23179); sm.addSkillName(23179);
sm.addNumber(hours); sm.addNumber(hours);
...@@ -96,9 +98,10 @@ public class GiftOfVitality extends Quest ...@@ -96,9 +98,10 @@ public class GiftOfVitality extends Quest
else else
{ {
npc.setTarget(player); npc.setTarget(player);
npc.doCast(SkillTable.getInstance().getInfo(23179,1)); // Gift of Vitality // Gift of Vitality
npc.doCast(SkillTable.getInstance().getInfo(23179, 1));
st.setState(State.STARTED); st.setState(State.STARTED);
st.set("reuse", String.valueOf(System.currentTimeMillis() + _hours*60*60*1000)); st.set("reuse", String.valueOf(System.currentTimeMillis() + (_hours * 3600000)));
htmltext = "4306-okvitality.htm"; htmltext = "4306-okvitality.htm";
} }
} }
...@@ -110,27 +113,23 @@ public class GiftOfVitality extends Quest ...@@ -110,27 +113,23 @@ public class GiftOfVitality extends Quest
} }
else else
{ {
npc.setTarget(player);
npc.doCast(SkillTable.getInstance().getInfo(5627, 1)); // Wind Walk
npc.doCast(SkillTable.getInstance().getInfo(5628, 1)); // Shield
npc.doCast(SkillTable.getInstance().getInfo(5637, 1)); // Magic Barrier
if (player.isMageClass()) if (player.isMageClass())
{ {
npc.setTarget(player); npc.doCast(SkillTable.getInstance().getInfo(5633, 1)); // Bless the Soul
npc.doCast(SkillTable.getInstance().getInfo(5627,1)); // Wind Walk npc.doCast(SkillTable.getInstance().getInfo(5634, 1)); // Acumen
npc.doCast(SkillTable.getInstance().getInfo(5628,1)); // Shield npc.doCast(SkillTable.getInstance().getInfo(5635, 1)); // Concentration
npc.doCast(SkillTable.getInstance().getInfo(5637,1)); // Magic Barrier npc.doCast(SkillTable.getInstance().getInfo(5636, 1)); // Empower
npc.doCast(SkillTable.getInstance().getInfo(5633,1)); // Bless the Soul
npc.doCast(SkillTable.getInstance().getInfo(5634,1)); // Acumen
npc.doCast(SkillTable.getInstance().getInfo(5635,1)); // Concentration
npc.doCast(SkillTable.getInstance().getInfo(5636,1)); // Empower
} }
else else
{ {
npc.setTarget(player); npc.doCast(SkillTable.getInstance().getInfo(5629, 1)); // Bless the Body
npc.doCast(SkillTable.getInstance().getInfo(5627,1)); // Wind Walk npc.doCast(SkillTable.getInstance().getInfo(5630, 1)); // Vampiric Rage
npc.doCast(SkillTable.getInstance().getInfo(5628,1)); // Shield npc.doCast(SkillTable.getInstance().getInfo(5631, 1)); // Regeneration
npc.doCast(SkillTable.getInstance().getInfo(5637,1)); // Magic Barrier npc.doCast(SkillTable.getInstance().getInfo(5632, 1)); // Haste
npc.doCast(SkillTable.getInstance().getInfo(5629,1)); // Bless the Body
npc.doCast(SkillTable.getInstance().getInfo(5630,1)); // Vampiric Rage
npc.doCast(SkillTable.getInstance().getInfo(5631,1)); // Regeneration
npc.doCast(SkillTable.getInstance().getInfo(5632,1)); // Haste
} }
htmltext = "4306-okbuff.htm"; htmltext = "4306-okbuff.htm";
} }
...@@ -141,28 +140,27 @@ public class GiftOfVitality extends Quest ...@@ -141,28 +140,27 @@ public class GiftOfVitality extends Quest
{ {
htmltext = "4306-nolevel.htm"; htmltext = "4306-nolevel.htm";
} }
else if (player.getPet() == null || !(player.getPet() instanceof L2SummonInstance)) else if ((player.getPet() == null) || !(player.getPet() instanceof L2SummonInstance))
{ {
htmltext = "4306-nosummon.htm"; htmltext = "4306-nosummon.htm";
} }
else else
{ {
npc.setTarget(player.getPet()); npc.setTarget(player.getPet());
npc.doCast(SkillTable.getInstance().getInfo(5627,1)); // Wind Walk npc.doCast(SkillTable.getInstance().getInfo(5627, 1)); // Wind Walk
npc.doCast(SkillTable.getInstance().getInfo(5628,1)); // Shield npc.doCast(SkillTable.getInstance().getInfo(5628, 1)); // Shield
npc.doCast(SkillTable.getInstance().getInfo(5637,1)); // Magic Barrier npc.doCast(SkillTable.getInstance().getInfo(5637, 1)); // Magic Barrier
npc.doCast(SkillTable.getInstance().getInfo(5629,1)); // Bless the Body npc.doCast(SkillTable.getInstance().getInfo(5629, 1)); // Bless the Body
npc.doCast(SkillTable.getInstance().getInfo(5633,1)); // Bless the Soul npc.doCast(SkillTable.getInstance().getInfo(5633, 1)); // Bless the Soul
npc.doCast(SkillTable.getInstance().getInfo(5630,1)); // Vampiric Rage npc.doCast(SkillTable.getInstance().getInfo(5630, 1)); // Vampiric Rage
npc.doCast(SkillTable.getInstance().getInfo(5634,1)); // Acumen npc.doCast(SkillTable.getInstance().getInfo(5634, 1)); // Acumen
npc.doCast(SkillTable.getInstance().getInfo(5631,1)); // Regeneration npc.doCast(SkillTable.getInstance().getInfo(5631, 1)); // Regeneration
npc.doCast(SkillTable.getInstance().getInfo(5635,1)); // Concentration npc.doCast(SkillTable.getInstance().getInfo(5635, 1)); // Concentration
npc.doCast(SkillTable.getInstance().getInfo(5632,1)); // Haste npc.doCast(SkillTable.getInstance().getInfo(5632, 1)); // Haste
npc.doCast(SkillTable.getInstance().getInfo(5636,1)); // Empower npc.doCast(SkillTable.getInstance().getInfo(5636, 1)); // Empower
htmltext = "4306-okbuff.htm"; htmltext = "4306-okbuff.htm";
} }
} }
return htmltext; return htmltext;
} }
...@@ -182,4 +180,4 @@ public class GiftOfVitality extends Quest ...@@ -182,4 +180,4 @@ public class GiftOfVitality extends Quest
{ {
new GiftOfVitality(-1, "GiftOfVitality", "events"); new GiftOfVitality(-1, "GiftOfVitality", "events");
} }
} }
\ No newline at end of file
...@@ -23,7 +23,8 @@ import com.l2jserver.gameserver.model.quest.QuestState; ...@@ -23,7 +23,8 @@ import com.l2jserver.gameserver.model.quest.QuestState;
import com.l2jserver.util.Rnd; import com.l2jserver.util.Rnd;
/** /**
** @author Gnacik Retail Event : 'Heavy Medals' * Retail Event : 'Heavy Medals'
* @author Gnacik
*/ */
public class HeavyMedal extends Quest public class HeavyMedal extends Quest
{ {
...@@ -138,50 +139,61 @@ public class HeavyMedal extends Quest ...@@ -138,50 +139,61 @@ public class HeavyMedal extends Quest
addFirstTalkId(CAT_ROY); addFirstTalkId(CAT_ROY);
addFirstTalkId(CAT_WINNIE); addFirstTalkId(CAT_WINNIE);
for (Location loc : _spawns_roy) for (Location loc : _spawns_roy)
{
addSpawn(CAT_ROY, loc, false, 0); addSpawn(CAT_ROY, loc, false, 0);
}
for (Location loc : _spawns_winnie) for (Location loc : _spawns_winnie)
{
addSpawn(CAT_WINNIE, loc, false, 0); addSpawn(CAT_WINNIE, loc, false, 0);
}
} }
@Override @Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{ {
String htmltext = ""; String htmltext = event;
QuestState st = player.getQuestState(getName()); QuestState st = player.getQuestState(getName());
htmltext = event;
int level = checkLevel(st); int level = checkLevel(st);
if (event.equalsIgnoreCase("game")) if (event.equalsIgnoreCase("game"))
{ {
if (st.getQuestItemsCount(GLITTERING_MEDAL) < MEDALS[level]) if (st.getQuestItemsCount(GLITTERING_MEDAL) < MEDALS[level])
return "31229-no.htm"; {
return "31229-game.htm"; htmltext = "31229-no.htm";
}
htmltext = "31229-game.htm";
} }
else if (event.equalsIgnoreCase("heads") || event.equalsIgnoreCase("tails")) else if (event.equalsIgnoreCase("heads") || event.equalsIgnoreCase("tails"))
{ {
if (st.getQuestItemsCount(GLITTERING_MEDAL) < MEDALS[level]) if (st.getQuestItemsCount(GLITTERING_MEDAL) < MEDALS[level])
return "31229-" + event.toLowerCase() + "-10.htm";
st.takeItems(GLITTERING_MEDAL, MEDALS[level]);
if (Rnd.get(100) > WIN_CHANCE)
{ {
level = 0; htmltext = "31229-" + event.toLowerCase() + "-10.htm";
} }
else else
{ {
if (level > 0) st.takeItems(GLITTERING_MEDAL, MEDALS[level]);
st.takeItems(BADGES[level - 1], -1);
st.giveItems(BADGES[level], 1); if (Rnd.get(100) > WIN_CHANCE)
st.playSound("Itemsound.quest_itemget"); {
level++; level = 0;
}
else
{
if (level > 0)
{
st.takeItems(BADGES[level - 1], -1);
}
st.giveItems(BADGES[level], 1);
st.playSound("Itemsound.quest_itemget");
level++;
}
htmltext = "31229-" + event.toLowerCase() + "-" + String.valueOf(level) + ".htm";
} }
return "31229-" + event.toLowerCase() + "-" + String.valueOf(level) + ".htm";
} }
else if (event.equalsIgnoreCase("talk")) else if (event.equalsIgnoreCase("talk"))
{ {
return String.valueOf(npc.getNpcId()) + "-lvl-" + String.valueOf(level) + ".htm"; htmltext = String.valueOf(npc.getNpcId()) + "-lvl-" + String.valueOf(level) + ".htm";
} }
return htmltext; return htmltext;
} }
...@@ -202,16 +214,25 @@ public class HeavyMedal extends Quest ...@@ -202,16 +214,25 @@ public class HeavyMedal extends Quest
{ {
int _lev = 0; int _lev = 0;
if (st == null) if (st == null)
{
return 0; return 0;
else if (st.hasQuestItems(6402)) }
if (st.hasQuestItems(6402))
{
_lev = 4; _lev = 4;
}
else if (st.hasQuestItems(6401)) else if (st.hasQuestItems(6401))
{
_lev = 3; _lev = 3;
}
else if (st.hasQuestItems(6400)) else if (st.hasQuestItems(6400))
{
_lev = 2; _lev = 2;
}
else if (st.hasQuestItems(6399)) else if (st.hasQuestItems(6399))
{
_lev = 1; _lev = 1;
}
return _lev; return _lev;
} }
......
...@@ -14,7 +14,6 @@ ...@@ -14,7 +14,6 @@
*/ */
package events.TheValentineEvent; package events.TheValentineEvent;
import com.l2jserver.gameserver.instancemanager.QuestManager;
import com.l2jserver.gameserver.model.Location; import com.l2jserver.gameserver.model.Location;
import com.l2jserver.gameserver.model.actor.L2Npc; import com.l2jserver.gameserver.model.actor.L2Npc;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance; import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
...@@ -23,7 +22,8 @@ import com.l2jserver.gameserver.model.quest.QuestState; ...@@ -23,7 +22,8 @@ import com.l2jserver.gameserver.model.quest.QuestState;
import com.l2jserver.gameserver.model.quest.State; import com.l2jserver.gameserver.model.quest.State;
/** /**
* Event Code for "The Valentine Event" http://www.lineage2.com/archive/2009/01/the_valentine_e.html * Event Code for "The Valentine Event"<br>
* http://www.lineage2.com/archive/2009/01/the_valentine_e.html
* @author Gnacik * @author Gnacik
*/ */
public class TheValentineEvent extends Quest public class TheValentineEvent extends Quest
...@@ -83,16 +83,16 @@ public class TheValentineEvent extends Quest ...@@ -83,16 +83,16 @@ public class TheValentineEvent extends Quest
addFirstTalkId(_npc); addFirstTalkId(_npc);
addTalkId(_npc); addTalkId(_npc);
for (Location loc : _spawns) for (Location loc : _spawns)
{
addSpawn(_npc, loc, false, 0); addSpawn(_npc, loc, false, 0);
}
} }
@Override @Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{ {
String htmltext = ""; String htmltext = event;
QuestState st = player.getQuestState(getName()); QuestState st = player.getQuestState(getName());
htmltext = event;
if (event.equalsIgnoreCase("4301-3.htm")) if (event.equalsIgnoreCase("4301-3.htm"))
{ {
if (st.isCompleted()) if (st.isCompleted())
...@@ -112,15 +112,12 @@ public class TheValentineEvent extends Quest ...@@ -112,15 +112,12 @@ public class TheValentineEvent extends Quest
@Override @Override
public String onFirstTalk(L2Npc npc, L2PcInstance player) public String onFirstTalk(L2Npc npc, L2PcInstance player)
{ {
String htmltext = "";
QuestState st = player.getQuestState(getName()); QuestState st = player.getQuestState(getName());
if (st == null) if (st == null)
{ {
Quest q = QuestManager.getInstance().getQuest(getName()); st = newQuestState(player);
st = q.newQuestState(player);
} }
htmltext = npc.getNpcId() + ".htm"; return npc.getNpcId() + ".htm";
return htmltext;
} }
public static void main(String[] args) public static void main(String[] args)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment