mirror of
https://bitbucket.org/Ioncannon/project-meteor-server.git
synced 2025-04-02 19:42:05 -04:00
Added more quest functions and completed the scripts for Gridania and most of Ul'dah. Up to the battle part that is.
This commit is contained in:
parent
95849e1c1c
commit
79eaf5d79e
@ -228,6 +228,8 @@ namespace FFXIVClassic_Lobby_Server
|
|||||||
{
|
{
|
||||||
conn.Dispose();
|
conn.Dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Log.database(String.Format("CID={0} state updated to active(2).", cid));
|
Log.database(String.Format("CID={0} state updated to active(2).", cid));
|
||||||
|
@ -257,17 +257,17 @@ namespace FFXIVClassic_Lobby_Server
|
|||||||
break;
|
break;
|
||||||
case 2: //fst0Battle03 (Gridania)
|
case 2: //fst0Battle03 (Gridania)
|
||||||
info.zoneId = 166;
|
info.zoneId = 166;
|
||||||
info.x = 356.09f;
|
info.x = 369.5434f;
|
||||||
info.y = 3.74f;
|
info.y = 4.21f;
|
||||||
info.z = -701.62f;
|
info.z = -706.1074f;
|
||||||
info.rot = -1.4f;
|
info.rot = -1.26721f;
|
||||||
break;
|
break;
|
||||||
case 3: //wil0Battle01 (Ul'dah)
|
case 3: //wil0Battle01 (Ul'dah)
|
||||||
info.zoneId = 184;
|
info.zoneId = 184;
|
||||||
info.x = 12.63f;
|
info.x = 5.364327f;
|
||||||
info.y = 196.05f;
|
info.y = 196.0f;
|
||||||
info.z = 131.01f;
|
info.z = 133.6561f;
|
||||||
info.rot = -1.34f;
|
info.rot = -2.849384f;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -345,7 +345,7 @@ namespace FFXIVClassic_Lobby_Server
|
|||||||
cmd = new MySqlCommand(query, conn);
|
cmd = new MySqlCommand(query, conn);
|
||||||
cmd.Parameters.AddWithValue("@charaId", player.actorId);
|
cmd.Parameters.AddWithValue("@charaId", player.actorId);
|
||||||
cmd.Parameters.AddWithValue("@slot", slot);
|
cmd.Parameters.AddWithValue("@slot", slot);
|
||||||
cmd.Parameters.AddWithValue("@questId", quest.actorId);
|
cmd.Parameters.AddWithValue("@questId", 0xFFFFF & quest.actorId);
|
||||||
cmd.Parameters.AddWithValue("@questData", quest.GetSerializedQuestData());
|
cmd.Parameters.AddWithValue("@questData", quest.GetSerializedQuestData());
|
||||||
cmd.Parameters.AddWithValue("@questFlags", quest.GetQuestFlags());
|
cmd.Parameters.AddWithValue("@questFlags", quest.GetQuestFlags());
|
||||||
|
|
||||||
|
@ -72,6 +72,8 @@
|
|||||||
<Compile Include="actors\debug\Debug.cs" />
|
<Compile Include="actors\debug\Debug.cs" />
|
||||||
<Compile Include="actors\director\Director.cs" />
|
<Compile Include="actors\director\Director.cs" />
|
||||||
<Compile Include="actors\director\OpeningDirector.cs" />
|
<Compile Include="actors\director\OpeningDirector.cs" />
|
||||||
|
<Compile Include="actors\director\quest\QuestDirectorMan0u001.cs" />
|
||||||
|
<Compile Include="actors\director\quest\QuestDirectorMan0g001.cs" />
|
||||||
<Compile Include="actors\director\quest\QuestDirectorMan0l001..cs" />
|
<Compile Include="actors\director\quest\QuestDirectorMan0l001..cs" />
|
||||||
<Compile Include="actors\director\WeatherDirector.cs" />
|
<Compile Include="actors\director\WeatherDirector.cs" />
|
||||||
<Compile Include="actors\EventList.cs" />
|
<Compile Include="actors\EventList.cs" />
|
||||||
@ -102,7 +104,6 @@
|
|||||||
<Compile Include="actors\chara\ParameterSave.cs" />
|
<Compile Include="actors\chara\ParameterSave.cs" />
|
||||||
<Compile Include="actors\chara\player\PlayerWork.cs" />
|
<Compile Include="actors\chara\player\PlayerWork.cs" />
|
||||||
<Compile Include="dataobjects\DBWorld.cs" />
|
<Compile Include="dataobjects\DBWorld.cs" />
|
||||||
<Compile Include="dataobjects\Event.cs" />
|
|
||||||
<Compile Include="dataobjects\InventoryItem.cs" />
|
<Compile Include="dataobjects\InventoryItem.cs" />
|
||||||
<Compile Include="dataobjects\ConnectedPlayer.cs" />
|
<Compile Include="dataobjects\ConnectedPlayer.cs" />
|
||||||
<Compile Include="dataobjects\Item.cs" />
|
<Compile Include="dataobjects\Item.cs" />
|
||||||
|
@ -432,6 +432,7 @@ namespace FFXIVClassic_Lobby_Server
|
|||||||
if (spawnType.ToLower().StartsWith("0x"))
|
if (spawnType.ToLower().StartsWith("0x"))
|
||||||
sType = Convert.ToByte(spawnType, 16);
|
sType = Convert.ToByte(spawnType, 16);
|
||||||
else
|
else
|
||||||
|
|
||||||
sType = Convert.ToByte(spawnType);
|
sType = Convert.ToByte(spawnType);
|
||||||
|
|
||||||
if (mWorldManager.GetZone(zoneId) == null)
|
if (mWorldManager.GetZone(zoneId) == null)
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
using FFXIVClassic_Lobby_Server.common;
|
using FFXIVClassic_Lobby_Server.common;
|
||||||
using FFXIVClassic_Lobby_Server.packets;
|
using FFXIVClassic_Lobby_Server.packets;
|
||||||
using FFXIVClassic_Map_Server.actors;
|
using FFXIVClassic_Map_Server.actors;
|
||||||
|
using FFXIVClassic_Map_Server.Actors.Chara;
|
||||||
using FFXIVClassic_Map_Server.dataobjects;
|
using FFXIVClassic_Map_Server.dataobjects;
|
||||||
using FFXIVClassic_Map_Server.lua;
|
using FFXIVClassic_Map_Server.lua;
|
||||||
using FFXIVClassic_Map_Server.packets.send.actor;
|
using FFXIVClassic_Map_Server.packets.send.actor;
|
||||||
@ -20,6 +21,8 @@ namespace FFXIVClassic_Map_Server.Actors
|
|||||||
{
|
{
|
||||||
private uint actorClassId;
|
private uint actorClassId;
|
||||||
|
|
||||||
|
public NpcWork npcWork = new NpcWork();
|
||||||
|
|
||||||
public Npc(uint id, string actorName, uint zoneId, float posX, float posY, float posZ, float rot, ushort actorState, uint animationId, uint displayNameId, string customDisplayName, string className)
|
public Npc(uint id, string actorName, uint zoneId, float posX, float posY, float posZ, float rot, ushort actorState, uint animationId, uint displayNameId, string customDisplayName, string className)
|
||||||
: base(id)
|
: base(id)
|
||||||
{
|
{
|
||||||
@ -38,6 +41,26 @@ namespace FFXIVClassic_Map_Server.Actors
|
|||||||
this.zoneId = zoneId;
|
this.zoneId = zoneId;
|
||||||
|
|
||||||
loadNpcTemplate(id);
|
loadNpcTemplate(id);
|
||||||
|
|
||||||
|
charaWork.battleSave.potencial = 1.0f;
|
||||||
|
|
||||||
|
charaWork.parameterSave.state_mainSkill[0] = 3;
|
||||||
|
charaWork.parameterSave.state_mainSkill[2] = 3;
|
||||||
|
charaWork.parameterSave.state_mainSkillLevel = 2;
|
||||||
|
|
||||||
|
charaWork.parameterSave.hp[0] = 500;
|
||||||
|
charaWork.parameterSave.hpMax[0] = 500;
|
||||||
|
charaWork.property[0] = 1;
|
||||||
|
charaWork.property[1] = 1;
|
||||||
|
|
||||||
|
if (className.Equals("JellyfishScenarioLimsaLv00"))
|
||||||
|
{
|
||||||
|
charaWork.property[2] = 1;
|
||||||
|
npcWork.hateType = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
charaWork.property[3] = 1;
|
||||||
|
charaWork.property[4] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
public SubPacket createAddActorPacket(uint playerActorId)
|
public SubPacket createAddActorPacket(uint playerActorId)
|
||||||
@ -80,6 +103,54 @@ namespace FFXIVClassic_Map_Server.Actors
|
|||||||
return BasePacket.createPacket(subpackets, true, false);
|
return BasePacket.createPacket(subpackets, true, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public override BasePacket getInitPackets(uint playerActorId)
|
||||||
|
{
|
||||||
|
ActorPropertyPacketUtil propPacketUtil = new ActorPropertyPacketUtil("/_init", this, playerActorId);
|
||||||
|
|
||||||
|
//Properties
|
||||||
|
for (int i = 0; i < charaWork.property.Length; i++)
|
||||||
|
{
|
||||||
|
if (charaWork.property[i] != 0)
|
||||||
|
propPacketUtil.addProperty(String.Format("charaWork.property[{0}]", i));
|
||||||
|
}
|
||||||
|
|
||||||
|
//Parameters
|
||||||
|
propPacketUtil.addProperty("charaWork.parameterSave.hp[0]");
|
||||||
|
propPacketUtil.addProperty("charaWork.parameterSave.hpMax[0]");
|
||||||
|
propPacketUtil.addProperty("charaWork.parameterSave.mp");
|
||||||
|
propPacketUtil.addProperty("charaWork.parameterSave.mpMax");
|
||||||
|
propPacketUtil.addProperty("charaWork.parameterTemp.tp");
|
||||||
|
|
||||||
|
if (charaWork.parameterSave.state_mainSkill[0] != 0)
|
||||||
|
propPacketUtil.addProperty("charaWork.parameterSave.state_mainSkill[0]");
|
||||||
|
if (charaWork.parameterSave.state_mainSkill[1] != 0)
|
||||||
|
propPacketUtil.addProperty("charaWork.parameterSave.state_mainSkill[1]");
|
||||||
|
if (charaWork.parameterSave.state_mainSkill[2] != 0)
|
||||||
|
propPacketUtil.addProperty("charaWork.parameterSave.state_mainSkill[2]");
|
||||||
|
if (charaWork.parameterSave.state_mainSkill[3] != 0)
|
||||||
|
propPacketUtil.addProperty("charaWork.parameterSave.state_mainSkill[3]");
|
||||||
|
|
||||||
|
propPacketUtil.addProperty("charaWork.parameterSave.state_mainSkillLevel");
|
||||||
|
|
||||||
|
//Status Times
|
||||||
|
for (int i = 0; i < charaWork.statusShownTime.Length; i++)
|
||||||
|
{
|
||||||
|
if (charaWork.statusShownTime[i] != 0xFFFFFFFF)
|
||||||
|
propPacketUtil.addProperty(String.Format("charaWork.statusShownTime[{0}]", i));
|
||||||
|
}
|
||||||
|
|
||||||
|
//General Parameters
|
||||||
|
for (int i = 3; i < charaWork.battleTemp.generalParameter.Length; i++)
|
||||||
|
{
|
||||||
|
if (charaWork.battleTemp.generalParameter[i] != 0)
|
||||||
|
propPacketUtil.addProperty(String.Format("charaWork.battleTemp.generalParameter[{0}]", i));
|
||||||
|
}
|
||||||
|
|
||||||
|
propPacketUtil.addProperty("npcWork.hateType");
|
||||||
|
|
||||||
|
return BasePacket.createPacket(propPacketUtil.done(), true, false);
|
||||||
|
}
|
||||||
|
|
||||||
public uint getActorClassId()
|
public uint getActorClassId()
|
||||||
{
|
{
|
||||||
return actorClassId;
|
return actorClassId;
|
||||||
|
@ -968,6 +968,47 @@ namespace FFXIVClassic_Map_Server.Actors
|
|||||||
return equipment;
|
return equipment;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public byte getInitialTown()
|
||||||
|
{
|
||||||
|
return playerWork.initialTown;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getFreeQuestSlot()
|
||||||
|
{
|
||||||
|
for (int i = 0; i < questScenario.Length; i++)
|
||||||
|
{
|
||||||
|
if (questScenario[i] == null)
|
||||||
|
return i;
|
||||||
|
}
|
||||||
|
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void addQuest(uint id)
|
||||||
|
{
|
||||||
|
Actor actor = Server.getStaticActors((0xA0F00000 | id));
|
||||||
|
addQuest(actor.actorName);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void addQuest(string name)
|
||||||
|
{
|
||||||
|
Actor actor = Server.getStaticActors(name);
|
||||||
|
|
||||||
|
if (actor == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
uint id = actor.actorId;
|
||||||
|
|
||||||
|
int freeSlot = getFreeQuestSlot();
|
||||||
|
|
||||||
|
if (freeSlot == -1)
|
||||||
|
return;
|
||||||
|
|
||||||
|
playerWork.questScenario[freeSlot] = id;
|
||||||
|
questScenario[freeSlot] = new Quest(this, playerWork.questScenario[freeSlot], name, null, 0);
|
||||||
|
Database.saveQuest(this, questScenario[freeSlot]);
|
||||||
|
}
|
||||||
|
|
||||||
public Quest getQuest(uint id)
|
public Quest getQuest(uint id)
|
||||||
{
|
{
|
||||||
for (int i = 0; i < questScenario.Length; i++)
|
for (int i = 0; i < questScenario.Length; i++)
|
||||||
@ -1033,6 +1074,14 @@ namespace FFXIVClassic_Map_Server.Actors
|
|||||||
{
|
{
|
||||||
currentDirector = new QuestDirectorMan0l001(this, 0x46080012);
|
currentDirector = new QuestDirectorMan0l001(this, 0x46080012);
|
||||||
}
|
}
|
||||||
|
else if (directorType.Equals("QuestDirectorMan0g001"))
|
||||||
|
{
|
||||||
|
currentDirector = new QuestDirectorMan0g001(this, 0x46080012);
|
||||||
|
}
|
||||||
|
else if (directorType.Equals("QuestDirectorMan0u001"))
|
||||||
|
{
|
||||||
|
currentDirector = new QuestDirectorMan0u001(this, 0x46080012);
|
||||||
|
}
|
||||||
|
|
||||||
if (sendPackets)
|
if (sendPackets)
|
||||||
{
|
{
|
||||||
|
@ -15,9 +15,12 @@ namespace FFXIVClassic_Map_Server.actors.director
|
|||||||
public OpeningDirector(Player player, uint id) : base(player, id)
|
public OpeningDirector(Player player, uint id) : base(player, id)
|
||||||
{
|
{
|
||||||
this.displayNameId = 0;
|
this.displayNameId = 0;
|
||||||
this.customDisplayName = "openingDire";
|
this.customDisplayName = String.Format("openingDire_{0}_{1}", player.zone.zoneName, "04");
|
||||||
|
|
||||||
|
this.actorName = String.Format("openingDire_{0}_{1}@{2:x3}{3:x2}", player.zone.zoneName, "04", player.zoneId, 0);
|
||||||
|
|
||||||
|
this.actorName = this.actorName.Replace("Battle", "Btl");
|
||||||
|
|
||||||
this.actorName = "openingDire";
|
|
||||||
this.className = "OpeningDirector";
|
this.className = "OpeningDirector";
|
||||||
|
|
||||||
this.eventConditions = new EventList();
|
this.eventConditions = new EventList();
|
||||||
|
@ -0,0 +1,41 @@
|
|||||||
|
using FFXIVClassic_Lobby_Server.packets;
|
||||||
|
using FFXIVClassic_Map_Server.Actors;
|
||||||
|
using FFXIVClassic_Map_Server.lua;
|
||||||
|
using FFXIVClassic_Map_Server.packets.send.actor;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace FFXIVClassic_Map_Server.actors.director
|
||||||
|
{
|
||||||
|
class QuestDirectorMan0g001 : Director
|
||||||
|
{
|
||||||
|
public QuestDirectorMan0g001(Player player, uint id)
|
||||||
|
: base(player, id)
|
||||||
|
{
|
||||||
|
this.displayNameId = 0;
|
||||||
|
this.customDisplayName = "questDirect_fst0Btl03_01";
|
||||||
|
|
||||||
|
this.actorName = "questDirect_fst0Btl03_01@0A615";
|
||||||
|
this.className = "QuestDirectorMan0g001";
|
||||||
|
|
||||||
|
this.eventConditions = new EventList();
|
||||||
|
|
||||||
|
List<EventList.NoticeEventCondition> noticeEventList = new List<EventList.NoticeEventCondition>();
|
||||||
|
|
||||||
|
noticeEventList.Add(new EventList.NoticeEventCondition("noticeEvent", 0xE, 0x0));
|
||||||
|
noticeEventList.Add(new EventList.NoticeEventCondition("noticeRequest", 0x0, 0x1));
|
||||||
|
|
||||||
|
this.eventConditions.noticeEventConditions = noticeEventList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override SubPacket createScriptBindPacket(uint playerActorId)
|
||||||
|
{
|
||||||
|
List<LuaParam> lParams;
|
||||||
|
lParams = LuaUtils.createLuaParamList("/Director/Quest/QuestDirectorMan0g001", false, false, false, false, false, 0x753A);
|
||||||
|
return ActorInstantiatePacket.buildPacket(actorId, playerActorId, actorName, className, lParams);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,41 @@
|
|||||||
|
using FFXIVClassic_Lobby_Server.packets;
|
||||||
|
using FFXIVClassic_Map_Server.Actors;
|
||||||
|
using FFXIVClassic_Map_Server.lua;
|
||||||
|
using FFXIVClassic_Map_Server.packets.send.actor;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace FFXIVClassic_Map_Server.actors.director
|
||||||
|
{
|
||||||
|
class QuestDirectorMan0u001 : Director
|
||||||
|
{
|
||||||
|
public QuestDirectorMan0u001(Player player, uint id)
|
||||||
|
: base(player, id)
|
||||||
|
{
|
||||||
|
this.displayNameId = 0;
|
||||||
|
this.customDisplayName = "questDirect_wil0Btl01_01";
|
||||||
|
|
||||||
|
this.actorName = "questDirect_wil0Btl01_01@0A615";
|
||||||
|
this.className = "QuestDirectorMan0u001";
|
||||||
|
|
||||||
|
this.eventConditions = new EventList();
|
||||||
|
|
||||||
|
List<EventList.NoticeEventCondition> noticeEventList = new List<EventList.NoticeEventCondition>();
|
||||||
|
|
||||||
|
noticeEventList.Add(new EventList.NoticeEventCondition("noticeEvent", 0xE, 0x0));
|
||||||
|
noticeEventList.Add(new EventList.NoticeEventCondition("noticeRequest", 0x0, 0x1));
|
||||||
|
|
||||||
|
this.eventConditions.noticeEventConditions = noticeEventList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override SubPacket createScriptBindPacket(uint playerActorId)
|
||||||
|
{
|
||||||
|
List<LuaParam> lParams;
|
||||||
|
lParams = LuaUtils.createLuaParamList("/Director/Quest/QuestDirectorMan0u001", false, false, false, false, false, 0x757F);
|
||||||
|
return ActorInstantiatePacket.buildPacket(actorId, playerActorId, actorName, className, lParams);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -25,7 +25,12 @@ namespace FFXIVClassic_Map_Server.Actors
|
|||||||
this.owner = owner;
|
this.owner = owner;
|
||||||
actorName = name;
|
actorName = name;
|
||||||
this.questFlags = questFlags;
|
this.questFlags = questFlags;
|
||||||
this.questData = JsonConvert.DeserializeObject<Dictionary<string, Object>>(questDataJson);
|
|
||||||
|
if (questDataJson != null)
|
||||||
|
this.questData = JsonConvert.DeserializeObject<Dictionary<string, Object>>(questDataJson);
|
||||||
|
else
|
||||||
|
questData = null;
|
||||||
|
|
||||||
if (questData == null)
|
if (questData == null)
|
||||||
questData = new Dictionary<string, object>();
|
questData = new Dictionary<string, object>();
|
||||||
}
|
}
|
||||||
|
37
scripts/directors/openingDire_fst0Btl03_04@0A600.lua
Normal file
37
scripts/directors/openingDire_fst0Btl03_04@0A600.lua
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
require("/quests/man/man0g0")
|
||||||
|
|
||||||
|
function onEventStarted(player, actor, triggerName)
|
||||||
|
|
||||||
|
man0g0Quest = getStaticActor("Man0g0");
|
||||||
|
player:runEventFunction("delegateEvent", player, man0g0Quest, "processTtrNomal001withHQ", nil, nil, nil, nil);
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventUpdate(player, npc, resultId)
|
||||||
|
|
||||||
|
player:endEvent();
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function onTalked(player, npc)
|
||||||
|
|
||||||
|
man0g0Quest = player:getQuest("Man0g0");
|
||||||
|
|
||||||
|
if (man0g0Quest ~= nil) then
|
||||||
|
|
||||||
|
yda = getWorldManager():GetActorInWorld(1000009);
|
||||||
|
papalymo = getWorldManager():GetActorInWorld(1000010);
|
||||||
|
|
||||||
|
if (man0g0Quest:GetQuestFlag(MAN0G0_FLAG_TUTORIAL1_DONE) == false) then
|
||||||
|
yda:setQuestGraphic(player, 0x0);
|
||||||
|
papalymo:setQuestGraphic(player, 0x2);
|
||||||
|
else
|
||||||
|
if (man0g0Quest:GetQuestFlag(MAN0G0_FLAG_MINITUT_DONE1) == true) then
|
||||||
|
yda:setQuestGraphic(player, 0x2);
|
||||||
|
papalymo:setQuestGraphic(player, 0x0);
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
26
scripts/directors/openingDire_wil0Btl01_04@0B800.lua
Normal file
26
scripts/directors/openingDire_wil0Btl01_04@0B800.lua
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
require("/quests/man/man0u0")
|
||||||
|
|
||||||
|
function onEventStarted(player, actor, triggerName)
|
||||||
|
|
||||||
|
man0u0Quest = getStaticActor("Man0u0");
|
||||||
|
player:runEventFunction("delegateEvent", player, man0u0Quest, "processTtrNomal001withHQ", nil, nil, nil, nil);
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventUpdate(player, npc, resultId)
|
||||||
|
|
||||||
|
player:endEvent();
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function onTalked(player, npc)
|
||||||
|
|
||||||
|
man0u0Quest = player:getQuest("Man0u0");
|
||||||
|
|
||||||
|
if (man0u0Quest ~= nil) then
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
21
scripts/directors/questDirect_fst0Btl03_01@0A615.lua
Normal file
21
scripts/directors/questDirect_fst0Btl03_01@0A615.lua
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
|
||||||
|
function onEventStarted(player, actor, triggerName)
|
||||||
|
|
||||||
|
man0g0Quest = getStaticActor("Man0g0");
|
||||||
|
--player:runEventFunction("delegateEvent", player, man0g0Quest, "processTtrBtl001");
|
||||||
|
player:runEventFunction("delegateEvent", player, man0g0Quest, "processTtrBtl002");
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventUpdate(player, npc, resultId)
|
||||||
|
--man0g0Quest = getStaticActor("Man0g0");
|
||||||
|
--player:runEventFunction("delegateEvent", player, man0g0Quest, "processTtrBtl002");
|
||||||
|
player:endEvent();
|
||||||
|
end
|
||||||
|
|
||||||
|
function onCommand(player, command)
|
||||||
|
--Check command if ActivateCommand
|
||||||
|
player:endCommand();
|
||||||
|
player:endEvent();
|
||||||
|
player:kickEvent(player:getDirector(), "noticeEvent", true);
|
||||||
|
end
|
@ -2,8 +2,8 @@
|
|||||||
function onEventStarted(player, actor, triggerName)
|
function onEventStarted(player, actor, triggerName)
|
||||||
|
|
||||||
man0l0Quest = getStaticActor("Man0l0");
|
man0l0Quest = getStaticActor("Man0l0");
|
||||||
player:runEventFunction("delegateEvent", player, man0l0Quest, "processTtrBtl004");
|
--player:runEventFunction("delegateEvent", player, man0l0Quest, "processTtrBtl001");
|
||||||
--player:runEventFunction("delegateEvent", player, man0l0Quest, "processTtrBtl002");
|
player:runEventFunction("delegateEvent", player, man0l0Quest, "processTtrBtl002");
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -15,5 +15,7 @@ end
|
|||||||
|
|
||||||
function onCommand(player, command)
|
function onCommand(player, command)
|
||||||
--Check command if ActivateCommand
|
--Check command if ActivateCommand
|
||||||
|
player:endCommand();
|
||||||
|
player:endEvent();
|
||||||
player:kickEvent(player:getDirector(), "noticeEvent", true);
|
player:kickEvent(player:getDirector(), "noticeEvent", true);
|
||||||
end
|
end
|
@ -14,18 +14,18 @@ function onBeginLogin(player)
|
|||||||
player:getQuest(110001):ClearQuestFlags();
|
player:getQuest(110001):ClearQuestFlags();
|
||||||
elseif (player:hasQuest(110005) == true) then
|
elseif (player:hasQuest(110005) == true) then
|
||||||
player:setDirector("openingDirector", false);
|
player:setDirector("openingDirector", false);
|
||||||
player.positionX = 356.09;
|
player.positionX = 369.5434;
|
||||||
player.positionY = 3.74;
|
player.positionY = 4.21;
|
||||||
player.positionZ = -701.62;
|
player.positionZ = -706.1074;
|
||||||
player.rotation = -1.4;
|
player.rotation = -1.26721;
|
||||||
player:getQuest(110005):ClearQuestData();
|
player:getQuest(110005):ClearQuestData();
|
||||||
player:getQuest(110005):ClearQuestFlags();
|
player:getQuest(110005):ClearQuestFlags();
|
||||||
elseif (player:hasQuest(110009) == true) then
|
elseif (player:hasQuest(110009) == true) then
|
||||||
player:setDirector("openingDirector", false);
|
player:setDirector("openingDirector", false);
|
||||||
player.positionX = 12.63;
|
player.positionX = 5.364327;
|
||||||
player.positionY = 196.05;
|
player.positionY = 196.0;
|
||||||
player.positionZ = 131.01;
|
player.positionZ = 133.6561;
|
||||||
player.rotation = -1.34;
|
player.rotation = -2.849384;
|
||||||
player:getQuest(110009):ClearQuestData();
|
player:getQuest(110009):ClearQuestData();
|
||||||
player:getQuest(110009):ClearQuestFlags();
|
player:getQuest(110009):ClearQuestFlags();
|
||||||
end
|
end
|
||||||
|
7
scripts/quests/man/man0g0.lua
Normal file
7
scripts/quests/man/man0g0.lua
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
--Quest Flags
|
||||||
|
MAN0G0_FLAG_TUTORIAL1_DONE = 0;
|
||||||
|
MAN0G0_FLAG_TUTORIAL2_DONE = 1;
|
||||||
|
|
||||||
|
MAN0G0_FLAG_MINITUT_DONE1 = 4;
|
||||||
|
MAN0G0_FLAG_MINITUT_DONE2 = 8;
|
||||||
|
MAN0G0_FLAG_MINITUT_DONE3 = 16;
|
7
scripts/quests/man/man0u0.lua
Normal file
7
scripts/quests/man/man0u0.lua
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
--Quest Flags
|
||||||
|
MAN0U0_FLAG_TUTORIAL1_DONE = 0;
|
||||||
|
MAN0U0_FLAG_TUTORIAL2_DONE = 1;
|
||||||
|
|
||||||
|
MAN0U0_FLAG_MINITUT_DONE1 = 4;
|
||||||
|
MAN0U0_FLAG_MINITUT_DONE2 = 8;
|
||||||
|
MAN0U0_FLAG_MINITUT_DONE3 = 16;
|
@ -1,5 +1,5 @@
|
|||||||
function init(npc)
|
function init(npc)
|
||||||
return "/Chara/Npc/Object/OpeningStoperF0B1", false, false, false, false, false, 0x10A350, false, false, 0, 1, "TEST";
|
return "/Chara/Npc/Object/OpeningStoperF0B1", false, false, false, false, false, npc.getActorClassId(), false, false, 0, 1, "TEST";
|
||||||
end
|
end
|
||||||
|
|
||||||
function onEventStarted(player, npc, triggerName)
|
function onEventStarted(player, npc, triggerName)
|
||||||
|
61
scripts/zones/166/npcs/pplStd_fst0Btl03_01@0A600.lua
Normal file
61
scripts/zones/166/npcs/pplStd_fst0Btl03_01@0A600.lua
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
require("/quests/man/man0g0")
|
||||||
|
|
||||||
|
function init(npc)
|
||||||
|
return "/Chara/Npc/Populace/PopulaceStandard", false, false, false, false, false, npc.getActorClassId(), false, false, 0, 1, "TEST";
|
||||||
|
end
|
||||||
|
|
||||||
|
function onSpawn(player, npc)
|
||||||
|
npc:setQuestGraphic(player, 0x2);
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventStarted(player, npc, triggerName)
|
||||||
|
|
||||||
|
man0g0Quest = player:getQuest("Man0g0");
|
||||||
|
|
||||||
|
if (man0g0Quest ~= nil) then
|
||||||
|
|
||||||
|
if (triggerName == "pushDefault") then
|
||||||
|
player:runEventFunction("delegateEvent", player, man0g0Quest, "processTtrNomal002", nil, nil, nil);
|
||||||
|
elseif (triggerName == "talkDefault") then
|
||||||
|
if (man0g0Quest:GetQuestFlag(MAN0G0_FLAG_TUTORIAL1_DONE) == false) then
|
||||||
|
player:runEventFunction("delegateEvent", player, man0g0Quest, "processTtrNomal003", nil, nil, nil);
|
||||||
|
player:setEventStatus(npc, "pushDefault", false, 0x2);
|
||||||
|
player:getDirector():onTalked(npc);
|
||||||
|
man0g0Quest:SetQuestFlag(MAN0G0_FLAG_TUTORIAL1_DONE, true);
|
||||||
|
man0g0Quest:SaveData();
|
||||||
|
else
|
||||||
|
if (man0g0Quest:GetQuestFlag(MAN0G0_FLAG_MINITUT_DONE1) == true) then
|
||||||
|
man0g0Quest:SetQuestFlag(MAN0G0_FLAG_TUTORIAL2_DONE, true);
|
||||||
|
player:runEventFunction("delegateEvent", player, man0g0Quest, "processEvent010_1", nil, nil, nil);
|
||||||
|
else
|
||||||
|
player:runEventFunction("delegateEvent", player, man0g0Quest, "processEvent000_1", nil, nil, nil);
|
||||||
|
end
|
||||||
|
end
|
||||||
|
else
|
||||||
|
player:endEvent();
|
||||||
|
end
|
||||||
|
else
|
||||||
|
player:endEvent(); --Should not be here w.o this quest
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventUpdate(player, npc)
|
||||||
|
|
||||||
|
man0g0Quest = player:getQuest("Man0g0");
|
||||||
|
|
||||||
|
if (man0g0Quest:GetQuestFlag(MAN0G0_FLAG_TUTORIAL2_DONE) == true) then
|
||||||
|
player:endEvent();
|
||||||
|
player:setDirector("QuestDirectorMan0g001", true);
|
||||||
|
|
||||||
|
worldMaster = getWorldMaster();
|
||||||
|
player:sendGameMessage(player, worldMaster, 34108, 0x20);
|
||||||
|
player:sendGameMessage(player, worldMaster, 50011, 0x20);
|
||||||
|
|
||||||
|
getWorldManager():DoPlayerMoveInZone(player, 10);
|
||||||
|
player:kickEvent(player:getDirector(), "noticeEvent", true);
|
||||||
|
else
|
||||||
|
player:endEvent();
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
28
scripts/zones/166/npcs/pplStd_fst0Btl03_02@0A600.lua
Normal file
28
scripts/zones/166/npcs/pplStd_fst0Btl03_02@0A600.lua
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
require("/quests/man/man0g0")
|
||||||
|
|
||||||
|
function init(npc)
|
||||||
|
return "/Chara/Npc/Populace/PopulaceStandard", false, false, false, false, false, npc.getActorClassId(), false, false, 0, 1, "TEST";
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventStarted(player, npc, triggerName)
|
||||||
|
|
||||||
|
man0g0Quest = player:getQuest("Man0g0");
|
||||||
|
|
||||||
|
if (triggerName == "talkDefault") then
|
||||||
|
if (man0g0Quest:GetQuestFlag(MAN0G0_FLAG_MINITUT_DONE1) == false) then
|
||||||
|
player:runEventFunction("delegateEvent", player, man0g0Quest, "processEvent000_2", nil, nil, nil);
|
||||||
|
man0g0Quest:SetQuestFlag(MAN0G0_FLAG_MINITUT_DONE1, true);
|
||||||
|
man0g0Quest:SaveData();
|
||||||
|
player:getDirector():onTalked(npc);
|
||||||
|
else
|
||||||
|
player:runEventFunction("delegateEvent", player, man0g0Quest, "processEvent000_2", nil, nil, nil);
|
||||||
|
end
|
||||||
|
else
|
||||||
|
player:endEvent();
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventUpdate(player, npc)
|
||||||
|
player:endEvent();
|
||||||
|
end
|
@ -3,7 +3,17 @@
|
|||||||
function onZoneInit(zone)
|
function onZoneInit(zone)
|
||||||
end
|
end
|
||||||
|
|
||||||
function onZoneIn(zone, player)
|
function onZoneIn(player)
|
||||||
|
|
||||||
|
openingQuest = player:getQuest(110005);
|
||||||
|
|
||||||
|
--Opening Quest
|
||||||
|
if (openingQuest ~= nil) then
|
||||||
|
if (openingQuest:GetQuestFlag(0) == false) then
|
||||||
|
player:kickEvent(player:getDirector(), "noticeEvent");
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
function onZoneOut(zone, player)
|
function onZoneOut(zone, player)
|
||||||
|
21
scripts/zones/184/npcs/pplStd_wil0Btl01_01@0B800.lua
Normal file
21
scripts/zones/184/npcs/pplStd_wil0Btl01_01@0B800.lua
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
require("/quests/man/man0u0")
|
||||||
|
|
||||||
|
function init(npc)
|
||||||
|
return "/Chara/Npc/Populace/PopulaceStandard", false, false, false, false, false, npc.getActorClassId(), false, false, 0, 1, "TEST";
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventStarted(player, npc, triggerName)
|
||||||
|
|
||||||
|
man0u0Quest = getStaticActor("Man0u0");
|
||||||
|
|
||||||
|
if (triggerName == "talkDefault") then
|
||||||
|
player:runEventFunction("delegateEvent", player, man0u0Quest, "processEvent000_6", nil, nil, nil);
|
||||||
|
else
|
||||||
|
player:endEvent();
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventUpdate(player, npc)
|
||||||
|
player:endEvent();
|
||||||
|
end
|
33
scripts/zones/184/npcs/pplStd_wil0Btl01_02@0B800.lua
Normal file
33
scripts/zones/184/npcs/pplStd_wil0Btl01_02@0B800.lua
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
require("/quests/man/man0u0")
|
||||||
|
|
||||||
|
function init(npc)
|
||||||
|
return "/Chara/Npc/Populace/PopulaceStandard", false, false, false, false, false, npc.getActorClassId(), false, false, 0, 1, "TEST";
|
||||||
|
end
|
||||||
|
|
||||||
|
function onSpawn(player, npc)
|
||||||
|
npc:setQuestGraphic(player, 0x2);
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventStarted(player, npc, triggerName)
|
||||||
|
|
||||||
|
man0u0Quest = player:getQuest("man0u0");
|
||||||
|
|
||||||
|
if (triggerName == "talkDefault") then
|
||||||
|
if (man0u0Quest:GetQuestFlag(MAN0U0_FLAG_MINITUT_DONE2) == false) then
|
||||||
|
player:runEventFunction("delegateEvent", player, man0u0Quest, "processTtrMini002_first", nil, nil, nil);
|
||||||
|
npc:setQuestGraphic(player, 0x0);
|
||||||
|
man0u0Quest:SetQuestFlag(MAN0U0_FLAG_MINITUT_DONE2, true);
|
||||||
|
man0u0Quest:SaveData();
|
||||||
|
player:getDirector():onTalked(npc);
|
||||||
|
else
|
||||||
|
player:runEventFunction("delegateEvent", player, man0u0Quest, "processTtrMini002", nil, nil, nil);
|
||||||
|
end
|
||||||
|
else
|
||||||
|
player:endEvent();
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventUpdate(player, npc)
|
||||||
|
player:endEvent();
|
||||||
|
end
|
21
scripts/zones/184/npcs/pplStd_wil0Btl01_03@0B800.lua
Normal file
21
scripts/zones/184/npcs/pplStd_wil0Btl01_03@0B800.lua
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
require("/quests/man/man0u0")
|
||||||
|
|
||||||
|
function init(npc)
|
||||||
|
return "/Chara/Npc/Populace/PopulaceStandard", false, false, false, false, false, npc.getActorClassId(), false, false, 0, 1, "TEST";
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventStarted(player, npc, triggerName)
|
||||||
|
|
||||||
|
man0u0Quest = getStaticActor("Man0u0");
|
||||||
|
|
||||||
|
if (triggerName == "talkDefault") then
|
||||||
|
player:runEventFunction("delegateEvent", player, man0u0Quest, "processEvent000_8", nil, nil, nil);
|
||||||
|
else
|
||||||
|
player:endEvent();
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventUpdate(player, npc)
|
||||||
|
player:endEvent();
|
||||||
|
end
|
21
scripts/zones/184/npcs/pplStd_wil0Btl01_04@0B800.lua
Normal file
21
scripts/zones/184/npcs/pplStd_wil0Btl01_04@0B800.lua
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
require("/quests/man/man0u0")
|
||||||
|
|
||||||
|
function init(npc)
|
||||||
|
return "/Chara/Npc/Populace/PopulaceStandard", false, false, false, false, false, npc.getActorClassId(), false, false, 0, 1, "TEST";
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventStarted(player, npc, triggerName)
|
||||||
|
|
||||||
|
man0u0Quest = getStaticActor("Man0u0");
|
||||||
|
|
||||||
|
if (triggerName == "talkDefault") then
|
||||||
|
player:runEventFunction("delegateEvent", player, man0u0Quest, "processEvent000_9", nil, nil, nil);
|
||||||
|
else
|
||||||
|
player:endEvent();
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventUpdate(player, npc)
|
||||||
|
player:endEvent();
|
||||||
|
end
|
21
scripts/zones/184/npcs/pplStd_wil0Btl01_05@0B800.lua
Normal file
21
scripts/zones/184/npcs/pplStd_wil0Btl01_05@0B800.lua
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
require("/quests/man/man0u0")
|
||||||
|
|
||||||
|
function init(npc)
|
||||||
|
return "/Chara/Npc/Populace/PopulaceStandard", false, false, false, false, false, npc.getActorClassId(), false, false, 0, 1, "TEST";
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventStarted(player, npc, triggerName)
|
||||||
|
|
||||||
|
man0u0Quest = getStaticActor("Man0u0");
|
||||||
|
|
||||||
|
if (triggerName == "talkDefault") then
|
||||||
|
player:runEventFunction("delegateEvent", player, man0u0Quest, "processEvent000_10", nil, nil, nil);
|
||||||
|
else
|
||||||
|
player:endEvent();
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventUpdate(player, npc)
|
||||||
|
player:endEvent();
|
||||||
|
end
|
33
scripts/zones/184/npcs/pplStd_wil0Btl01_06@0B800.lua
Normal file
33
scripts/zones/184/npcs/pplStd_wil0Btl01_06@0B800.lua
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
require("/quests/man/man0u0")
|
||||||
|
|
||||||
|
function init(npc)
|
||||||
|
return "/Chara/Npc/Populace/PopulaceStandard", false, false, false, false, false, npc.getActorClassId(), false, false, 0, 1, "TEST";
|
||||||
|
end
|
||||||
|
|
||||||
|
function onSpawn(player, npc)
|
||||||
|
npc:setQuestGraphic(player, 0x2);
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventStarted(player, npc, triggerName)
|
||||||
|
|
||||||
|
man0u0Quest = player:getQuest("man0u0");
|
||||||
|
|
||||||
|
if (triggerName == "talkDefault") then
|
||||||
|
if (man0u0Quest:GetQuestFlag(MAN0U0_FLAG_MINITUT_DONE3) == false) then
|
||||||
|
player:runEventFunction("delegateEvent", player, man0u0Quest, "processTtrMini003_first", nil, nil, nil);
|
||||||
|
npc:setQuestGraphic(player, 0x0);
|
||||||
|
man0u0Quest:SetQuestFlag(MAN0U0_FLAG_MINITUT_DONE3, true);
|
||||||
|
man0u0Quest:SaveData();
|
||||||
|
player:getDirector():onTalked(npc);
|
||||||
|
else
|
||||||
|
player:runEventFunction("delegateEvent", player, man0u0Quest, "processTtrMini003", nil, nil, nil);
|
||||||
|
end
|
||||||
|
else
|
||||||
|
player:endEvent();
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventUpdate(player, npc)
|
||||||
|
player:endEvent();
|
||||||
|
end
|
21
scripts/zones/184/npcs/pplStd_wil0Btl01_07@0B800.lua
Normal file
21
scripts/zones/184/npcs/pplStd_wil0Btl01_07@0B800.lua
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
require("/quests/man/man0u0")
|
||||||
|
|
||||||
|
function init(npc)
|
||||||
|
return "/Chara/Npc/Populace/PopulaceStandard", false, false, false, false, false, npc.getActorClassId(), false, false, 0, 1, "TEST";
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventStarted(player, npc, triggerName)
|
||||||
|
|
||||||
|
man0u0Quest = getStaticActor("Man0u0");
|
||||||
|
|
||||||
|
if (triggerName == "talkDefault") then
|
||||||
|
player:runEventFunction("delegateEvent", player, man0u0Quest, "processEvent000_12", nil, nil, nil);
|
||||||
|
else
|
||||||
|
player:endEvent();
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventUpdate(player, npc)
|
||||||
|
player:endEvent();
|
||||||
|
end
|
21
scripts/zones/184/npcs/pplStd_wil0Btl01_08@0B800.lua
Normal file
21
scripts/zones/184/npcs/pplStd_wil0Btl01_08@0B800.lua
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
require("/quests/man/man0u0")
|
||||||
|
|
||||||
|
function init(npc)
|
||||||
|
return "/Chara/Npc/Populace/PopulaceStandard", false, false, false, false, false, npc.getActorClassId(), false, false, 0, 1, "TEST";
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventStarted(player, npc, triggerName)
|
||||||
|
|
||||||
|
man0u0Quest = getStaticActor("Man0u0");
|
||||||
|
|
||||||
|
if (triggerName == "talkDefault") then
|
||||||
|
player:runEventFunction("delegateEvent", player, man0u0Quest, "processEvent000_13", nil, nil, nil);
|
||||||
|
else
|
||||||
|
player:endEvent();
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventUpdate(player, npc)
|
||||||
|
player:endEvent();
|
||||||
|
end
|
16
scripts/zones/184/npcs/pplStd_wil0Btl01_09@0B800.lua
Normal file
16
scripts/zones/184/npcs/pplStd_wil0Btl01_09@0B800.lua
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
require("/quests/man/man0u0")
|
||||||
|
|
||||||
|
function init(npc)
|
||||||
|
return "/Chara/Npc/Populace/PopulaceStandard", false, false, false, false, false, npc.getActorClassId(), false, false, 0, 1, "TEST";
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventStarted(player, npc, triggerName)
|
||||||
|
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventUpdate(player, npc)
|
||||||
|
|
||||||
|
player:endEvent();
|
||||||
|
|
||||||
|
end
|
48
scripts/zones/184/npcs/pplStd_wil0Btl01_0a@0B800.lua
Normal file
48
scripts/zones/184/npcs/pplStd_wil0Btl01_0a@0B800.lua
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
require("/quests/man/man0u0")
|
||||||
|
|
||||||
|
function init(npc)
|
||||||
|
return "/Chara/Npc/Populace/PopulaceStandard", false, false, false, false, false, npc.getActorClassId(), false, false, 0, 1, "TEST";
|
||||||
|
end
|
||||||
|
|
||||||
|
function onSpawn(player, npc)
|
||||||
|
npc:setQuestGraphic(player, 0x2);
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventStarted(player, npc, triggerName)
|
||||||
|
|
||||||
|
man0u0Quest = player:getQuest("Man0u0");
|
||||||
|
if (man0u0Quest ~= nil) then
|
||||||
|
|
||||||
|
if (triggerName == "pushDefault") then
|
||||||
|
player:runEventFunction("delegateEvent", player, man0u0Quest, "processTtrNomal002", nil, nil, nil);
|
||||||
|
elseif (triggerName == "talkDefault") then
|
||||||
|
if (man0u0Quest:GetQuestFlag(MAN0U0_FLAG_TUTORIAL1_DONE) == false) then
|
||||||
|
player:runEventFunction("delegateEvent", player, man0u0Quest, "processTtrNomal003", nil, nil, nil);
|
||||||
|
player:setEventStatus(npc, "pushDefault", false, 0x2);
|
||||||
|
player:getDirector():onTalked(npc);
|
||||||
|
man0u0Quest:SetQuestFlag(MAN0U0_FLAG_TUTORIAL1_DONE, true);
|
||||||
|
man0u0Quest:SaveData();
|
||||||
|
else
|
||||||
|
player:runEventFunction("delegateEvent", player, man0u0Quest, "processTtrMini001", nil, nil, nil);
|
||||||
|
|
||||||
|
if (man0u0Quest:GetQuestFlag(MAN0U0_FLAG_MINITUT_DONE1) == false) then
|
||||||
|
npc:setQuestGraphic(player, 0x0);
|
||||||
|
man0u0Quest:SetQuestFlag(MAN0U0_FLAG_MINITUT_DONE1, true);
|
||||||
|
man0u0Quest:SaveData();
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
else
|
||||||
|
player:endEvent();
|
||||||
|
end
|
||||||
|
else
|
||||||
|
player:endEvent(); --Should not be here w.o this quest
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventUpdate(player, npc)
|
||||||
|
|
||||||
|
player:endEvent();
|
||||||
|
|
||||||
|
end
|
16
scripts/zones/184/npcs/pplStd_wil0Btl01_0b@0B800.lua
Normal file
16
scripts/zones/184/npcs/pplStd_wil0Btl01_0b@0B800.lua
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
require("/quests/man/man0u0")
|
||||||
|
|
||||||
|
function init(npc)
|
||||||
|
return "/Chara/Npc/Populace/PopulaceStandard", false, false, false, false, false, npc.getActorClassId(), false, false, 0, 1, "TEST";
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventStarted(player, npc, triggerName)
|
||||||
|
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function onEventUpdate(player, npc)
|
||||||
|
|
||||||
|
player:endEvent();
|
||||||
|
|
||||||
|
end
|
20
scripts/zones/184/zone.lua
Normal file
20
scripts/zones/184/zone.lua
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
|
||||||
|
|
||||||
|
function onZoneInit(zone)
|
||||||
|
end
|
||||||
|
|
||||||
|
function onZoneIn(player)
|
||||||
|
|
||||||
|
openingQuest = player:getQuest(110009);
|
||||||
|
|
||||||
|
--Opening Quest
|
||||||
|
if (openingQuest ~= nil) then
|
||||||
|
if (openingQuest:GetQuestFlag(0) == false) then
|
||||||
|
player:kickEvent(player:getDirector(), "noticeEvent");
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function onZoneOut(zone, player)
|
||||||
|
end
|
@ -27,7 +27,6 @@ function onEventStarted(player, npc, triggerName)
|
|||||||
npc:setQuestGraphic(player, 0x0);
|
npc:setQuestGraphic(player, 0x0);
|
||||||
man0l0Quest:SetQuestFlag(MAN0L0_FLAG_MINITUT_DONE3, true);
|
man0l0Quest:SetQuestFlag(MAN0L0_FLAG_MINITUT_DONE3, true);
|
||||||
man0l0Quest:SaveData();
|
man0l0Quest:SaveData();
|
||||||
|
|
||||||
player:getDirector():onTalked(npc);
|
player:getDirector():onTalked(npc);
|
||||||
else
|
else
|
||||||
player:runEventFunction("delegateEvent", player, man0l0Quest, "processEvent000_8", nil, nil, nil);
|
player:runEventFunction("delegateEvent", player, man0l0Quest, "processEvent000_8", nil, nil, nil);
|
||||||
|
@ -4,6 +4,7 @@ function onZoneInit(zone)
|
|||||||
end
|
end
|
||||||
|
|
||||||
function onZoneIn(player)
|
function onZoneIn(player)
|
||||||
|
|
||||||
openingQuest = player:getQuest(110001);
|
openingQuest = player:getQuest(110001);
|
||||||
|
|
||||||
--Opening Quest
|
--Opening Quest
|
||||||
|
Loading…
Reference in New Issue
Block a user