public override void Execute(Map.World world) { // test kill leah if (world.HasActor(72)) { world.GetActorByDynamicId(72).Destroy(); } Logger.Debug(" RESCUE CAIN QUEST STARTED "); //Logger.Debug(" Quests.Advance(72095) "); //world.Game.Quests.Advance(72095); Logger.Debug(" Conversation(190404) "); StartConversation(world, 190404); Logger.Debug(" Conversation(166678) "); StartConversation(world, 166678); // "let me open the gate" need if in Old Ruins }
//just for the use of the portal private bool OnUseTeleporterListener(uint actorDynID, Map.World world) { if (world.HasActor(actorDynID)) { var actor = world.GetActorByDynamicId(actorDynID); // it is not null :p Logger.Debug(" supposed portal has type {3} has name {0} and state {1} , has gizmo been operated ? {2} ", actor.NameSNOId, actor.Attributes[Net.GS.Message.GameAttribute.Gizmo_State], actor.Attributes[Net.GS.Message.GameAttribute.Gizmo_Has_Been_Operated], actor.GetType()); while (true) { if (actor.Attributes[Net.GS.Message.GameAttribute.Gizmo_Has_Been_Operated]) { // for some obnoxious reason we should shoot the poor rumfeld here //var actorToShoot = world.GetActorBySNO(3739); //if ( (actorToShoot != null)) // && (world.GetActorsBySNO(3739).Count > 1) ) //{ // Logger.Debug("trying to shoot actor SNO {0}, world contains {1} such actors ", actorToShoot.ActorSNO, world.GetActorsBySNO(3739).Count); // world.Leave(actorToShoot); // or directly remove this shit //} //else //{ // Logger.Debug("No actor to shoot yet"); //} //actorToShoot = world.GetActorBySNO(4580); //if (actorToShoot != null) //{ // Logger.Debug("trying to shoot actor SNO {0}, world contains {1} such actors ", actorToShoot.ActorSNO, world.GetActorsBySNO(3739).Count); // world.Leave(actorToShoot); // or directly remove this shit //} //else //{ // Logger.Debug("No actor to shoot yet"); //} world.Game.Quests.NotifyQuest(87700, Mooege.Common.MPQ.FileFormats.QuestStepObjectiveType.InteractWithActor, portalAID); break; } } } return true; }
//just for the use of the portal private bool OnUseTeleporterListener(uint actorDynID, Map.World world) { if (world.HasActor(actorDynID)) { var actor = world.GetActorByDynamicId(actorDynID); // it is not null :p Logger.Debug(" supposed portal has type {3} has name {0} and state {1} , has gizmo been operated ? {2} ", actor.NameSNOId, actor.Attributes[Net.GS.Message.GameAttribute.Gizmo_State], actor.Attributes[Net.GS.Message.GameAttribute.Gizmo_Has_Been_Operated], actor.GetType()); while (true) { if (actor.Attributes[Net.GS.Message.GameAttribute.Gizmo_Has_Been_Operated]) { world.Game.Quests.NotifyQuest(87700, Mooege.Common.MPQ.FileFormats.QuestStepObjectiveType.InteractWithActor, portalAID); break; } } } return true; }