[Classic] Custom tutorial quest.

This commit is contained in:
MobiusDev
2015-05-06 22:28:42 +00:00
parent bd54172313
commit e86a852905
32 changed files with 496 additions and 3 deletions

View File

@ -18,6 +18,8 @@
*/
package com.l2jserver.gameserver.network.clientpackets;
import quests.Q00255_Tutorial.Q00255_Tutorial;
import com.l2jserver.Config;
import com.l2jserver.gameserver.LoginServerThread;
import com.l2jserver.gameserver.cache.HtmCache;
@ -38,6 +40,7 @@ import com.l2jserver.gameserver.instancemanager.FortSiegeManager;
import com.l2jserver.gameserver.instancemanager.InstanceManager;
import com.l2jserver.gameserver.instancemanager.MailManager;
import com.l2jserver.gameserver.instancemanager.PetitionManager;
import com.l2jserver.gameserver.instancemanager.QuestManager;
import com.l2jserver.gameserver.instancemanager.SiegeManager;
import com.l2jserver.gameserver.model.L2Clan;
import com.l2jserver.gameserver.model.L2Object;
@ -57,6 +60,8 @@ import com.l2jserver.gameserver.model.entity.clanhall.AuctionableHall;
import com.l2jserver.gameserver.model.entity.clanhall.SiegableHall;
import com.l2jserver.gameserver.model.items.instance.L2ItemInstance;
import com.l2jserver.gameserver.model.quest.Quest;
import com.l2jserver.gameserver.model.quest.QuestState;
import com.l2jserver.gameserver.model.quest.State;
import com.l2jserver.gameserver.model.zone.ZoneId;
import com.l2jserver.gameserver.network.SystemMessageId;
import com.l2jserver.gameserver.network.serverpackets.AcquireSkillList;
@ -426,6 +431,11 @@ public class EnterWorld extends L2GameClientPacket
}
}
if (Config.SERVER_CLASSIC_SUPPORT)
{
loadTutorial(activeChar);
}
if (Config.PLAYER_SPAWN_PROTECTION > 0)
{
activeChar.setProtection(true);
@ -741,6 +751,22 @@ public class EnterWorld extends L2GameClientPacket
}
}
private void loadTutorial(L2PcInstance player)
{
if (Config.DISABLE_TUTORIAL)
{
return;
}
QuestState qs = player.getQuestState(Q00255_Tutorial.class.getSimpleName());
if (qs == null)
{
qs = QuestManager.getInstance().getQuest(Q00255_Tutorial.class.getSimpleName()).newQuestState(player);
qs.setState(State.STARTED);
}
qs.getQuest().notifyEvent("user_connected", null, player);
}
@Override
public String getType()
{

View File

@ -18,6 +18,8 @@
*/
package com.l2jserver.gameserver.network.clientpackets;
import quests.Q00255_Tutorial.Q00255_Tutorial;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
import com.l2jserver.gameserver.model.quest.QuestState;
@ -43,7 +45,7 @@ public class RequestTutorialClientEvent extends L2GameClientPacket
return;
}
QuestState qs = player.getQuestState("255_Tutorial");
QuestState qs = player.getQuestState(Q00255_Tutorial.class.getSimpleName());
if (qs != null)
{
qs.getQuest().notifyEvent("CE" + eventId + "", null, player);