public PQuestCreature(Creature_spawn Spawn, PQuestObjective Objective) { this.Spawn = Spawn; Name = Spawn.Proto.Name; this.Objective = Objective; if (Objective.Objective.Type == (byte)Objective_Type.QUEST_PROTECT_UNIT) { EvtInterface.AddEvent(Protected, Objective.Objective.Count, 1); } }
public PQuestObject(PQuest_Info Info) : this() { this.Info = Info; Name = Info.Name; Players = new List <Player>(); Stages = new List <PQuestStage>(); foreach (PQuest_Objective Obj in Info.Objectives) { Boolean exists = false; foreach (PQuestStage Stage in Stages) { if (Stage.StageName == Obj.StageName) { exists = true; break; } } if (!exists) { PQuestStage Stage = new PQuestStage(); Stage.StageName = Obj.StageName; Stage.Number = Stages.Count; Stage.Description = Obj.Description; Stages.Add(Stage); } foreach (PQuestStage Stage in Stages) { if (Stage.StageName == Obj.StageName) { PQuestObjective Objective = new PQuestObjective(); Objective.Quest = this; Objective.Objective = Obj; Objective.ObjectiveID = Obj.Guid; Objective.Count = 0; Stage.AddObjective(Objective); } } } }
public void AddObjective(PQuestObjective Objective) { Objectives.Add(Objective); }