Beispiel #1
0
 public EntityState(Vector2 p_v2Pos, ushort p_iAnimation, Cutscene.EntityState.MovementColliderChange p_enColliderChange, int ibitColliderLayer)
 {
     this.iColliderLayer = ibitColliderLayer;
     this.bChangeColliderLayer = true;
     this.v2Pos = p_v2Pos;
     this.iAnimation = p_iAnimation;
     this.enColliderChange = p_enColliderChange;
 }
Beispiel #2
0
 public EntityState(Vector2 p_v2Pos, ushort p_iAnimation, Cutscene.EntityState.MovementColliderChange p_enColliderChange)
 {
     this.v2Pos = p_v2Pos;
     this.iAnimation = p_iAnimation;
     this.enColliderChange = p_enColliderChange;
 }
Beispiel #3
0
 public static Cutscene GetCutscene(CutsceneLibrary.CutsceneID enID)
 {
     Cutscene xCut = new Cutscene();
     if (enID < CutsceneLibrary.CutsceneID._SideQuest_Trials_Challenge01)
     {
         if (enID == CutsceneLibrary.CutsceneID._NPC_MainStory_GrampaMoves)
         {
             xCut.bFadeOnSetup = true;
             xCut.iEndFrame = 80;
             xCut.bRemoveAllMonsters = false;
             xCut.lenItemGrantOnSkip.Add(ItemCodex.ItemTypes._TwoHanded_Stick);
             xCut.AddEvent(1, new DialogueEvent("OldMan02"));
             xCut.AddEvent(2, new WaitForDialogueEvent());
             xCut.AddEvent(new AnimationEvent(81, NPCCodex.NPCTypes.Player01));
             xCut.AddEvent(new AnimationEvent(81, NPCCodex.NPCTypes.Player02));
             xCut.AddEvent(new AnimationEvent(81, NPCCodex.NPCTypes.Player03));
             xCut.AddEvent(new AnimationEvent(81, NPCCodex.NPCTypes.Player04));
             xCut.AddEvent(new ItemGetAnimationEvent(ItemCodex.ItemTypes._TwoHanded_Stick, NPCCodex.NPCTypes.Player01));
             xCut.AddEvent(new ItemGetAnimationEvent(ItemCodex.ItemTypes._TwoHanded_Stick, NPCCodex.NPCTypes.Player02));
             xCut.AddEvent(new ItemGetAnimationEvent(ItemCodex.ItemTypes._TwoHanded_Stick, NPCCodex.NPCTypes.Player03));
             xCut.AddEvent(new ItemGetAnimationEvent(ItemCodex.ItemTypes._TwoHanded_Stick, NPCCodex.NPCTypes.Player04));
             xCut.AddEvent(new WaitEvent(60));
             xCut.AddEvent(new DialogueEvent("OldMan02_GetBranch"));
             xCut.AddEvent(new WaitForDialogueEvent());
             xCut.AddEvent(new AnimationEvent(82, NPCCodex.NPCTypes.Player01));
             xCut.AddEvent(new AnimationEvent(82, NPCCodex.NPCTypes.Player02));
             xCut.AddEvent(new AnimationEvent(82, NPCCodex.NPCTypes.Player03));
             xCut.AddEvent(new AnimationEvent(82, NPCCodex.NPCTypes.Player04));
             xCut.AddEvent(new DialogueEvent("OldMan02b"));
             xCut.AddEvent(new WaitForDialogueEvent());
             xCut.AddEvent(10, new MoveEvent(NPCCodex.NPCTypes.StarterTownOldMan01, new Vector2(0f, -1f), 1f, 4, 5, 10));
             xCut.AddEvent(20, new MoveEvent(NPCCodex.NPCTypes.StarterTownOldMan01, new Vector2(1f, 0f), 1f, 5, 3, 45));
             xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(771f, 659f), 2));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(756f, 650f), 2));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(795f, 653f), 2));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(789f, 635f), 2));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.StarterTownOldMan01, new Cutscene.EntityState(new Vector2(819f, 685f), 3));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(771f, 659f), 2));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(756f, 650f), 2));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(795f, 653f), 2));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(789f, 635f), 2));
         }
         else if (enID == CutsceneLibrary.CutsceneID._NPC_MainStory_QuintonGivesSkyTempleQuest)
         {
             xCut.bFadeOnSetup = true;
             xCut.iEndFrame = 80;
             xCut.bRemoveAllMonsters = false;
             xCut.sEnterDialogueOnEnd = "GetFlyingTempleQuest";
             xCut.lenItemGrantOnSkip.Add(ItemCodex.ItemTypes._Special_TeleportPlate);
             xCut.AddEvent(new DialogueEvent("Quintus01"));
             xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Main_Collector_Quintus));
             xCut.AddEvent(new WaitForDialogueEvent());
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Collector_Quintus, new Vector2(0f, 1f), 0.5f, 6, 2, 30));
             xCut.AddEvent(new WaitEvent(30));
             xCut.AddEvent(new WaitEvent(30));
             xCut.AddEvent(new AnimationEvent(81, NPCCodex.NPCTypes.Player01));
             xCut.AddEvent(new ItemGetAnimationEvent(ItemCodex.ItemTypes._Special_TeleportPlate, NPCCodex.NPCTypes.Player01));
             xCut.AddEvent(new WaitEvent(60));
             xCut.AddEvent(new DialogueEvent("Quintus02"));
             xCut.AddEvent(new WaitEvent(30));
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Collector_Quintus, new Vector2(0f, -1f), 0.5f, 4, 2, 30));
             xCut.AddEvent(new WaitEvent(45));
             xCut.AddEvent(new WaitForDialogueEvent());
             xCut.AddEvent(new AnimationEvent(82, NPCCodex.NPCTypes.Player01));
             xCut.AddEvent(new DialogueEvent("Quintus03"));
             xCut.AddEvent(new WaitEvent(40));
             xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player01));
             xCut.AddEvent(new WaitForDialogueEvent());
             xCut.AddEvent(new EndCutscene());
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(387f, 515f), 0));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(387f, 540f), 0));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(359f, 540f), 0));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(411f, 540f), 0));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(387f, 515f), 0));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(387f, 540f), 0));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(359f, 540f), 0));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(411f, 540f), 0));
         }
         else if (enID == CutsceneLibrary.CutsceneID._SideQuest_Evergrind_Bella_RingQuestStarted)
         {
             xCut.bFadeOnSetup = true;
             xCut.iEndFrame = 50;
             xCut.bRemoveAllMonsters = false;
             xCut.sEnterDialogueOnEnd = "Bella_StartRingQuest_Popup";
             xCut.AddEvent(40, new DialogueEvent("Bella_StartRingQuest"));
             xCut.AddEvent(41, new WaitForDialogueEvent());
             xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(462f, 180f), 0));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(441f, 176f), 0));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(425f, 158f), 1));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(494f, 168f), 3));
         }
         else
         {
             if (enID != CutsceneLibrary.CutsceneID.TeleportCut)
             {
                 throw new Exception("LOL bajsa ner dig föffan så lack försöker ladda kattscener som inte finns va lOLOLoll??!!");
             }
             xCut.bUnskippable = true;
             xCut.bFadeOnSetup = false;
             xCut.iEndFrame = 600;
             xCut.bRemoveAllMonsters = false;
             xCut.AddReleaseEvent(new SetAlpha(1f, NPCCodex.NPCTypes.Player01));
             xCut.AddReleaseEvent(new SetAlpha(1f, NPCCodex.NPCTypes.Player02));
             xCut.AddReleaseEvent(new SetAlpha(1f, NPCCodex.NPCTypes.Player03));
             xCut.AddReleaseEvent(new SetAlpha(1f, NPCCodex.NPCTypes.Player04));
             xCut.AddEvent(new SetAlpha(0f, NPCCodex.NPCTypes.Player01));
             xCut.AddEvent(new SetAlpha(0f, NPCCodex.NPCTypes.Player02));
             xCut.AddEvent(new SetAlpha(0f, NPCCodex.NPCTypes.Player03));
             xCut.AddEvent(new SetAlpha(0f, NPCCodex.NPCTypes.Player04));
             xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player01));
             xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player02));
             xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player03));
             xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player04));
             xCut.AddEvent(new WaitEvent(600));
         }
         return xCut;
     }
     if (enID < CutsceneLibrary.CutsceneID._MainStory_FirstCutsceneInHouse)
     {
         if (enID == CutsceneLibrary.CutsceneID._SideQuest_Trials_Challenge01)
         {
             xCut.bFadeOnSetup = false;
             xCut.iEndFrame = 60;
             xCut.bRemoveAllMonsters = false;
             xCut.AddEvent(40, new DialogueEvent("WelcomeChallenge01"));
             xCut.AddEvent(41, new WaitForDialogueEvent());
             xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
         }
         else if (enID == CutsceneLibrary.CutsceneID._SideQuest_Trials_Challenge01_PapaEnter)
         {
             xCut.bFadeOnSetup = false;
             xCut.iEndFrame = 280;
             xCut.bRemoveAllMonsters = false;
             CutsceneEvent move = new AdvancedMoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(514f, 432f), 2f, 4, 0, true, true);
             CutsceneEvent bananen = new MoveCameraEvent(new Vector2(514f, 310f), 2f, false, false);
             xCut.AddEvent(new ReviveAllPlayers());
             xCut.AddEvent(5, new WaitEvent(60));
             xCut.AddEvent(10, move);
             xCut.AddEvent(10, new ToggleMoveCollider(NPCCodex.NPCTypes.Slimy, false));
             xCut.AddEvent(11, bananen);
             xCut.AddEvent(12, new AdvancedMoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(495f, 435f), 2f, 4, 0, true, true));
             xCut.AddEvent(14, new AdvancedMoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(535f, 435f), 2f, 4, 0, true, true));
             xCut.AddEvent(15, new AdvancedMoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(515f, 450f), 2f, 4, 0, true, true));
             xCut.AddEvent(60, new WaitUntilEventsFinished(new CutsceneEvent[]
             {
                 move,
                 bananen
             }));
             xCut.AddEvent(90, new DialogueEvent("TimeForPapaSlime01"));
             xCut.AddEvent(91, new WaitForDialogueEvent());
             xCut.AddEvent(100, new BagmanInstructionEvent(0, 2, new float[0]));
             xCut.AddEvent(110, new WaitEvent(60));
             move = new SlimeMoveEvent(NPCCodex.NPCTypes.Slimy, new Vector2(0f, 1f), 1f, 17, 16, 100);
             xCut.AddEvent(112, new AnimationEvent(16, NPCCodex.NPCTypes.Slimy));
             xCut.AddEvent(112, new CreateFadeInWatcher(NPCCodex.NPCTypes.Slimy, 30));
             xCut.AddEvent(112, new SetPositionEvent(NPCCodex.NPCTypes.Slimy, new Vector2(518f, 233f)));
             xCut.AddEvent(114, new WaitEvent(30));
             xCut.AddEvent(116, move);
             bananen = new MoveCameraEvent(new Vector2(514f, 362f), 0.5f, false, false);
             xCut.AddEvent(118, new WaitEvent(80));
             xCut.AddEvent(120, bananen);
             xCut.AddEvent(122, new WaitUntilEventsFinished(new CutsceneEvent[]
             {
                 move
             }));
             xCut.AddEvent(125, new BagmanInstructionEvent(0, 3, new float[0]));
             xCut.AddEvent(127, new WaitUntilEventsFinished(new CutsceneEvent[]
             {
                 bananen
             }));
             xCut.AddEvent(160, new AnimationEvent(21, NPCCodex.NPCTypes.Slimy));
             xCut.AddEvent(160, new PlaySound("GigaSlime_Transform", false));
             xCut.AddEvent(162, new WaitEvent(57));
             xCut.AddEvent(165, new AnimationEvent(19, NPCCodex.NPCTypes.Slimy));
             xCut.AddEvent(167, new WaitEvent(65));
             xCut.AddEvent(167, new WaitEvent(30));
             xCut.AddEvent(167, new PlaySound("Crowd_Gasp 2", false));
             xCut.AddEvent(167, new WaitEvent(30));
             xCut.AddEvent(170, new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player01, new Vector2(3f, -30f)));
             xCut.AddEvent(170, new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player02, new Vector2(3f, -30f)));
             xCut.AddEvent(170, new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player03, new Vector2(3f, -30f)));
             xCut.AddEvent(170, new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player04, new Vector2(3f, -30f)));
             xCut.AddEvent(170, new PlaySong("BossBattle01", true));
             xCut.sPlayMusicOnEnd = "BossBattle01";
             xCut.AddEvent(172, new WaitEvent(100));
             xCut.AddEvent(new EndCutscene());
             xCut.lxEventsAtEnd.Add(new BagmanInstructionEvent(0, 4, new float[0]));
             xCut.lxEventsAtEnd.Add(new PlaySong("BossBattle01", true));
             xCut.lxEventsAtEnd.Add(new MoveCameraEvent(new Vector2(514f, 362f), 1001f, false, false));
             xCut.lxEventsAtRelease.Add(new EnterAnotherCutscene(CutsceneLibrary.CutsceneID._MainStory_Trials_PapaSlimeBossNamePause));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Slimy, new Cutscene.EntityState(new Vector2(516f, 331f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(514f, 432f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(495f, 435f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(535f, 435f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(515f, 450f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
         }
         else if (enID == CutsceneLibrary.CutsceneID._SideQuest_Trials_Challenge01_PapaDefeated)
         {
             xCut.bFadeOnSetup = false;
             xCut.iEndFrame = 100000;
             xCut.bRemoveAllMonsters = false;
             xCut.bUnskippable = true;
             CutsceneEvent bananen2 = new MoveCameraEvent(NPCCodex.NPCTypes.GuestOrSign01, 1.5f, false, false);
             CutsceneEvent move2 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(516f, 432f), 2f, 4, 0, true, true);
             CutsceneEvent move3 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(495f, 440f), 2f, 4, 0, true, true);
             CutsceneEvent move4 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(540f, 440f), 2f, 4, 0, true, true);
             CutsceneEvent move5 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(514f, 452f), 2f, 4, 0, true, true);
             xCut.AddEvent(new SetAlpha(0f, NPCCodex.NPCTypes.Evergrind_Commentator));
             xCut.AddEvent(new ReviveAllPlayers());
             xCut.AddEvent(20, new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign02));
             xCut.AddEvent(30, bananen2);
             xCut.AddEvent(31, new WaitUntilEventsFinished(new CutsceneEvent[]
             {
                 bananen2
             }));
             xCut.AddEvent(60, new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign03));
             xCut.AddEvent(72, new PlaySound("GigaSlime_Die", false));
             xCut.AddEvent(140, new SetCameraShakeEvent(20));
             xCut.AddEvent(150, new SetCameraShakeEvent(20));
             xCut.AddEvent(160, new SetCameraShakeEvent(20));
             xCut.AddEvent(170, new SetCameraShakeEvent(20));
             xCut.AddEvent(180, new SetCameraShakeEvent(30));
             xCut.AddEvent(200, new SetCameraShakeEvent(40));
             xCut.AddEvent(220, new SetCameraShakeEvent(50));
             xCut.AddEvent(240, new SetCameraShakeEvent(60));
             xCut.AddEvent(260, new SetCameraShakeEvent(60));
             xCut.AddEvent(280, new SetCameraShakeEvent(45));
             xCut.AddEvent(300, new SetCameraShakeEvent(30));
             xCut.AddEvent(260, new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign04));
             xCut.AddEvent(360, new SetPositionEvent(NPCCodex.NPCTypes.GuestOrSign01, new Vector2(65535f, 65535f)));
             xCut.AddEvent(360, new AnimationEvent(2, NPCCodex.NPCTypes.GuestOrSign02));
             xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 6, new float[0]));
             xCut.AddEvent(440, new BagmanInstructionEvent(0, 6, new float[0]));
             bananen2 = new MoveCameraEvent(new Vector2(514f, 432f), 1.5f, false, false);
             xCut.AddEvent(440, move2);
             xCut.AddEvent(440, move3);
             xCut.AddEvent(440, move4);
             xCut.AddEvent(440, move5);
             xCut.AddEvent(440, bananen2);
             xCut.AddEvent(460, new WaitUntilEventsFinished(new CutsceneEvent[]
             {
                 bananen2
             }));
             xCut.lxEventsAtRelease.Add(new ReleaseCameraViewPortEvent());
             xCut.AddEvent(470, new BagmanInstructionEvent(0, 2, new float[0]));
             xCut.AddEvent(470, new BagmanInstructionEvent(1, 0, new float[0]));
             xCut.AddEvent(470, new WaitEvent(60));
             xCut.AddEvent(new EndCutscene());
         }
         else if (enID == CutsceneLibrary.CutsceneID._RogueLike_PapaDefeated)
         {
             xCut.bFadeOnSetup = false;
             xCut.iEndFrame = 100000;
             xCut.bRemoveAllMonsters = false;
             xCut.bUnskippable = true;
             CutsceneEvent bananen3 = new MoveCameraEvent(NPCCodex.NPCTypes.GuestOrSign01, 1.5f, false, false);
             new AdvancedMoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(516f, 432f), 2f, 4, 0, true, true);
             new AdvancedMoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(495f, 440f), 2f, 4, 0, true, true);
             new AdvancedMoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(540f, 440f), 2f, 4, 0, true, true);
             new AdvancedMoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(514f, 452f), 2f, 4, 0, true, true);
             xCut.AddEvent(new SetAlpha(0f, NPCCodex.NPCTypes.Evergrind_Commentator));
             xCut.AddEvent(new ReviveAllPlayers());
             xCut.AddEvent(20, new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign02));
             xCut.AddEvent(30, bananen3);
             xCut.AddEvent(31, new WaitUntilEventsFinished(new CutsceneEvent[]
             {
                 bananen3
             }));
             xCut.AddEvent(60, new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign03));
             xCut.AddEvent(72, new PlaySound("GigaSlime_Die", false));
             xCut.AddEvent(140, new SetCameraShakeEvent(20));
             xCut.AddEvent(150, new SetCameraShakeEvent(20));
             xCut.AddEvent(160, new SetCameraShakeEvent(20));
             xCut.AddEvent(170, new SetCameraShakeEvent(20));
             xCut.AddEvent(180, new SetCameraShakeEvent(30));
             xCut.AddEvent(200, new SetCameraShakeEvent(40));
             xCut.AddEvent(220, new SetCameraShakeEvent(50));
             xCut.AddEvent(240, new SetCameraShakeEvent(60));
             xCut.AddEvent(260, new SetCameraShakeEvent(60));
             xCut.AddEvent(280, new SetCameraShakeEvent(45));
             xCut.AddEvent(300, new SetCameraShakeEvent(30));
             xCut.AddEvent(260, new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign04));
             xCut.AddEvent(360, new SetPositionEvent(NPCCodex.NPCTypes.GuestOrSign01, new Vector2(65535f, 65535f)));
             xCut.AddEvent(360, new AnimationEvent(2, NPCCodex.NPCTypes.GuestOrSign02));
             xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 6, new float[0]));
             xCut.AddEvent(440, new BagmanInstructionEvent(0, 6, new float[0]));
             xCut.AddEvent(470, new WaitEvent(60));
             xCut.AddEvent(new EndCutscene());
         }
         else if (enID == CutsceneLibrary.CutsceneID._MemoryRoom_PapaDefeated)
         {
             xCut.bFadeOnSetup = false;
             xCut.iEndFrame = 100000;
             xCut.bRemoveAllMonsters = false;
             xCut.bUnskippable = false;
             CutsceneEvent bananen4 = new MoveCameraEvent(NPCCodex.NPCTypes.GuestOrSign01, 1.5f, false, false);
             new AdvancedMoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(516f, 432f), 2f, 4, 0, true, true);
             new AdvancedMoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(495f, 440f), 2f, 4, 0, true, true);
             new AdvancedMoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(540f, 440f), 2f, 4, 0, true, true);
             new AdvancedMoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(514f, 452f), 2f, 4, 0, true, true);
             xCut.AddEvent(new SetAlpha(0f, NPCCodex.NPCTypes.Evergrind_Commentator));
             xCut.AddEvent(new ReviveAllPlayers());
             xCut.AddEvent(new BagmanInstructionEvent(0, 10, new float[0]));
             xCut.AddEvent(20, new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign02));
             xCut.AddEvent(30, bananen4);
             xCut.AddEvent(31, new WaitUntilEventsFinished(new CutsceneEvent[]
             {
                 bananen4
             }));
             xCut.AddEvent(60, new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign03));
             xCut.AddEvent(72, new PlaySound("GigaSlime_Die", true));
             xCut.AddEvent(140, new SetCameraShakeEvent(20));
             xCut.AddEvent(150, new SetCameraShakeEvent(20));
             xCut.AddEvent(160, new SetCameraShakeEvent(20));
             xCut.AddEvent(170, new SetCameraShakeEvent(20));
             xCut.AddEvent(180, new SetCameraShakeEvent(30));
             xCut.AddEvent(200, new SetCameraShakeEvent(40));
             xCut.AddEvent(220, new SetCameraShakeEvent(50));
             xCut.AddEvent(240, new SetCameraShakeEvent(60));
             xCut.AddEvent(260, new SetCameraShakeEvent(60));
             xCut.AddEvent(280, new SetCameraShakeEvent(45));
             xCut.AddEvent(300, new SetCameraShakeEvent(30));
             xCut.AddEvent(260, new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign04));
             xCut.AddEvent(360, new BagmanInstructionEvent(0, 7, new float[0]));
             xCut.AddEvent(360, new SetPositionEvent(NPCCodex.NPCTypes.GuestOrSign01, new Vector2(65535f, 65535f)));
             xCut.AddEvent(360, new AnimationEvent(2, NPCCodex.NPCTypes.GuestOrSign02));
             xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 6, new float[0]));
             xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 7, new float[0]));
             xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 8, new float[0]));
             xCut.AddEvent(440, new BagmanInstructionEvent(0, 6, new float[0]));
             bananen4 = new MoveCameraEvent(MoveCameraEvent.GetPosition.LocalPlayer, 1.5f, false, false);
             xCut.AddEvent(440, bananen4);
             xCut.AddEvent(460, new WaitUntilEventsFinished(new CutsceneEvent[]
             {
                 bananen4
             }));
             xCut.AddEvent(470, new WaitEvent(40));
             xCut.lxEventsAtRelease.Add(new ReleaseCameraViewPortEvent());
             xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 7, new float[0]));
             xCut.AddEvent(new EndCutscene());
             xCut.lxEventsAtRelease.Add(new ReleaseCameraViewPortEvent());
         }
         else if (enID == CutsceneLibrary.CutsceneID._MemoryRoom_GundamDefeated)
         {
             xCut.bFadeOnSetup = false;
             xCut.bRemoveAllMonsters = false;
             xCut.bUnskippable = true;
             xCut.AddEvent(new BagmanInstructionEvent(0, 10, new float[0]));
             xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(277f, 383f), 2f, 4, 0, true, true));
             xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(358f, 377f), 2f, 4, 3, true, true));
             xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(226f, 339f), 2f, 4, 1, true, true));
             xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(364f, 343f), 2f, 4, 3, true, true));
             xCut.AddEvent(new WaitEvent(30));
             xCut.AddEvent(new WaitEvent(200));
             xCut.AddEvent(new StopSong(false));
             xCut.AddEvent(new WaitEvent(100));
             xCut.AddEvent(new BagmanInstructionEvent(0, 11, new float[0]));
             xCut.lxEventsAtRelease.Add(new BagmanInstructionEvent(0, 103, new float[0]));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(277f, 383f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(358f, 377f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(226f, 339f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(364f, 343f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
         }
         else if (enID == CutsceneLibrary.CutsceneID._RogueLike_FightBegin)
         {
             xCut.bFadeOnSetup = false;
             xCut.bUnskippable = true;
             xCut.bRemoveAllMonsters = false;
             xCut.iEndFrame = 70;
             CutsceneEvent it = new StartBossNameFlash(EnemyCodex.EnemyTypes.GreenSlime);
             xCut.AddEvent(10, it);
             xCut.AddEvent(20, new WaitUntilEventsFinished(new CutsceneEvent[]
             {
                 it
             }));
             xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
         }
         else if (enID == CutsceneLibrary.CutsceneID._RogueLike_ChallengeBegin)
         {
             xCut.bFadeOnSetup = false;
             xCut.bUnskippable = true;
             xCut.bRemoveAllMonsters = false;
             xCut.iEndFrame = 21;
             CutsceneEvent it2 = new StartChallengeFlash();
             xCut.AddEvent(10, it2);
             xCut.AddEvent(20, new WaitUntilEventsFinished(new CutsceneEvent[]
             {
                 it2
             }));
             xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
             xCut.lxEventsAtEnd.Add(new ReleaseCameraViewPortEvent());
         }
         else if (enID == CutsceneLibrary.CutsceneID._RogueLike_FloorTransferRun)
         {
             xCut.bFadeOnSetup = false;
             xCut.bUnskippable = true;
             xCut.bRemoveAllMonsters = false;
             xCut.enZoneToAtEnd = Level.ZoneEnum.RogueLike_NewFloor;
             xCut.iZoneSpawnPoint = 3;
             xCut.AddEvent(new BagmanInstructionEvent(100, 0, new float[0]));
             xCut.AddEvent(new ToggleMoveCollider(NPCCodex.NPCTypes.Player01, false));
             xCut.AddEvent(new ToggleMoveCollider(NPCCodex.NPCTypes.Player02, false));
             xCut.AddEvent(new ToggleMoveCollider(NPCCodex.NPCTypes.Player03, false));
             xCut.AddEvent(new ToggleMoveCollider(NPCCodex.NPCTypes.Player04, false));
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, -0.8f), 1f, 4, 4, 1000));
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(0f, -0.8f), 1f, 4, 4, 1000));
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(0f, -0.8f), 1f, 4, 4, 1000));
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(0f, -0.8f), 1f, 4, 4, 1000));
             xCut.AddEvent(new WaitIndefinitelyEvent());
         }
         else if (enID == CutsceneLibrary.CutsceneID._RogueLike_FloorTransferTeleport)
         {
             xCut.bFadeOnSetup = false;
             xCut.bUnskippable = true;
             xCut.bRemoveAllMonsters = false;
             xCut.enZoneToAtEnd = Level.ZoneEnum.RogueLike_NewFloor;
             xCut.iZoneSpawnPoint = 0;
             xCut.AddEvent(new BagmanInstructionEvent(100, 0, new float[0]));
             xCut.AddEvent(new ToggleMoveCollider(NPCCodex.NPCTypes.Player01, false));
             xCut.AddEvent(new ToggleMoveCollider(NPCCodex.NPCTypes.Player02, false));
             xCut.AddEvent(new ToggleMoveCollider(NPCCodex.NPCTypes.Player03, false));
             xCut.AddEvent(new ToggleMoveCollider(NPCCodex.NPCTypes.Player04, false));
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, -0.8f), 1f, 4, 4, 1000));
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(0f, -0.8f), 1f, 4, 4, 1000));
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(0f, -0.8f), 1f, 4, 4, 1000));
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(0f, -0.8f), 1f, 4, 4, 1000));
             xCut.AddEvent(new WaitIndefinitelyEvent());
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(320f, 360f), 4));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(314f, 364f), 4));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(326f, 368f), 4));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(323f, 370f), 4));
         }
         else if (enID == CutsceneLibrary.CutsceneID._RogueLike_FloorTransferFall)
         {
             xCut.bFadeOnSetup = false;
             xCut.bUnskippable = true;
             xCut.bRemoveAllMonsters = false;
             xCut.enZoneToAtEnd = Level.ZoneEnum.RogueLike_NewFloor;
             xCut.iZoneSpawnPoint = 3;
             xCut.AddEvent(new BagmanInstructionEvent(100, 0, new float[0]));
             xCut.AddEvent(new ToggleMoveCollider(NPCCodex.NPCTypes.Player01, false));
             xCut.AddEvent(new ToggleMoveCollider(NPCCodex.NPCTypes.Player02, false));
             xCut.AddEvent(new ToggleMoveCollider(NPCCodex.NPCTypes.Player03, false));
             xCut.AddEvent(new ToggleMoveCollider(NPCCodex.NPCTypes.Player04, false));
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, 0.8f), 1f, 86, 86, 1000));
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(0f, 0.8f), 1f, 86, 86, 1000));
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(0f, 0.8f), 1f, 86, 86, 1000));
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(0f, 0.8f), 1f, 86, 86, 1000));
             xCut.AddEvent(new WaitIndefinitelyEvent());
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(307f, 10f), 86));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(280f, -12f), 86));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(330f, -8f), 86));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(300f, -20f), 86));
         }
         else if (enID == CutsceneLibrary.CutsceneID._RogueLike_FirstArcadiaCutscene)
         {
             xCut.bFadeOnSetup = false;
             xCut.bUnskippable = false;
             xCut.AddEvent(new WaitEvent(15));
             xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.GuestOrSign01, new Vector2(0f, -30f)));
             xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign01));
             xCut.AddEvent(new WaitEvent(35));
             xCut.AddEvent(new DialogueEvent("Mayor_Welcome01"));
             xCut.AddEvent(new WaitEvent(30));
             xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Player01));
             xCut.AddEvent(new WaitForDialogueEvent());
             xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Question, NPCCodex.NPCTypes.Player01, new Vector2(0f, -30f)));
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign01, new Vector2(1f, 0f), 1f, 5, 1, 40));
             xCut.AddEvent(new WaitEvent(45));
             xCut.AddEvent(new DialogueEvent("Mayor_Welcome02"));
             xCut.AddEvent(new WaitForDialogueEvent());
             xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Dots, NPCCodex.NPCTypes.GuestOrSign01, new Vector2(0f, -30f)));
             xCut.AddEvent(new WaitEvent(70));
             xCut.AddEvent(new DialogueEvent("Mayor_Welcome03"));
             xCut.AddEvent(new WaitForDialogueEvent());
             xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Heart, NPCCodex.NPCTypes.GuestOrSign01, new Vector2(0f, -30f)));
             xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Dots, NPCCodex.NPCTypes.Player01, new Vector2(0f, -30f)));
             xCut.AddEvent(new WaitEvent(45));
             xCut.AddEvent(new DialogueEvent("Mayor_Welcome04"));
             xCut.AddEvent(new WaitForDialogueEvent());
             xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Examine, NPCCodex.NPCTypes.GuestOrSign01, new Vector2(0f, -30f)));
             xCut.AddEvent(new WaitEvent(45));
             xCut.AddEvent(new DialogueEvent("Mayor_Welcome05"));
             xCut.AddEvent(new WaitForDialogueEvent());
             xCut.AddEvent(new WaitEvent(15));
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign01, new Vector2(-1f, 0f), 1f, 7, 2, 40));
             xCut.AddEvent(new WaitEvent(40));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(339f, 180f), 3));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(339f, 180f), 2));
         }
         else if (enID == CutsceneLibrary.CutsceneID._RogueLike_RogueGundamDeath)
         {
             xCut.bFadeOnSetup = false;
             xCut.bRemoveAllMonsters = false;
             xCut.bUnskippable = true;
             xCut.AddEvent(new BagmanInstructionEvent(0, 10, new float[0]));
             xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(277f, 383f), 2f, 4, 0, true, true));
             xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(358f, 377f), 2f, 4, 3, true, true));
             xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(226f, 339f), 2f, 4, 1, true, true));
             xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(364f, 343f), 2f, 4, 3, true, true));
             xCut.AddEvent(new WaitEvent(30));
             xCut.AddEvent(new WaitEvent(200));
             xCut.AddEvent(new MoveCameraEvent(new Vector2(320f, 330f), 1f, true, true));
             xCut.AddEvent(new StopSong(false));
             xCut.AddEvent(new WaitEvent(100));
             xCut.AddEvent(new BagmanInstructionEvent(0, 11, new float[0]));
             xCut.lxEventsAtRelease.Add(new BagmanInstructionEvent(0, 103, new float[0]));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(277f, 383f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(358f, 377f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(226f, 339f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(364f, 343f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
         }
         else if (enID == CutsceneLibrary.CutsceneID._RogueLike_RogueJumpDownYo)
         {
             xCut.bFadeOnSetup = false;
             xCut.bUnskippable = true;
             xCut.bRemoveAllMonsters = false;
             xCut.enZoneToAtEnd = Level.ZoneEnum.RogueLike_Transfer;
             xCut.iZoneSpawnPoint = 0;
             xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player01));
             xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player02));
             xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player03));
             xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player04));
             xCut.AddEvent(new WaitEvent(5));
             xCut.AddEvent(new JumpDownEvent(NPCCodex.NPCTypes.Player01, 1000f, 2, 100f));
             xCut.AddEvent(new WaitEvent(20));
             xCut.AddEvent(new JumpDownEvent(NPCCodex.NPCTypes.Player02, 1000f, 2, 100f));
             xCut.AddEvent(new WaitEvent(14));
             xCut.AddEvent(new JumpDownEvent(NPCCodex.NPCTypes.Player03, 1000f, 2, 100f));
             xCut.AddEvent(new WaitEvent(14));
             xCut.AddEvent(new JumpDownEvent(NPCCodex.NPCTypes.Player04, 1000f, 2, 100f));
             xCut.AddEvent(new WaitEvent(14));
             xCut.AddEvent(new WaitEvent(10 + Program.game.dixPlayers.Count * 10));
             xCut.AddEvent(new ToggleMoveCollider(NPCCodex.NPCTypes.Player01, false));
             xCut.AddEvent(new ToggleMoveCollider(NPCCodex.NPCTypes.Player02, false));
             xCut.AddEvent(new ToggleMoveCollider(NPCCodex.NPCTypes.Player03, false));
             xCut.AddEvent(new ToggleMoveCollider(NPCCodex.NPCTypes.Player04, false));
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, -0.8f), 1f, 4, 4, 1000));
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(0f, -0.8f), 1f, 4, 4, 1000));
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(0f, -0.8f), 1f, 4, 4, 1000));
             xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(0f, -0.8f), 1f, 4, 4, 1000));
         }
         else
         {
             if (enID != CutsceneLibrary.CutsceneID._RogueLike_RogueLandInWinterHey)
             {
                 throw new Exception("LOL bajsa ner dig föffan så lack försöker ladda kattscener som inte finns va lOLOLoll??!!");
             }
             xCut.bFadeOnSetup = false;
             xCut.bUnskippable = true;
             xCut.bRemoveAllMonsters = false;
             xCut.AddEvent(new SetVirtualHeight(1000f, NPCCodex.NPCTypes.Player01));
             xCut.AddEvent(new SetVirtualHeight(1000f, NPCCodex.NPCTypes.Player02));
             xCut.AddEvent(new SetVirtualHeight(1000f, NPCCodex.NPCTypes.Player03));
             xCut.AddEvent(new SetVirtualHeight(1000f, NPCCodex.NPCTypes.Player04));
             xCut.AddEvent(new JumpDownEvent(NPCCodex.NPCTypes.Player01, 240f, 1, 1000f));
             xCut.AddEvent(new WaitEvent(20));
             xCut.AddEvent(new JumpDownEvent(NPCCodex.NPCTypes.Player02, 260f, 1, 1000f));
             xCut.AddEvent(new WaitEvent(14));
             xCut.AddEvent(new JumpDownEvent(NPCCodex.NPCTypes.Player03, 250f, 1, 1000f));
             xCut.AddEvent(new WaitEvent(14));
             xCut.AddEvent(new JumpDownEvent(NPCCodex.NPCTypes.Player04, 245f, 1, 1000f));
             xCut.AddEvent(new WaitEvent(14));
             xCut.AddEvent(new WaitEvent(50));
             xCut.AddEvent(new SetVirtualHeight(0f, NPCCodex.NPCTypes.Player01));
             xCut.AddEvent(new SetVirtualHeight(0f, NPCCodex.NPCTypes.Player02));
             xCut.AddEvent(new SetVirtualHeight(0f, NPCCodex.NPCTypes.Player03));
             xCut.AddEvent(new SetVirtualHeight(0f, NPCCodex.NPCTypes.Player04));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(347f, -40f), 2));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(320f, -20f), 2));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(370f, -30f), 2));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(340f, -35f), 2));
         }
         return xCut;
     }
     if (enID != CutsceneLibrary.CutsceneID.FirstTest)
     {
         if (enID == CutsceneLibrary.CutsceneID.DaddyBoii)
         {
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(858f, 306f), 0));
             xCut.denxEndState.Add(NPCCodex.NPCTypes.Father, new Cutscene.EntityState(new Vector2(856f, 272f), 2));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(197f, 153f) * 2f, 0));
             xCut.denxStartState.Add(NPCCodex.NPCTypes.Father, new Cutscene.EntityState(new Vector2(428f, 111f) * 2f, 0));
         }
         else if (enID != CutsceneLibrary.CutsceneID.FirstMrBag)
         {
             if (enID == CutsceneLibrary.CutsceneID._MainStory_FirstCutsceneInHouse)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 280;
                 xCut.bRemoveAllMonsters = false;
                 xCut.sEnterDialogueOnEnd = "GetFirstMainQuest";
                 xCut.AddEvent(0, new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, 1f), 1.5f, 6, 7, 13));
                 xCut.AddEvent(13, new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(-1f, 0f), 1.5f, 7, 6, 29));
                 xCut.AddEvent(42, new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, 1f), 1.5f, 6, 5, 70));
                 xCut.AddEvent(112, new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(1f, 0f), 1.5f, 5, 0, 22));
                 xCut.AddEvent(134, new DialogueEvent("StartCutscene01"));
                 xCut.AddEvent(135, new WaitForDialogueEvent());
                 xCut.AddEvent(145, new MoveEvent(NPCCodex.NPCTypes.Father, new Vector2(0f, 1f), 0.5f, 6, 2, 50));
                 xCut.AddEvent(200, new DialogueEvent("StartCutscene02"));
                 xCut.AddEvent(201, new WaitForDialogueEvent());
                 xCut.AddEvent(203, new AnimationEvent(68, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(205, new MoveEvent(NPCCodex.NPCTypes.Father, new Vector2(0f, -1f), 0.5f, 4, 2, 50));
                 xCut.AddEvent(260, new AnimationEvent(0, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(270, new DialogueEvent("StartCutscene03"));
                 xCut.AddEvent(271, new WaitForDialogueEvent());
                 xCut.AddEvent(280, new EndCutscene());
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(14179f, 89f), 2));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Father, new Cutscene.EntityState(new Vector2(14168f, 173f), 2));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(14168f, 214f), 0));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Father, new Cutscene.EntityState(new Vector2(14168f, 173f), 2));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_FirstCutsceneInHouse_Clients)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 280;
                 xCut.bRemoveAllMonsters = false;
                 xCut.sEnterDialogueOnEnd = "GetFirstMainQuest";
                 xCut.AddEvent(0, new WaitEvent(120));
                 xCut.AddEvent(2, new CreateFadeInWatcher(NPCCodex.NPCTypes.Player01, 20));
                 xCut.AddEvent(2, new SetPositionEvent(NPCCodex.NPCTypes.Player01, new Vector2(14179f, 89f)));
                 xCut.AddEvent(2, new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, 1f), 1.5f, 6, 7, 13));
                 xCut.AddEvent(15, new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(-1f, 0f), 1.5f, 7, 6, 29));
                 xCut.AddEvent(44, new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, 1f), 1.5f, 6, 5, 70));
                 xCut.AddEvent(114, new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(1f, 0f), 1.5f, 5, 0, 22));
                 xCut.AddEvent(134, new DialogueEvent("StartCutscene01"));
                 xCut.AddEvent(135, new WaitForDialogueEvent());
                 xCut.AddEvent(145, new MoveEvent(NPCCodex.NPCTypes.Father, new Vector2(0f, 1f), 0.5f, 6, 2, 50));
                 xCut.AddEvent(200, new DialogueEvent("StartCutscene02"));
                 xCut.AddEvent(201, new WaitForDialogueEvent());
                 xCut.AddEvent(203, new AnimationEvent(81, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(203, new ItemGetAnimationEvent(ItemCodex.ItemTypes._Misc_BagLol, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(205, new MoveEvent(NPCCodex.NPCTypes.Father, new Vector2(0f, -1f), 0.5f, 4, 2, 50));
                 xCut.AddEvent(240, new DialogueEvent("GotTheBag"));
                 xCut.AddEvent(241, new WaitForDialogueEvent());
                 xCut.AddEvent(245, new AnimationEvent(82, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(250, new WaitEvent(10));
                 xCut.AddEvent(260, new AnimationEvent(0, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(270, new DialogueEvent("StartCutscene03"));
                 xCut.AddEvent(271, new WaitForDialogueEvent());
                 xCut.AddEvent(280, new EndCutscene());
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(14179f, 5000f), 6));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(14170f, 265f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(14150f, 275f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(14190f, 275f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Father, new Cutscene.EntityState(new Vector2(14168f, 173f), 2));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(14168f, 214f), 0));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Father, new Cutscene.EntityState(new Vector2(14168f, 173f), 2));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_GetToCity_MrBagIntro)
             {
                 xCut.bRemoveAllMonsters = false;
                 xCut.lenCreateOnStart.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, 1f), 2f, 6, 10, 70));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(0f, 1f), 2f, 6, 0, 104));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(0f, 1f), 2f, 6, 0, 110));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(0f, 1f), 2f, 6, 0, 104));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Question, NPCCodex.NPCTypes.Player01, new Vector2(4f, -30f)));
                 xCut.AddEvent(new WaitEvent(64));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(1f, 0f), 1.5f, 5, 0, 10));
                 xCut.AddEvent(new WaitEvent(6));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(-1f, 0f), 1.5f, 7, 1, 14));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new PlaySound("Bag_Appear", false));
                 xCut.AddEvent(new WaitEvent(32));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.MrBag, new Vector2(677f, 220f)));
                 xCut.AddEvent(new AnimationEvent(10, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(1f, 0f), 0.75f, 28));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player01, new Vector2(4f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player02, new Vector2(4f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player03, new Vector2(4f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player04, new Vector2(4f, -30f)));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new DialogueEvent("PoosiIntro01"));
                 xCut.AddEvent(new WaitEvent(18));
                 xCut.AddEvent(new AnimationEvent(13, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new WaitEvent(18));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(1f, 0f), 0.75f, 5, 1, 28));
                 xCut.AddEvent(new PlaySound("Pumpkin_Jump", false));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new DialogueEvent("PoosiIntro02"));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new PlaySound("Pumpkin_Jump", false));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(-1f, 0f), 0.75f, 7, 3, 28));
                 xCut.AddEvent(new WaitEvent(50));
                 xCut.AddEvent(new DialogueEvent("PoosiIntro03"));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(22, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new PlaySound("Bag_Disappear", false));
                 xCut.AddEvent(new WaitEvent(36));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(-1f, 0f), 0.75f, 28));
                 xCut.AddEvent(new WaitEvent(28));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.MrBag, new Vector2(-1000000f, -1000000f)));
                 xCut.AddEvent(new EndCutscene());
                 xCut.lxEventsAtRelease.Add(new BagOfTricksEvent("When you see this box, I'm giving you a hint! Pay attention to it!"));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(677f, 221f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(666f, 258f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(644f, 237f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(705f, 260f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(677f, 81f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(666f, 50f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(665f, 17f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(690f, 52f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_GetToCity_EncounterTeddyFreddy)
             {
                 xCut.bFadeOnSetup = true;
                 xCut.iEndFrame = 300;
                 xCut.bRemoveAllMonsters = false;
                 xCut.lenCreateOnStart.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.AddEvent(0, new SetCameraViewEvent(new Rectangle(981, 176, 640, 360)));
                 xCut.AddEvent(0, new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(1f, 0f), 2f, 5, 9, 95));
                 xCut.AddEvent(0, new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(1f, 0f), 2f, 5, 9, 97));
                 xCut.AddEvent(0, new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(1f, 0f), 2f, 5, 9, 92));
                 xCut.AddEvent(0, new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(1f, 0f), 2f, 5, 9, 94));
                 xCut.AddEvent(0, new CreateBagmanEvent(new PixelFerretFirstBattleBlockade(), 0));
                 xCut.AddEvent(0, new ActivateEnemyEvent(NPCCodex.NPCTypes.Fred));
                 xCut.AddEvent(0, new ActivateEnemyEvent(NPCCodex.NPCTypes.Teddy));
                 xCut.AddEvent(134, new DialogueEvent("FredSaysStop"));
                 xCut.AddEvent(135, new WaitForDialogueEvent());
                 xCut.AddEvent(136, new PlaySound("Bag_Appear", false));
                 xCut.AddEvent(140, new WaitEvent(13));
                 xCut.AddEvent(155, new SetPositionEvent(NPCCodex.NPCTypes.MrBag, new Vector2(1253f, 363f)));
                 xCut.AddEvent(155, new AnimationEvent(10, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(155, new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(1f, 0f), 1f, 28));
                 xCut.AddEvent(195, new DialogueEvent("PoosiWontHaveIt"));
                 xCut.AddEvent(215, new AnimationEvent(12, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(221, new WaitForDialogueEvent());
                 xCut.AddEvent(225, new AnimationEvent(22, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(225, new PlaySound("Bag_Disappear", false));
                 xCut.AddEvent(258, new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(-1f, 0f), 1f, 28));
                 xCut.AddEvent(296, new SetPositionEvent(NPCCodex.NPCTypes.MrBag, new Vector2(-1000000f, -1000000f)));
                 xCut.sPlayMusicOnEnd = "MiniBossBattle01";
                 xCut.AddEvent(280, new PlaySong("MiniBossBattle01", true));
                 xCut.AddEvent(280, new AnimationEvent(29, NPCCodex.NPCTypes.Fred));
                 xCut.AddEvent(280, new AnimationEvent(29, NPCCodex.NPCTypes.Teddy));
                 xCut.AddEvent(289, new BagmanInstructionEvent(0, 0, new float[0]));
                 xCut.AddEvent(290, new DialogueEvent("TeddyFredBattleStart"));
                 xCut.AddEvent(291, new WaitForDialogueEvent());
                 xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 0, new float[0]));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(1063f, 363f), 5));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(1040f, 393f), 5));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(1050f, 337f), 5));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(1033f, 370f), 5));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Teddy, new Cutscene.EntityState(new Vector2(1355f, 340f), 3));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Fred, new Cutscene.EntityState(new Vector2(1355f, 400f), 3));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(1253f, 363f), 1));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(1234f, 393f), 1));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(1234f, 337f), 1));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(1221f, 370f), 1));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Teddy, new Cutscene.EntityState(new Vector2(1355f, 340f), 7));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Fred, new Cutscene.EntityState(new Vector2(1355f, 400f), 7));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_GetToCity_EncounterTeddyFreddy_Beaten)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 440;
                 xCut.bRemoveAllMonsters = false;
                 CutsceneEvent move6 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(1253f, 363f), 2f, 4, 1, true, true);
                 CutsceneEvent move7 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(1355f, 400f), 2f, 33, 3, false, false);
                 CutsceneEvent move8 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(1355f, 340f), 2f, 33, 3, false, false);
                 xCut.AddEvent(0, new AnimationEvent(20, NPCCodex.NPCTypes.Fred));
                 xCut.AddEvent(0, new AnimationEvent(20, NPCCodex.NPCTypes.Teddy));
                 xCut.AddEvent(80, new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Dots, NPCCodex.NPCTypes.Player01, new Vector2(0f, -30f)));
                 xCut.AddEvent(85, new WaitEvent(110));
                 xCut.AddEvent(90, new DialogueEvent("TeddyFredBeaten_PoosiInsult"));
                 xCut.AddEvent(91, new WaitForDialogueEvent());
                 xCut.AddEvent(93, new AnimationEvent(32, NPCCodex.NPCTypes.Fred));
                 xCut.AddEvent(95, new WaitEvent(15));
                 xCut.AddEvent(97, new AnimationEvent(32, NPCCodex.NPCTypes.Teddy));
                 xCut.AddEvent(99, new WaitEvent(15));
                 xCut.AddEvent(110, move6);
                 xCut.AddEvent(112, new AdvancedMoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(1234f, 393f), 2f, 4, 1, true, true));
                 xCut.AddEvent(114, new AdvancedMoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(1234f, 337f), 2f, 4, 1, true, true));
                 xCut.AddEvent(115, new AdvancedMoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(1221f, 370f), 2f, 4, 1, true, true));
                 xCut.AddEvent(130, move7);
                 xCut.AddEvent(135, move8);
                 xCut.AddEvent(150, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     move6,
                     move7,
                     move8
                 }));
                 xCut.AddEvent(155, new DialogueEvent("TeddyFredBeaten"));
                 xCut.AddEvent(156, new WaitForDialogueEvent());
                 move6 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Vilya, new Vector2(1400f, 370f), 1.5f, 56, 3, true, true);
                 xCut.AddEvent(160, new SetPositionEvent(NPCCodex.NPCTypes.Vilya, new Vector2(1640f, 420f)));
                 xCut.AddEvent(160, move6);
                 xCut.AddEvent(161, new PlaySong("MiniBossBattle02", true));
                 xCut.sPlayMusicOnEnd = "MiniBossBattle02";
                 xCut.AddEvent(180, new BagmanInstructionEvent(0, 2, new float[0]));
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 3, new float[0]));
                 xCut.AddEvent(290, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     move6
                 }));
                 xCut.AddEvent(290, new DialogueEvent("EnterVilya"));
                 xCut.AddEvent(291, new WaitForDialogueEvent());
                 xCut.AddEvent(300, new WaitEvent(80));
                 xCut.AddEvent(303, new DialogueEvent("EnterVilya_Pt2"));
                 xCut.AddEvent(304, new WaitForDialogueEvent());
                 move6 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(1264f, 318f), 2f, 33, 0, true, false);
                 move7 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(1359f, 318f), 2f, 33, 0, true, false);
                 xCut.AddEvent(305, move6);
                 xCut.AddEvent(305, move7);
                 xCut.AddEvent(340, new AnimationEvent(28, NPCCodex.NPCTypes.Teddy));
                 xCut.AddEvent(356, new PlaySound("jump_from_bridge", false));
                 xCut.AddEvent(356, new MoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(0f, -1f), 2.5f, 4));
                 xCut.AddEvent(360, new MoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(0f, -1f), 2f, 4));
                 xCut.AddEvent(364, new MoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(0f, -1f), 1.5f, 4));
                 xCut.AddEvent(368, new MoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(0f, -1f), 1f, 4));
                 xCut.AddEvent(370, new AnimationEvent(28, NPCCodex.NPCTypes.Fred));
                 xCut.AddEvent(372, new MoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(0f, -1f), 0.5f, 2));
                 xCut.AddEvent(374, new MoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(0f, -1f), 0f, 2));
                 xCut.AddEvent(376, new MoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(0f, -1f), -1f, 2));
                 xCut.AddEvent(378, new MoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(0f, -1f), -1.5f, 2));
                 xCut.AddEvent(386, new PlaySound("jump_from_bridge", false));
                 xCut.AddEvent(386, new MoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(0f, -1f), 2.5f, 4));
                 xCut.AddEvent(390, new AnimationEvent(1, NPCCodex.NPCTypes.Teddy));
                 xCut.AddEvent(390, new MoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(0f, -1f), 2f, 4));
                 xCut.AddEvent(394, new MoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(0f, -1f), 1.5f, 4));
                 xCut.AddEvent(396, new AnimationEvent(2, NPCCodex.NPCTypes.Teddy));
                 xCut.AddEvent(398, new MoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(0f, -1f), 1f, 4));
                 xCut.AddEvent(402, new MoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(0f, -1f), 0.5f, 2));
                 xCut.AddEvent(404, new MoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(0f, -1f), 0f, 2));
                 xCut.AddEvent(406, new MoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(0f, -1f), -1f, 2));
                 xCut.AddEvent(408, new MoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(0f, -1f), -1.5f, 2));
                 xCut.AddEvent(420, new AnimationEvent(3, NPCCodex.NPCTypes.Fred));
                 xCut.AddEvent(426, new AnimationEvent(2, NPCCodex.NPCTypes.Fred));
                 xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
                 xCut.lxEventsAtRelease.Add(new EnterAnotherCutscene(CutsceneLibrary.CutsceneID._MainStory_GetToCity_EncounterTeddyFreddy_VilyaBossName));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(1253f, 363f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(1234f, 393f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(1234f, 337f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(1221f, 370f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Fred, new Cutscene.EntityState(new Vector2(1264f, 294f), 30, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Teddy, new Cutscene.EntityState(new Vector2(1359f, 294f), 30, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Vilya, new Cutscene.EntityState(new Vector2(1400f, 370f), 7, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_GetToCity_EncounterTeddyFreddy_VilyaBossName)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.bUnskippable = true;
                 xCut.bRemoveAllMonsters = false;
                 xCut.iEndFrame = 42;
                 CutsceneEvent it3 = new StartBossNameFlash(EnemyCodex.EnemyTypes.Vilya);
                 xCut.sPlayMusicOnEnd = "MiniBossBattle02";
                 xCut.AddEvent(2, new PlaySong("MiniBossBattle02", true));
                 xCut.AddEvent(10, it3);
                 xCut.AddEvent(20, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     it3
                 }));
                 xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
                 xCut.lxEventsAtEnd.Add(new ReleaseCameraViewPortEvent());
                 xCut.lxEventsAtEnd.Add(new ActivateEnemyEvent(NPCCodex.NPCTypes.Vilya));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_GetToCity_EncounterTeddyFreddy_VilyaBeat)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 600;
                 xCut.bRemoveAllMonsters = false;
                 xCut.lenCreateOnStart.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.Vilya);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.Fred);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.Teddy);
                 CutsceneEvent move9 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(1253f, 363f), 2f, 4, 1, true, true);
                 CutsceneEvent move10 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Vilya, new Vector2(1400f, 370f), 1f, 8, 50, true, false);
                 CutsceneEvent move11 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(1380f, 370f), 2f, 33, 1, true, false);
                 CutsceneEvent move12 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(1420f, 370f), 2f, 33, 3, true, false);
                 xCut.AddEvent(60, new DialogueEvent("VilyaBeaten"));
                 xCut.AddEvent(61, new WaitForDialogueEvent());
                 xCut.AddEvent(70, new AnimationEvent(54, NPCCodex.NPCTypes.Vilya));
                 xCut.AddEvent(100, move9);
                 xCut.AddEvent(102, new AdvancedMoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(1234f, 393f), 2f, 4, 1, true, true));
                 xCut.AddEvent(104, new AdvancedMoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(1234f, 337f), 2f, 4, 1, true, true));
                 xCut.AddEvent(105, new AdvancedMoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(1221f, 370f), 2f, 4, 1, true, true));
                 xCut.AddEvent(114, move10);
                 xCut.AddEvent(130, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     move10
                 }));
                 xCut.AddEvent(140, new DialogueEvent("VilyaRepositioned"));
                 xCut.AddEvent(150, new AnimationEvent(31, NPCCodex.NPCTypes.Fred));
                 xCut.AddEvent(166, new MoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(0f, -1f), 0f, 4));
                 xCut.AddEvent(170, new MoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(0f, -1f), -0.5f, 4));
                 xCut.AddEvent(170, new PlaySound("jump_from_bridge", false));
                 xCut.AddEvent(170, new AnimationEvent(31, NPCCodex.NPCTypes.Teddy));
                 xCut.AddEvent(174, new MoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(0f, -1f), -1f, 4));
                 xCut.AddEvent(178, new MoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(0f, -1f), -1.5f, 4));
                 xCut.AddEvent(182, new MoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(0f, -1f), -2f, 2));
                 xCut.AddEvent(184, new MoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(0f, -1f), -2.5f, 2));
                 xCut.AddEvent(186, new MoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(0f, -1f), 0f, 4));
                 xCut.AddEvent(186, new MoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(0f, -1f), -3.5f, 2));
                 xCut.AddEvent(188, new MoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(0f, -1f), -4f, 2));
                 xCut.AddEvent(190, new MoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(0f, -1f), -0.5f, 4));
                 xCut.AddEvent(190, new PlaySound("jump_from_bridge", false));
                 xCut.AddEvent(194, new MoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(0f, -1f), -1f, 4));
                 xCut.AddEvent(198, new MoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(0f, -1f), -1.5f, 4));
                 xCut.AddEvent(202, new MoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(0f, -1f), -2f, 2));
                 xCut.AddEvent(204, new MoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(0f, -1f), -2.5f, 2));
                 xCut.AddEvent(206, new MoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(0f, -1f), -3.5f, 2));
                 xCut.AddEvent(208, new MoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(0f, -1f), -4f, 2));
                 xCut.AddEvent(218, new WaitEvent(20));
                 xCut.AddEvent(220, move11);
                 xCut.AddEvent(240, move12);
                 xCut.AddEvent(261, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     move11,
                     move12
                 }));
                 xCut.AddEvent(262, new WaitForDialogueEvent());
                 xCut.AddEvent(270, new PlaySound("Bag_Appear", false));
                 xCut.AddEvent(275, new WaitEvent(22));
                 xCut.AddEvent(280, new SetPositionEvent(NPCCodex.NPCTypes.MrBag, new Vector2(1253f, 363f)));
                 xCut.AddEvent(280, new AnimationEvent(10, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(280, new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(1f, 0f), 1f, 28));
                 xCut.AddEvent(350, new AnimationEvent(12, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(360, new DialogueEvent("PoosiBraggy"));
                 xCut.AddEvent(361, new WaitForDialogueEvent());
                 move11 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(1370f, 355f), 3f, 8, 7, true, false);
                 move12 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(1370f, 385f), 3f, 8, 7, true, false);
                 xCut.AddEvent(362, move11);
                 xCut.AddEvent(362, move12);
                 xCut.AddEvent(380, new DialogueEvent("LetsRetreat"));
                 xCut.AddEvent(381, new WaitForDialogueEvent());
                 xCut.AddEvent(385, new BagmanInstructionEvent(0, 1, new float[0]));
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 1, new float[0]));
                 move10 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Vilya, new Vector2(1675f, 440f), 2f, 8, 7, true, false);
                 move11 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Fred, new Vector2(1675f, 440f), 2f, 8, 7, true, false);
                 move12 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Teddy, new Vector2(1675f, 440f), 2f, 8, 7, true, false);
                 xCut.AddEvent(390, move10);
                 xCut.AddEvent(420, move11);
                 xCut.AddEvent(450, move12);
                 xCut.AddEvent(471, new AnimationEvent(15, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(470, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     move10,
                     move11,
                     move12
                 }));
                 xCut.AddEvent(471, new PlaySong("PillarMountains", true));
                 xCut.sPlayMusicOnEnd = "PillarMountains";
                 xCut.AddEvent(480, new DialogueEvent("PoosiEnd"));
                 xCut.AddEvent(481, new WaitForDialogueEvent());
                 xCut.AddEvent(495, new AnimationEvent(22, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(495, new PlaySound("Bag_Disappear", false));
                 xCut.AddEvent(528, new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(-1f, 0f), 1f, 28));
                 xCut.AddEvent(556, new SetPositionEvent(NPCCodex.NPCTypes.MrBag, new Vector2(-1000000f, -1000000f)));
                 CutsceneEvent bananen5 = new MoveCameraEvent(MoveCameraEvent.GetPosition.LocalPlayer, 1f, false, false);
                 xCut.AddEvent(570, new ReleaseCameraViewRecEvent());
                 xCut.AddEvent(570, bananen5);
                 xCut.AddEvent(595, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     bananen5
                 }));
                 xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
                 xCut.lxEventsAtEnd.Add(new ReleaseCameraViewPortEvent());
                 xCut.lxEventsAtEnd.Add(new ReleaseCameraViewRecEvent());
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(1253f, 363f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(1234f, 393f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(1234f, 337f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(1221f, 370f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Trials_WelcomeToEvergrind)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 207;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(0, new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(-1f, 0f), 1.5f, 7, 11, 174));
                 xCut.AddEvent(0, new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(-1f, 0f), 1.5f, 7, 11, 160));
                 xCut.AddEvent(0, new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(-1f, 0f), 1.5f, 7, 11, 170));
                 xCut.AddEvent(0, new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(-1f, 0f), 1.5f, 7, 11, 164));
                 xCut.AddEvent(30, new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Main_Polarn, new Vector2(0f, -40f)));
                 xCut.AddEvent(31, new AnimationEvent(1, NPCCodex.NPCTypes.Main_Polarn));
                 xCut.AddEvent(32, new WaitEvent(20));
                 xCut.AddEvent(35, new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(0f, 1f), 1f, 6, 2, 23));
                 xCut.AddEvent(58, new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(1f, 0f), 1f, 5, 1, 104));
                 xCut.AddEvent(100, new WaitEvent(40));
                 xCut.AddEvent(110, new DialogueEvent("LukeWelcome01"));
                 xCut.AddEvent(111, new WaitForDialogueEvent());
                 CutsceneEvent bajs = new AdvancedMoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(923f, 468f), 2f, 4, 3, true, false);
                 xCut.AddEvent(115, bajs);
                 xCut.AddEvent(195, new DialogueEvent("BagCommentEvergrind"));
                 xCut.AddEvent(196, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     bajs
                 }));
                 xCut.AddEvent(197, new WaitForDialogueEvent());
                 xCut.AddEvent(120, new ShowZoneName());
                 xCut.AddEvent(200, new EndCutscene());
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.Main_Polarn);
                 xCut.lxEventsAtRelease.Add(new ShowZoneName());
                 xCut.lxEventsAtRelease.Add(new BagmanInstructionEvent(0, 0, new float[0]));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(1637f, 465f), 7));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(1655f, 461f), 7));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(1654f, 444f), 7));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(1652f, 478f), 7));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(1376f, 465f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(1415f, 461f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(1399f, 444f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(1406f, 478f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Trials_WelcomeToEvergrind)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 207;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(0, new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(-1f, 0f), 1.5f, 7, 11, 110));
                 xCut.AddEvent(0, new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(-1f, 0f), 1.5f, 7, 11, 98));
                 xCut.AddEvent(0, new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(-1f, 0f), 1.5f, 7, 11, 108));
                 xCut.AddEvent(0, new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(-1f, 0f), 1.5f, 7, 11, 104));
                 xCut.AddEvent(20, new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Evergrind_Commentator, new Vector2(0f, -40f)));
                 xCut.AddEvent(45, new WaitEvent(20));
                 xCut.AddEvent(50, new MoveEvent(NPCCodex.NPCTypes.Evergrind_Commentator, new Vector2(1f, 0f), 1f, 5, 1, 46));
                 xCut.AddEvent(110, new DialogueEvent("WelcomeToEvergrind"));
                 xCut.AddEvent(111, new WaitForDialogueEvent());
                 xCut.AddEvent(120, new WaitEvent(30));
                 xCut.AddEvent(120, new ShowZoneName());
                 xCut.AddEvent(120, new WaitEvent(120));
                 xCut.AddEvent(125, new DialogueEvent("WelcomeToEvergrind_Pt2"));
                 xCut.AddEvent(126, new WaitForDialogueEvent());
                 xCut.AddEvent(128, new WaitEvent(40));
                 xCut.AddEvent(130, new AnimationEvent(9, NPCCodex.NPCTypes.Evergrind_Commentator));
                 xCut.AddEvent(131, new WaitEvent(40));
                 xCut.AddEvent(133, new DialogueEvent("WelcomeToEvergrind_Pt3"));
                 xCut.AddEvent(134, new WaitForDialogueEvent());
                 CutsceneEvent bajs2 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Evergrind_Commentator, new Vector2(923f, 468f), 2f, 4, 3, true, false);
                 xCut.AddEvent(135, bajs2);
                 xCut.AddEvent(195, new DialogueEvent("BagCommentEvergrind"));
                 xCut.AddEvent(196, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     bajs2
                 }));
                 xCut.AddEvent(197, new WaitForDialogueEvent());
                 xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.Evergrind_Commentator);
                 xCut.lxEventsAtRelease.Add(new BagmanInstructionEvent(0, 0, new float[0]));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(1637f, 468f), 7));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(1655f, 465f), 7));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(1654f, 444f), 7));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(1652f, 478f), 7));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(1472f, 468f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(1511f, 465f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(1495f, 444f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(1499f, 478f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Trials_EnterReception)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 360;
                 xCut.bRemoveAllMonsters = false;
                 xCut.sPlayMusicOnEnd = "ArenaBattle";
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, -1f), 1.5f, 4, 8, 62));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.Player02, new Vector2(315f, 281f)));
                 xCut.AddEvent(new CreateFadeInWatcher(NPCCodex.NPCTypes.Player02, 20));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(0f, -1f), 1.5f, 4, 0, 40));
                 MoveEvent xP3Move = new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(0f, -1f), 1.5f, 4, 0, 30);
                 MoveEvent xP4Move = new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(0f, -1f), 1.5f, 4, 0, 50);
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.Player04, new Vector2(333f, 281f)));
                 xCut.AddEvent(new CreateFadeInWatcher(NPCCodex.NPCTypes.Player04, 20));
                 xCut.AddEvent(xP4Move);
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.Player03, new Vector2(318f, 281f)));
                 xCut.AddEvent(new CreateFadeInWatcher(NPCCodex.NPCTypes.Player03, 20));
                 xCut.AddEvent(xP3Move);
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     xP4Move
                 }));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(1f, 0f), 1.5f, 5, 0, 20));
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     xP3Move
                 }));
                 xP3Move = new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(-1f, 0f), 1.5f, 7, 0, 30);
                 xCut.AddEvent(xP3Move);
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     xP3Move
                 }));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(0f, -1f), 1.5f, 4, 0, 20));
                 xCut.AddEvent(new WaitEvent(32));
                 xCut.AddEvent(new DialogueEvent("LolHejReception"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new StopSong(false));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Evergrind_Receptionist));
                 xCut.AddEvent(new DialogueEvent("MarinoEnter"));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(2));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new WaitEvent(4));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new WaitEvent(4));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new PlaySong("MarinoTheme", false));
                 xCut.AddEvent(new WaitEvent(35));
                 MoveEvent marinoMove = new MoveEvent(NPCCodex.NPCTypes.Main_Rival, new Vector2(0f, -1f), 1f, 4, 0, 90);
                 xCut.AddEvent(new CreateFadeInWatcher(NPCCodex.NPCTypes.Main_Rival, 20));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.Main_Rival, new Vector2(295f, 281f)));
                 xCut.AddEvent(marinoMove);
                 xCut.AddEvent(new WaitEvent(65));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Player02), 5);
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player03), 15);
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new WaitEvent(15));
                 xCut.AddEvent(new DialogueEvent("MarinoPush"), 2);
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     marinoMove
                 }), 2);
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(9, NPCCodex.NPCTypes.Main_Rival));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Rival, new Vector2(-1f, 0f), 0.3f, 7));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Rival, new Vector2(1f, 0f), 1.5f, 12));
                 xCut.AddEvent(new WaitEvent(6));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player01, new Vector2(4f, -30f)));
                 xCut.AddEvent(new AnimationEvent(15, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(1f, 0f), 2.5f, 28, 0.9f));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.Player01, new Vector2(335f, 189f)));
                 xCut.AddEvent(new DialogueEvent("MarinoYouCant"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(5));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Rival, new Vector2(1f, 0f), 1.5f, 5, 1, 150));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, 1f), 1.5f, 6, 0, 14));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player04), 5);
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player02), 20);
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, -1f), 1.5f, 4, 1, 14));
                 xCut.AddEvent(new WaitEvent(5));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Evergrind_Receptionist));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Dots, NPCCodex.NPCTypes.Player01, new Vector2(4f, -30f)));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("Reception_SorryAboutThat"), 15);
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.Main_Rival, 10));
                 xCut.AddEvent(new WaitEvent(25));
                 xCut.AddEvent(new QueueSong("ArenaBattle"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Evergrind_Receptionist));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(-1f, 0f), 1.5f, 7, 0, 16));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new WaitEvent(75));
                 xCut.AddEvent(new DialogueEvent("Reception_ThanksForRegister"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new EndCutscene());
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.Main_Rival);
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Main_Rival, new Cutscene.EntityState(new Vector2(-295f, -282f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(311f, 282f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(1643f, 1643f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(1653f, 1643f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(1638f, 1643f), 0));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(311f, 189f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(315f, 221f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(273f, 206f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(363f, 206f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Evergrind_Receptionist, new Cutscene.EntityState(new Vector2(310f, 153f), 3));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Trials_DiggingBegin)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 280;
                 xCut.bRemoveAllMonsters = false;
                 CutsceneEvent move13 = new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, 1f), 1f, 6, 10, 80);
                 new MoveCameraEvent(new Vector2(514f, 310f), 2f, false, false);
                 xCut.lxEventsAtEnd.Add(new SetAlpha(1f, NPCCodex.NPCTypes.Player01));
                 xCut.lxEventsAtEnd.Add(new SetAlpha(1f, NPCCodex.NPCTypes.Player02));
                 xCut.lxEventsAtEnd.Add(new SetAlpha(1f, NPCCodex.NPCTypes.Player03));
                 xCut.lxEventsAtEnd.Add(new SetAlpha(1f, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new SetAlpha(0f, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new SetAlpha(0f, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new SetAlpha(0f, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new SetAlpha(0f, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new DialogueEvent("WelcomeDig01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new BagmanInstructionEvent(0, 2, new float[0]));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new PlaySound("crowd_excited", false));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new CreateFadeInWatcher(NPCCodex.NPCTypes.Player01, 30));
                 xCut.AddEvent(move13);
                 CutsceneEvent move14 = new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(0f, 1f), 1f, 6, 7, 70);
                 xCut.AddEvent(new WaitEvent(18));
                 xCut.AddEvent(move14);
                 xCut.AddEvent(new CreateFadeInWatcher(NPCCodex.NPCTypes.Player02, 30));
                 CutsceneEvent move15 = new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(0f, 1f), 1f, 6, 5, 70);
                 xCut.AddEvent(new WaitEvent(18));
                 xCut.AddEvent(move15);
                 xCut.AddEvent(new CreateFadeInWatcher(NPCCodex.NPCTypes.Player03, 30));
                 CutsceneEvent move16 = new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(0f, 1f), 1f, 6, 2, 55);
                 xCut.AddEvent(new WaitEvent(18));
                 xCut.AddEvent(move16);
                 xCut.AddEvent(new CreateFadeInWatcher(NPCCodex.NPCTypes.Player04, 30));
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     move13
                 }));
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     move14
                 }));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(-1f, 0f), 1f, 7, 2, 15));
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     move15
                 }));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(1f, 0f), 1f, 5, 2, 15));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 3, new float[0]));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new DialogueEvent("WelcomeDig02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new EndCutscene());
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(515f, 225f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(510f, 220f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(525f, 220f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(520f, 210f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(515f, 305f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(495f, 290f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(540f, 290f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(520f, 265f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Trials_DiggingCompleted)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 60;
                 xCut.bRemoveAllMonsters = false;
                 xCut.bUnskippable = true;
                 xCut.AddEvent(40, new DialogueEvent("AllDugUp"));
                 xCut.AddEvent(41, new WaitForDialogueEvent());
                 xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
                 xCut.enZoneToAtEnd = Level.ZoneEnum.EvergrindArenaWaitingRoom;
                 xCut.iCustomZoningFadeTime = 100;
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Trials_WaitingRoomAfterDigging)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 280;
                 xCut.bRemoveAllMonsters = false;
                 xCut.lxEventsAtEnd.Add(new SetAlpha(1f, NPCCodex.NPCTypes.Main_Rival));
                 xCut.AddEvent(new SetAlpha(0f, NPCCodex.NPCTypes.Main_Rival));
                 xCut.AddEvent(new WaitEvent(120));
                 xCut.AddEvent(new CreateFadeInWatcher(NPCCodex.NPCTypes.Main_Rival, 30));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Rival, new Vector2(0f, 1f), 1f, 6, 3, 60));
                 xCut.AddEvent(new WaitEvent(5));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Evergrind_Guard01, new Vector2(1f, 0f), 1f, 5, 3, 20));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Evergrind_Guard01, new Vector2(-1f, 0f), 1f, 7, 2, 20));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(2));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new WaitEvent(4));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new WaitEvent(3));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new DialogueEvent("WaitingRoomAfterDig_MarinoCut01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(8, NPCCodex.NPCTypes.Main_Rival));
                 xCut.AddEvent(new WaitEvent(80));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Main_Rival));
                 xCut.AddEvent(new DialogueEvent("WaitingRoomAfterDig_MarinoCut02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Rival, new Vector2(1f, 0f), 1f, 5, 2, 50));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new EndCutscene());
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(228f, 123f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(229f, 148f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(211f, 134f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(251f, 138f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Main_Rival, new Cutscene.EntityState(new Vector2(310f, 68f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Main_Rival, new Cutscene.EntityState(new Vector2(360f, 128f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Evergrind_Guard01, new Cutscene.EntityState(new Vector2(310f, 110f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Trials_FirstPuzzleBegin)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 60;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(40, new DialogueEvent("WelcomePuz01"));
                 xCut.AddEvent(41, new WaitForDialogueEvent());
                 xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Trials_FirstPuzzleCompleted)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 60;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(40, new DialogueEvent("FinishedPuz01"));
                 xCut.AddEvent(41, new WaitForDialogueEvent());
                 xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
                 xCut.enZoneToAtEnd = Level.ZoneEnum.EvergrindArenaWaitingRoom;
                 xCut.iCustomZoningFadeTime = 100;
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Trials_SecondPuzzleCompleted)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 60;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(40, new DialogueEvent("FinishedPuz02"));
                 xCut.AddEvent(41, new WaitForDialogueEvent());
                 xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
                 xCut.enZoneToAtEnd = Level.ZoneEnum.EvergrindArena01;
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Trials_ThirdPuzzleCompleted)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 60;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(40, new DialogueEvent("FinishedPuz03"));
                 xCut.AddEvent(41, new WaitForDialogueEvent());
                 xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
                 xCut.enZoneToAtEnd = Level.ZoneEnum.EvergrindArenaWaitingRoom;
                 xCut.iCustomZoningFadeTime = 100;
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Trials_WaitingRoomAfterPuzzle)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 280;
                 xCut.bRemoveAllMonsters = false;
                 xCut.lxEventsAtEnd.Add(new SetAlpha(1f, NPCCodex.NPCTypes.Main_Rival));
                 xCut.AddEvent(new SetAlpha(0f, NPCCodex.NPCTypes.Main_Rival));
                 xCut.AddEvent(new WaitEvent(120));
                 xCut.AddEvent(new CreateFadeInWatcher(NPCCodex.NPCTypes.Main_Rival, 30));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Rival, new Vector2(0f, 1f), 1f, 6, 3, 60));
                 xCut.AddEvent(new WaitEvent(5));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Evergrind_Guard01, new Vector2(1f, 0f), 1f, 5, 3, 20));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Evergrind_Guard01, new Vector2(-1f, 0f), 1f, 7, 2, 20));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(2));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new WaitEvent(4));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new WaitEvent(3));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new DialogueEvent("WaitingRoomAfterPuzzle"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Rival, new Vector2(1f, 0f), 1f, 5, 2, 50));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new EndCutscene());
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(228f, 123f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(229f, 148f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(211f, 134f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(251f, 138f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Main_Rival, new Cutscene.EntityState(new Vector2(310f, 68f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Main_Rival, new Cutscene.EntityState(new Vector2(360f, 128f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Evergrind_Guard01, new Cutscene.EntityState(new Vector2(310f, 110f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Trials_FightingBegin)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 80;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(new DialogueEvent("FightingBegins01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.lxEventsAtRelease.Add(new BagmanInstructionEvent(0, 5, new float[0]));
                 xCut.AddEvent(new EndCutscene());
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(500f, 435f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(530f, 435f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(515f, 445f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Trials_PapaSlimeDefeated)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 100000;
                 xCut.bRemoveAllMonsters = false;
                 CutsceneEvent bananen6 = new MoveCameraEvent(NPCCodex.NPCTypes.GuestOrSign01, 1.5f, false, false);
                 CutsceneEvent move17 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(516f, 432f), 2f, 4, 0, true, true);
                 CutsceneEvent move18 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(495f, 440f), 2f, 4, 0, true, true);
                 CutsceneEvent move19 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(540f, 440f), 2f, 4, 0, true, true);
                 CutsceneEvent move20 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(514f, 452f), 2f, 4, 0, true, true);
                 xCut.AddEvent(new SetAlpha(0f, NPCCodex.NPCTypes.Evergrind_Commentator));
                 xCut.AddEvent(new ReviveAllPlayers());
                 xCut.AddEvent(20, new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign02));
                 xCut.AddEvent(30, bananen6);
                 xCut.AddEvent(31, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     bananen6
                 }));
                 xCut.AddEvent(60, new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign03));
                 xCut.AddEvent(72, new PlaySound("GigaSlime_Die", true));
                 xCut.AddEvent(140, new SetCameraShakeEvent(20));
                 xCut.AddEvent(150, new SetCameraShakeEvent(20));
                 xCut.AddEvent(160, new SetCameraShakeEvent(20));
                 xCut.AddEvent(170, new SetCameraShakeEvent(20));
                 xCut.AddEvent(180, new SetCameraShakeEvent(30));
                 xCut.AddEvent(200, new SetCameraShakeEvent(40));
                 xCut.AddEvent(220, new SetCameraShakeEvent(50));
                 xCut.AddEvent(240, new SetCameraShakeEvent(60));
                 xCut.AddEvent(260, new SetCameraShakeEvent(60));
                 xCut.AddEvent(280, new SetCameraShakeEvent(45));
                 xCut.AddEvent(300, new SetCameraShakeEvent(30));
                 xCut.AddEvent(260, new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign04));
                 xCut.AddEvent(360, new SetPositionEvent(NPCCodex.NPCTypes.GuestOrSign01, new Vector2(65535f, 65535f)));
                 xCut.AddEvent(360, new AnimationEvent(2, NPCCodex.NPCTypes.GuestOrSign02));
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 6, new float[0]));
                 xCut.AddEvent(440, new BagmanInstructionEvent(0, 6, new float[0]));
                 bananen6 = new MoveCameraEvent(new Vector2(514f, 432f), 1.5f, false, false);
                 xCut.AddEvent(440, move17);
                 xCut.AddEvent(440, move18);
                 xCut.AddEvent(440, move19);
                 xCut.AddEvent(440, move20);
                 xCut.AddEvent(440, bananen6);
                 xCut.AddEvent(460, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     bananen6
                 }));
                 xCut.lxEventsAtRelease.Add(new ReleaseCameraViewPortEvent());
                 xCut.AddEvent(480, new DialogueEvent("BeatPapaSlime"));
                 xCut.AddEvent(481, new WaitForDialogueEvent());
                 xCut.AddEvent(new BagmanInstructionEvent(0, 7, new float[0]));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(514f, 372f), 0.5f, false, false));
                 xCut.AddEvent(new WaitEvent(180));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, -1f), 1f, 4, 0, 50));
                 xCut.AddEvent(new WaitEvent(90));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 8, new float[0]));
                 xCut.AddEvent(new WaitEvent(140));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new WaitEvent(260));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 10, new float[0]));
                 xCut.AddEvent(new DialogueEvent("GotCard"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new PlaySound("crowd_excited", false));
                 xCut.AddEvent(new PlaySong("ArenaVictory", true));
                 xCut.AddEvent(new DialogueEvent("GotCard_pt2"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new BagmanInstructionEvent(0, 2, new float[0]));
                 xCut.AddEvent(new WaitEvent(50));
                 xCut.AddEvent(new CreateFadeInWatcher(NPCCodex.NPCTypes.Evergrind_Commentator, 20));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Evergrind_Commentator, new Vector2(0f, 1f), 1f, 6, 5, 100));
                 xCut.AddEvent(new WaitEvent(100));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Evergrind_Commentator, new Vector2(1f, 0f), 1f, 5, 6, 16));
                 xCut.AddEvent(new WaitEvent(16));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Evergrind_Commentator, new Vector2(0f, 1f), 1f, 6, 6, 50));
                 xCut.AddEvent(new WaitEvent(50));
                 xCut.AddEvent(new AnimationEvent(10, NPCCodex.NPCTypes.Evergrind_Commentator));
                 xCut.AddEvent(new AnimationEvent(5000, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(50));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new DialogueEvent("GiveItUp"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 9, new float[0]));
                 xCut.AddEvent(new WaitEvent(200));
                 xCut.AddEvent(new EndCutscene());
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 12, new float[0]));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Evergrind_Commentator, new Cutscene.EntityState(new Vector2(516f, 232f), 6, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.enZoneToAtEnd = Level.ZoneEnum.EvergrindCity_Main;
                 xCut.iZoneSpawnPoint = 2;
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Trials_TimeForPapaSlime)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 280;
                 xCut.bRemoveAllMonsters = false;
                 CutsceneEvent move21 = new AdvancedMoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(514f, 432f), 2f, 4, 0, true, true);
                 CutsceneEvent bananen7 = new MoveCameraEvent(new Vector2(514f, 310f), 2f, false, false);
                 xCut.AddEvent(new ReviveAllPlayers());
                 xCut.AddEvent(5, new WaitEvent(60));
                 xCut.AddEvent(10, move21);
                 xCut.AddEvent(10, new ToggleMoveCollider(NPCCodex.NPCTypes.Slimy, false));
                 xCut.AddEvent(11, bananen7);
                 xCut.AddEvent(12, new AdvancedMoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(495f, 435f), 2f, 4, 0, true, true));
                 xCut.AddEvent(14, new AdvancedMoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(535f, 435f), 2f, 4, 0, true, true));
                 xCut.AddEvent(15, new AdvancedMoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(515f, 450f), 2f, 4, 0, true, true));
                 xCut.AddEvent(60, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     move21,
                     bananen7
                 }));
                 xCut.AddEvent(90, new DialogueEvent("TimeForPapaSlime01"));
                 xCut.AddEvent(91, new WaitForDialogueEvent());
                 xCut.AddEvent(100, new BagmanInstructionEvent(0, 2, new float[0]));
                 xCut.AddEvent(110, new WaitEvent(60));
                 move21 = new SlimeMoveEvent(NPCCodex.NPCTypes.Slimy, new Vector2(0f, 1f), 1f, 17, 16, 100);
                 xCut.AddEvent(112, new AnimationEvent(16, NPCCodex.NPCTypes.Slimy));
                 xCut.AddEvent(112, new CreateFadeInWatcher(NPCCodex.NPCTypes.Slimy, 30));
                 xCut.AddEvent(112, new SetPositionEvent(NPCCodex.NPCTypes.Slimy, new Vector2(518f, 233f)));
                 xCut.AddEvent(114, new WaitEvent(30));
                 xCut.AddEvent(116, move21);
                 bananen7 = new MoveCameraEvent(new Vector2(514f, 362f), 0.5f, false, false);
                 xCut.AddEvent(118, new WaitEvent(80));
                 xCut.AddEvent(120, bananen7);
                 xCut.AddEvent(122, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     move21
                 }));
                 xCut.AddEvent(125, new BagmanInstructionEvent(0, 3, new float[0]));
                 xCut.AddEvent(127, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     bananen7
                 }));
                 xCut.AddEvent(130, new DialogueEvent("BagLaughsAtPapa"));
                 xCut.AddEvent(131, new WaitForDialogueEvent());
                 xCut.AddEvent(140, new AnimationEvent(18, NPCCodex.NPCTypes.Slimy));
                 xCut.AddEvent(150, new WaitEvent(60));
                 xCut.AddEvent(160, new AnimationEvent(18, NPCCodex.NPCTypes.Slimy));
                 xCut.AddEvent(240, new DialogueEvent("SlimeShake"));
                 xCut.AddEvent(241, new WaitForDialogueEvent());
                 xCut.AddEvent(260, new AnimationEvent(21, NPCCodex.NPCTypes.Slimy));
                 xCut.AddEvent(260, new PlaySound("GigaSlime_Transform", false));
                 xCut.AddEvent(262, new WaitEvent(57));
                 xCut.AddEvent(265, new AnimationEvent(19, NPCCodex.NPCTypes.Slimy));
                 xCut.AddEvent(267, new WaitEvent(65));
                 xCut.AddEvent(267, new WaitEvent(30));
                 xCut.AddEvent(267, new PlaySound("Crowd_Gasp 2", false));
                 xCut.AddEvent(267, new WaitEvent(30));
                 xCut.AddEvent(270, new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player01, new Vector2(3f, -30f)));
                 xCut.AddEvent(270, new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player02, new Vector2(3f, -30f)));
                 xCut.AddEvent(270, new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player03, new Vector2(3f, -30f)));
                 xCut.AddEvent(270, new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player04, new Vector2(3f, -30f)));
                 xCut.AddEvent(270, new PlaySong("BossBattle01", true));
                 xCut.sPlayMusicOnEnd = "BossBattle01";
                 xCut.AddEvent(272, new WaitEvent(100));
                 xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
                 xCut.lxEventsAtEnd.Add(new BagmanInstructionEvent(0, 4, new float[0]));
                 xCut.lxEventsAtEnd.Add(new PlaySong("BossBattle01", true));
                 xCut.lxEventsAtEnd.Add(new MoveCameraEvent(new Vector2(514f, 362f), 1001f, false, false));
                 xCut.lxEventsAtRelease.Add(new EnterAnotherCutscene(CutsceneLibrary.CutsceneID._MainStory_Trials_PapaSlimeBossNamePause));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Slimy, new Cutscene.EntityState(new Vector2(516f, 331f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(514f, 432f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(495f, 435f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(535f, 435f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(515f, 450f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Trials_PapaSlimeBossNamePause)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.bUnskippable = true;
                 xCut.bRemoveAllMonsters = false;
                 xCut.iEndFrame = 42;
                 CutsceneEvent it4 = new StartBossNameFlash(EnemyCodex.EnemyTypes.PapaSlime);
                 CutsceneEvent bananen8 = new MoveCameraEvent(MoveCameraEvent.GetPosition.LocalPlayer, 2f, false, false);
                 xCut.AddEvent(30, bananen8);
                 xCut.AddEvent(40, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     bananen8
                 }));
                 xCut.AddEvent(10, it4);
                 xCut.AddEvent(20, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     it4
                 }));
                 xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
                 xCut.lxEventsAtEnd.Add(new ReleaseCameraViewPortEvent());
                 xCut.lxEventsAtEnd.Add(new ActivateEnemyEvent(NPCCodex.NPCTypes.Slimy));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Trials_YouAreCollector)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.lenItemGrantOnSkip.Add(ItemCodex.ItemTypes._Hat_Strawboater);
                 xCut.AddEvent(new FullHealthToAllPlayers());
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(19415f, 555f), 100000f, false, false));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(19415f, 305f), 1f, false, false));
                 xCut.AddEvent(new WaitEvent(200));
                 xCut.AddEvent(new DialogueEvent("BecomeCollector01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Collector_Quintus, new Vector2(0f, 1f), 0.5f, 6, 2, 30));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("BecomeCollector02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(81, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(81, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(81, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(81, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new ItemGetAnimationEvent(ItemCodex.ItemTypes._Hat_Strawboater, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new ItemGetAnimationEvent(ItemCodex.ItemTypes._Hat_Strawboater, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new ItemGetAnimationEvent(ItemCodex.ItemTypes._Hat_Strawboater, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new ItemGetAnimationEvent(ItemCodex.ItemTypes._Hat_Strawboater, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new GiveItemEvent(ItemCodex.ItemTypes._Hat_Strawboater));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Collector_Quintus, new Vector2(0f, -1f), 0.5f, 4, 2, 30));
                 xCut.AddEvent(new DialogueEvent("BecomeCollector02_getitem"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new AnimationEvent(82, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(82, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(82, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(82, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new DialogueEvent("BecomeCollector03"));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Collector_Quintus, new Vector2(0f, -1f), 1f, 4, 2, 120));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign01, new Vector2(0f, -1f), 1f, 4, 2, 120));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign02, new Vector2(0f, -1f), 1f, 4, 2, 120));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Evergrind_Sally, new Vector2(0f, -1f), 1f, 4, 3, 60));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.Main_Collector_Quintus, 10));
                 xCut.AddEvent(new WaitEvent(20));
                 MoveEvent xSallyMoveleft = new MoveEvent(NPCCodex.NPCTypes.Evergrind_Sally, new Vector2(-1f, 0f), 1f, 7, 7, 44);
                 xCut.AddEvent(xSallyMoveleft);
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.GuestOrSign01, 10));
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.GuestOrSign02, 10));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Rival, new Vector2(0f, -1f), 1f, 4, 3, 10));
                 xCut.AddEvent(new WaitEvent(34));
                 xCut.AddEvent(new DialogueEvent("BecomeCollector04"));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Evergrind_Sally, new Vector2(-1f, 0f), 1f, 7, 0, 30));
                 xCut.AddEvent(new WaitEvent(4));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(3));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new WaitEvent(5));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new WaitEvent(2));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new WaitEvent(16));
                 MoveEvent xSallyMoveup = new MoveEvent(NPCCodex.NPCTypes.Evergrind_Sally, new Vector2(0f, -1f), 1f, 4, 4, 100);
                 xCut.AddEvent(xSallyMoveup);
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     xSallyMoveup
                 }));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Evergrind_Sally, new Vector2(0f, -1f), 1f, 4, 4, 15));
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.Evergrind_Sally, 10));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Rival, new Vector2(0f, -1f), 1f, 4, 7, 35));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Tanken, new Vector2(0f, -1f), 1f, 4, 3, 55));
                 xCut.AddEvent(new WaitEvent(25));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Rival, new Vector2(-1f, 0f), 1f, 7, 0, 30));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(0f, -1f), 1f, 4, 3, 35));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Rival, new Vector2(0f, -1f), 1f, 4, 0, 120));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Tanken, new Vector2(-1f, 0f), 1f, 7, 2, 45));
                 xCut.AddEvent(new WaitEvent(5));
                 xCut.AddEvent(new DialogueEvent("BecomeCollector05"));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Tanken, new Vector2(0f, -1f), 1f, 4, 3, 120));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.Main_Rival, 10));
                 xCut.AddEvent(new WaitEvent(70));
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.Main_Tanken, 10));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(0f, -1f), 1f, 4, 3, 35));
                 xCut.AddEvent(new WaitEvent(35));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(-1f, 0f), 1f, 7, 4, 20));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(0f, -1f), 1f, 4, 3, 120));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(3));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new WaitEvent(5));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new WaitEvent(2));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new DialogueEvent("BecomeCollector06"));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new WaitEvent(80));
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.Main_Polarn, 10));
                 xCut.AddEvent(new WaitEvent(15));
                 CutsceneEvent mos = new MoveCameraEvent(MoveCameraEvent.GetPosition.LocalPlayer, 1f, false, false);
                 xCut.AddEvent(mos);
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     mos
                 }));
                 xCut.AddEvent(new ReleaseCameraViewPortEvent());
                 xCut.lxEventsAtRelease.Add(new ReleaseCameraViewPortEvent());
                 xCut.lxEventsAtRelease.Add(new ActivateFlagTrigger(FlagCodex.FlagID._BagTips_CardIsGood, 0));
                 xCut.AddEvent(new EndCutscene());
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(19415f, 335f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(19390f, 355f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(19408f, 360f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(19370f, 360f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Main_Polarn, new Cutscene.EntityState(new Vector2(19436f, 370f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Main_Rival, new Cutscene.EntityState(new Vector2(19445f, 344f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Main_Tanken, new Cutscene.EntityState(new Vector2(19458f, 356f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Evergrind_Sally, new Cutscene.EntityState(new Vector2(19487f, 361f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Main_Collector_Quintus, new Cutscene.EntityState(new Vector2(19414f, 300f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.GuestOrSign01, new Cutscene.EntityState(new Vector2(19395f, 294f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.GuestOrSign02, new Cutscene.EntityState(new Vector2(19433f, 294f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.Main_Collector_Quintus);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.GuestOrSign01);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.GuestOrSign02);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.Main_Tanken);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.Main_Rival);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.Evergrind_Sally);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.Main_Polarn);
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(19415f, 335f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(19390f, 355f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(19408f, 360f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(19370f, 360f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_PumpkinWoods_CurseStart)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.bRemoveAllMonsters = false;
                 xCut.bUnskippable = true;
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(1f, 0f), 1f, 5, 1, 45));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(1f, 0f), 1f, 5, 1, 45));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(1f, 0f), 1f, 5, 1, 45));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(1f, 0f), 1f, 5, 1, 45));
                 xCut.AddEvent(new WaitEvent(80));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Question, NPCCodex.NPCTypes.Player01, new Vector2(0f, -30f)));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new DialogueEvent("MainCurse01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new EndCutscene());
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(59f, 376f), 5, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(44f, 360f), 5, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(33f, 388f), 5, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(13f, 371f), 5, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_PumpkinWoods_CurseEnd)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.bRemoveAllMonsters = false;
                 xCut.bUnskippable = false;
                 xCut.AddEvent(new DialogueEvent("HoodedMan_MainCurseComplete"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 MoveCameraEvent xMove = new MoveCameraEvent(new Vector2(780f, 942f), 1f, true, true);
                 xCut.AddEvent(xMove);
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(809f, 1000f), 1f, 4, 0, true, true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(792f, 999f), 1f, 4, 0, true, true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(826f, 999f), 1f, 4, 0, true, true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(809f, 1031f), 1f, 4, 0, true, true));
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     xMove
                 }));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Halloween_HoodedMan));
                 xCut.AddEvent(new PlaySound("curselifted", true));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 0, new float[0]));
                 xCut.AddEvent(new WaitEvent(92));
                 xCut.AddEvent(new AnimationEvent(5, NPCCodex.NPCTypes.Halloween_HoodedMan));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(780f, 872f), 0.75f, false, false));
                 xCut.AddEvent(new WaitEvent(250));
                 xMove = new MoveCameraEvent(MoveCameraEvent.GetPosition.LocalPlayer, 1f, true, true);
                 xCut.AddEvent(xMove);
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     xMove
                 }));
                 xCut.AddEvent(new EndCutscene());
                 xCut.sEnterDialogueOnEnd = "HoodedMan_CurseLifted";
                 xCut.lxEventsOnSkip.Add(new AnimationEvent(0, NPCCodex.NPCTypes.Halloween_HoodedMan));
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 1, new float[0]));
                 xCut.lxEventsAtRelease.Add(new BagmanInstructionEvent(0, 2, new float[0]));
                 xCut.lxEventsAtRelease.Add(new ReleaseCameraViewPortEvent());
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SkyTemple_DropThePlate)
             {
                 xCut.bFadeOnSetup = true;
                 xCut.bRemoveAllMonsters = false;
                 xCut.bUnskippable = false;
                 xCut.lenCreateOnStart.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.lxEventsAtRelease.Add(new ReleaseCameraViewPortEvent());
                 xCut.lxEventsAtRelease.Add(new ActivateFlagTrigger(FlagCodex.FlagID._MainStory_FlyingTemple_PukeUpTheThang, 1));
                 xCut.lxEventsAtRelease.Add(new ActivateFlagTrigger(FlagCodex.FlagID._BagTips_HowToTeleport, 0));
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(1, 4, new float[0]));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, -1f), 2f, 4, 7, 43));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(0f, -1f), 2f, 4, 8, 35));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(0f, -1f), 2f, 4, 8, 37));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(0f, -1f), 2f, 4, 8, 33));
                 xCut.AddEvent(new WaitEvent(43));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(-1f, 0f), 2f, 7, 11, 18));
                 xCut.AddEvent(new WaitEvent(50));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new PlaySound("Bag_Appear", false));
                 xCut.AddEvent(new WaitEvent(32));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.MrBag, new Vector2(290f, 354f)));
                 xCut.AddEvent(new AnimationEvent(10, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(1f, 0f), 0.75f, 28));
                 xCut.AddEvent(new WaitEvent(50));
                 xCut.AddEvent(new WaitEvent(18));
                 xCut.AddEvent(new AnimationEvent(12, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new WaitEvent(34));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(1f, 0f), 0.75f, 5, 1, 28));
                 xCut.AddEvent(new PlaySound("Pumpkin_Jump", false));
                 xCut.AddEvent(new WaitEvent(50));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(1f, 0f), 0.75f, 5, 1, 28));
                 xCut.AddEvent(new PlaySound("Pumpkin_Jump", false));
                 xCut.AddEvent(new WaitEvent(50));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(1f, 0f), 0.75f, 5, 1, 28));
                 xCut.AddEvent(new PlaySound("Pumpkin_Jump", false));
                 xCut.AddEvent(new WaitEvent(65));
                 xCut.AddEvent(new AnimationEvent(13, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new WaitEvent(24));
                 xCut.AddEvent(new PlaySound("Pumpkin_Jump", false));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(-1f, 0f), 0.75f, 7, 3, 28));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("PoosiMono01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(100, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new PlaySound("Bag_Spits_Plate", false));
                 xCut.AddEvent(new WaitEvent(112));
                 xCut.AddEvent(new BagmanInstructionEvent(1, 3, new float[0]));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects._Unique_FlyingTemple_SpawnTeleportPlate, new Vector2(340f, 357f)));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(1f, 0f), 1.5f, 8));
                 xCut.AddEvent(new WaitEvent(8));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(1f, 0f), 0.5f, 8));
                 xCut.AddEvent(new WaitEvent(8));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(1f, 0f), 0.25f, 8));
                 xCut.AddEvent(new WaitEvent(8));
                 xCut.AddEvent(new WaitEvent(44));
                 xCut.AddEvent(new BagmanInstructionEvent(1, 0, new float[0]));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new DialogueEvent("PoosiMono02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new PlaySound("Pumpkin_Jump", false));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(-1f, 0f), 0.75f, 7, 3, 28));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new PlaySound("Pumpkin_Jump", false));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(-1f, 0f), 0.8f, 7, 3, 30));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new DialogueEvent("PoosiMono03"));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 CutsceneEvent xmovii = xCut.AddEvent(new MoveCameraEvent(new Vector2(320f, 220f), 1f, false, false));
                 xCut.AddEvent(new PlaySound("Pumpkin_Jump", false));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(0f, -1f), 0.75f, 4, 0, 28));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new PlaySound("Pumpkin_Jump", false));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(0f, -1f), 0.75f, 4, 0, 28));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new PlaySound("Pumpkin_Jump", false));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(0f, -1f), 0.8f, 4, 0, 30));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     xmovii
                 }));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("PoosiMono03b"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(25));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new DialogueEvent("PoosiMono04"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(20));
                 xmovii = xCut.AddEvent(new MoveCameraEvent(MoveCameraEvent.GetPosition.LocalPlayer, 1f, false, false));
                 xCut.AddEvent(new PlaySound("Pumpkin_Jump", false));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(0f, 1f), 0.75f, 6, 2, 28));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new PlaySound("Pumpkin_Jump", false));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(0f, 1f), 0.75f, 6, 2, 28));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new PlaySound("Pumpkin_Jump", false));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(0f, 1f), 0.75f, 6, 2, 28));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     xmovii
                 }));
                 xCut.AddEvent(new DialogueEvent("PoosiMono05"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(22, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new PlaySound("Bag_Disappear", false));
                 xCut.AddEvent(new WaitEvent(36));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(-1f, 0f), 1.25f, 28));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new EndCutscene());
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(325f, 440f), 4, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(304f, 465f), 4, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(325f, 487f), 4, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(347f, 467f), 4, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(289f, 354f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(304f, 395f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(325f, 421f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(347f, 401f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SkyTemple_PhaseManIntro)
             {
                 xCut.bFadeOnSetup = true;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, -1f), 1f, 4, 8, 43));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(0f, -1f), 1f, 4, 8, 35));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(0f, -1f), 1f, 4, 8, 37));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(0f, -1f), 1f, 4, 8, 33));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(1022f, 340f), 10000f, false, false));
                 xCut.AddEvent(new WaitEvent(90));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(1022f, 380f), 1.5f, true, true));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player01, new Vector2(0f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player02, new Vector2(0f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player03, new Vector2(0f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player04, new Vector2(0f, -30f)));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 1, new float[0]));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.GuestOrSign01, new Vector2(1370f, 293f)));
                 xCut.AddEvent(new AnimationEvent(200, NPCCodex.NPCTypes.GuestOrSign01));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign01, new Vector2(-1f, 0f), 18f, 50));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Question, NPCCodex.NPCTypes.Player01, new Vector2(0f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Question, NPCCodex.NPCTypes.Player02, new Vector2(0f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Question, NPCCodex.NPCTypes.Player03, new Vector2(0f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Question, NPCCodex.NPCTypes.Player04, new Vector2(0f, -30f)));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(1022f, 340f), 1.25f, true, false));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.GuestOrSign01, new Vector2(671f, 435f)));
                 xCut.AddEvent(new AnimationEvent(200, NPCCodex.NPCTypes.GuestOrSign01));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign01, new Vector2(1f, 0f), 18f, 50));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.GuestOrSign01, new Vector2(1019f, 130f)));
                 xCut.AddEvent(new AnimationEvent(202, NPCCodex.NPCTypes.GuestOrSign01));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign01, new Vector2(0f, 1f), 6f, 60, 0.95f));
                 xCut.AddEvent(new WaitEvent(22));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(14, NPCCodex.NPCTypes.GuestOrSign01));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(1022f, 280f), 1.5f, true, true));
                 xCut.AddEvent(new WaitEvent(90));
                 xCut.AddEvent(new DialogueEvent("Phaseman01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 CutsceneEvent xEv = new MoveCameraEvent(new Vector2(1022f, 340f), 1.5f, true, true);
                 xCut.AddEvent(xEv);
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     xEv
                 }));
                 xCut.lxEventsOnSkip.Add(new MoveCameraEvent(new Vector2(1022f, 340f), 10000f, false, false));
                 xCut.lxEventsAtRelease.Add(new ActivateEnemyEvent(NPCCodex.NPCTypes.GuestOrSign01));
                 xCut.lxEventsAtRelease.Add(new MoveCameraEvent(new Vector2(1022f, 340f), 10000f, false, false));
                 xCut.lxEventsAtRelease.Add(new BagmanInstructionEvent(0, 1, new float[0]));
                 xCut.lxEventsAtRelease.Add(new QueueSong("MiniBossBattle03"));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(1015f, 401f), 4, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(987f, 420f), 4, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(1047f, 429f), 4, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(1032f, 436f), 4, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.GuestOrSign01, new Cutscene.EntityState(new Vector2(0f, 0f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(1015f, 358f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(987f, 385f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(1047f, 392f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(1032f, 403f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.GuestOrSign01, new Cutscene.EntityState(new Vector2(1019f, 245f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SkyTemple_PhaseManOutro)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 440;
                 xCut.bRemoveAllMonsters = false;
                 new AdvancedMoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(1253f, 363f), 2f, 4, 1, true, true);
                 Random knark = Program.GetTheGame().randomInVisual;
                 xCut.AddEvent(new StopSong(false));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 3, new float[0]));
                 xCut.AddEvent(new PlaySound("Phaseman_Death", true));
                 xCut.AddEvent(new WaitEvent(30));
                 for (int i = 0; i < 5; i++)
                 {
                     xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects.ExplosionRed, NPCCodex.NPCTypes.GuestOrSign01, new Vector2((float)(-15 + knark.Next(30)), (float)(-(float)knark.Next(30)))), 20);
                 }
                 xCut.AddEvent(new BagmanInstructionEvent(0, 4, new float[0]));
                 xCut.AddEvent(new WaitEvent(20));
                 for (int j = 0; j < 17; j++)
                 {
                     xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects.ExplosionRed, NPCCodex.NPCTypes.GuestOrSign01, new Vector2((float)(-15 + knark.Next(30)), (float)(-(float)knark.Next(30)))), 7);
                 }
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects.ExplosionRed, NPCCodex.NPCTypes.GuestOrSign01, new Vector2((float)(-15 + knark.Next(30)), (float)(-(float)knark.Next(30)))), 12);
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects.ExplosionRed, NPCCodex.NPCTypes.GuestOrSign01, new Vector2((float)(-15 + knark.Next(30)), (float)(-(float)knark.Next(30)))), 15);
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects.ExplosionRed, NPCCodex.NPCTypes.GuestOrSign01, new Vector2((float)(-15 + knark.Next(30)), (float)(-(float)knark.Next(30)))), 20);
                 xCut.AddEvent(new BagmanInstructionEvent(0, 5, new float[0]));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.GuestOrSign01, Vector2.Zero), 10);
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     xCut.AddEvent(new MoveCameraEvent(MoveCameraEvent.GetPosition.LocalPlayer, 1.5f, true, false))
                 }));
                 xCut.AddEvent(new EndCutscene());
                 xCut.lxEventsOnSkip.Add(new ReleaseCameraViewPortEvent());
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 6, new float[0]));
                 xCut.lxEventsOnSkip.Add(new PlaySong("FlyingFortress", true));
                 xCut.lxEventsAtRelease.Add(new ReleaseCameraViewPortEvent());
                 xCut.lxEventsAtRelease.Add(new BagmanInstructionEvent(0, 6, new float[0]));
                 xCut.lxEventsAtRelease.Add(new PlaySong("FlyingFortress", true));
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.GuestOrSign01);
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SkyTemple_GetPhaseShift)
             {
                 xCut.bUnskippable = true;
                 xCut.bFadeOnSetup = false;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(new BagmanInstructionEvent(0, 9, new float[0]));
                 xCut.AddEvent(new PlaySound("Receive_Phase_Shift", false));
                 xCut.AddEvent(new AnimationEvent(2300, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(2300, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(2300, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(2300, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 8, new float[0]));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 8, new float[0]));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 8, new float[0]));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 8, new float[0]));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new AnimationEvent(2302, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(2302, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(2302, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(2302, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 7, new float[0]));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new EndCutscene());
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SkyTemple_TakeArtifact)
             {
                 xCut.bFadeOnSetup = true;
                 xCut.bRemoveAllMonsters = false;
                 xCut.bUnskippable = true;
                 xCut.lenCreateOnStart.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("FindArtifact01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(20, new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign02));
                 xCut.AddEvent(new WaitEvent(120));
                 xCut.AddEvent(new EndCutscene());
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(325f, 232f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(304f, 465f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(321f, 458f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(347f, 467f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(325f, 232f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(304f, 465f), 4, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(321f, 458f), 4, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(347f, 467f), 4, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SkyTemple_StartGeneratorA)
             {
                 xCut.bFadeOnSetup = true;
                 xCut.bRemoveAllMonsters = false;
                 xCut.bUnskippable = false;
                 xCut.lenCreateOnStart.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 100, new float[0]));
                 xCut.lxEventsAtRelease.Add(new BagmanInstructionEvent(0, 100, new float[0]));
                 xCut.lxEventsAtRelease.Add(new ActivateFlagTrigger(FlagCodex.FlagID._MainStory_FlyingTemple_StartedGeneratorA, 1));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(5002, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new PlaySound("Generator_Keyboardpress", false));
                 xCut.AddEvent(new PlaySound("Generator_Keyboardstart", false));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 0, new float[0]));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new PlaySound("Bag_Appear", false));
                 xCut.AddEvent(new WaitEvent(32));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.MrBag, new Vector2(325f, 629f)));
                 xCut.AddEvent(new AnimationEvent(10, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(1f, 0f), 0.75f, 28));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new WaitEvent(38));
                 xCut.AddEvent(new AnimationEvent(13, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new DialogueEvent("StartGenerator01"));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new AnimationEvent(5003, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 1, new float[0]));
                 xCut.AddEvent(new PlaySound("Generator_Keyboardpress", false));
                 xCut.AddEvent(new PlaySound("Generator_ScreenStart", false));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new SetCameraShakeEvent(40), 20);
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Upset, NPCCodex.NPCTypes.Player01, new Vector2(0f, -30f)));
                 xCut.AddEvent(new SetCameraShakeEvent(30), 20);
                 xCut.AddEvent(new BagmanInstructionEvent(0, 2, new float[0]));
                 xCut.AddEvent(new SetCameraShakeEvent(20), 20);
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new DialogueEvent("StartGenerator01a"), 20);
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new AnimationEvent(5002, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 8, new float[0]));
                 xCut.AddEvent(new PlaySound("Generator_Keyboardpress", false));
                 xCut.AddEvent(new PlaySound("Generator_GeneratorStart", false));
                 xCut.AddEvent(new SetCameraShakeEvent(40), 20);
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_SweatDrop, NPCCodex.NPCTypes.Player01, new Vector2(0f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Dots, NPCCodex.NPCTypes.MrBag, new Vector2(0f, -10f)));
                 xCut.AddEvent(new SetCameraShakeEvent(40), 20);
                 xCut.AddEvent(new BagmanInstructionEvent(0, 3, new float[0]));
                 xCut.AddEvent(new SetCameraShakeEvent(50), 20);
                 xCut.AddEvent(new SetCameraShakeEvent(50), 20);
                 xCut.AddEvent(new BagmanInstructionEvent(0, 4, new float[0]));
                 xCut.AddEvent(new SetCameraShakeEvent(50), 20);
                 xCut.AddEvent(new SetCameraShakeEvent(50), 20);
                 xCut.AddEvent(new SetCameraShakeEvent(50), 20);
                 xCut.AddEvent(new BagmanInstructionEvent(0, 5, new float[0]));
                 xCut.AddEvent(new SetCameraShakeEvent(50), 20);
                 xCut.AddEvent(new SetCameraShakeEvent(60), 20);
                 MoveCameraEvent mos2 = new MoveCameraEvent(new Vector2(323f, 200f), 2.25f, true, true);
                 xCut.AddEvent(mos2);
                 xCut.AddEvent(new SetCameraShakeEvent(50), 20);
                 xCut.AddEvent(new SetCameraShakeEvent(50), 20);
                 xCut.AddEvent(new BagmanInstructionEvent(0, 6, new float[0]));
                 xCut.AddEvent(new SetCameraShakeEvent(40), 20);
                 xCut.AddEvent(new SetCameraShakeEvent(30), 20);
                 xCut.AddEvent(new SetCameraShakeEvent(30), 20);
                 xCut.AddEvent(new SetCameraShakeEvent(20), 20);
                 xCut.AddEvent(new SetCameraShakeEvent(20), 20);
                 xCut.AddEvent(new SetCameraShakeEvent(10), 20);
                 xCut.AddEvent(new SetCameraShakeEvent(10), 20);
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     mos2
                 }));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 7, new float[0]));
                 xCut.AddEvent(new PlaySound("Generator_KeyholeFlash", false));
                 xCut.AddEvent(new WaitEvent(90));
                 mos2 = new MoveCameraEvent(MoveCameraEvent.GetPosition.LocalPlayer, 2.25f, true, true);
                 xCut.AddEvent(mos2);
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     mos2
                 }));
                 xCut.AddEvent(new DialogueEvent("StartGenerator02"));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(22, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new PlaySound("Bag_Disappear", false));
                 xCut.AddEvent(new WaitEvent(36));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(-1f, 0f), 0.75f, 28));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new EndCutscene());
                 xCut.lxEventsOnSkip.Add(new ReleaseCameraViewPortEvent());
                 xCut.lxEventsAtRelease.Add(new ReleaseCameraViewPortEvent());
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(325f, 630f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(271f, 650f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(240f, 622f), 1, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(433f, 660f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(325f, 630f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(271f, 650f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(240f, 622f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(433f, 660f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SkyTemple_StartGeneratorB)
             {
                 xCut.bFadeOnSetup = true;
                 xCut.bRemoveAllMonsters = false;
                 xCut.bUnskippable = false;
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 200, new float[0]));
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 100, new float[0]));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(5002, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new PlaySound("Generator_Keyboardpress", false));
                 xCut.AddEvent(new PlaySound("Generator_Keyboardstart", false));
                 xCut.AddEvent(new PlaySound("Generator_GeneratorStart", false));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 10, new float[0]));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new PlaySound("Generator_ScreenStart", false));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 11, new float[0]));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new SetCameraShakeEvent(40), 20);
                 xCut.AddEvent(new BagmanInstructionEvent(0, 12, new float[0]));
                 xCut.AddEvent(new SetCameraShakeEvent(30), 20);
                 xCut.AddEvent(new SetCameraShakeEvent(20), 20);
                 xCut.AddEvent(new BagmanInstructionEvent(0, 18, new float[0]));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 13, new float[0]));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 15, new float[]
                 {
                     3f
                 }));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 14, new float[0]));
                 xCut.AddEvent(new WaitEvent(55));
                 Cutscene arg_A429_0 = xCut;
                 byte arg_A424_0 = 0;
                 byte arg_A424_1 = 15;
                 float[] afParams = new float[1];
                 arg_A429_0.AddEvent(new BagmanInstructionEvent(arg_A424_0, arg_A424_1, afParams));
                 xCut.AddEvent(new WaitEvent(20));
                 Cutscene arg_A450_0 = xCut;
                 byte arg_A44B_0 = 0;
                 byte arg_A44B_1 = 19;
                 afParams = new float[1];
                 arg_A450_0.AddEvent(new BagmanInstructionEvent(arg_A44B_0, arg_A44B_1, afParams));
                 xCut.AddEvent(new WaitEvent(45));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 19, new float[]
                 {
                     2f
                 }));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 19, new float[]
                 {
                     1f
                 }));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(320f, 370f), 1000f, false, false));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 15, new float[]
                 {
                     1f
                 }));
                 xCut.AddEvent(new WaitEvent(15));
                 Cutscene arg_A51B_0 = xCut;
                 byte arg_A516_0 = 0;
                 byte arg_A516_1 = 16;
                 afParams = new float[1];
                 arg_A51B_0.AddEvent(new BagmanInstructionEvent(arg_A516_0, arg_A516_1, afParams));
                 xCut.AddEvent(new WaitEvent(15));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 15, new float[]
                 {
                     2f
                 }));
                 xCut.AddEvent(new WaitEvent(35));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(320f, 200f), 2f, true, true));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 16, new float[]
                 {
                     1f
                 }));
                 xCut.AddEvent(new WaitEvent(90));
                 xCut.AddEvent(new SetCameraShakeEvent(30));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 17, new float[0]));
                 xCut.AddEvent(new PlaySound("Generator_KeyholeFlash", false));
                 xCut.AddEvent(new WaitEvent(60));
                 Cutscene arg_A615_0 = xCut;
                 byte arg_A610_0 = 0;
                 byte arg_A610_1 = 19;
                 afParams = new float[1];
                 arg_A615_0.AddEvent(new BagmanInstructionEvent(arg_A610_0, arg_A610_1, afParams));
                 xCut.AddEvent(new WaitEvent(45));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 19, new float[]
                 {
                     3f
                 }));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 19, new float[]
                 {
                     1f
                 }));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new EndCutscene());
                 xCut.lxEventsOnSkip.Add(new ReleaseCameraViewPortEvent());
                 xCut.lxEventsAtRelease.Add(new ReleaseCameraViewPortEvent());
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(10297f, 198f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(10280f, 223f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(10323f, 222f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(10223f, 214f), 1, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(10297f, 198f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(10280f, 223f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(10323f, 222f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(10223f, 214f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SkyTemple_StartGeneratorC)
             {
                 xCut.bFadeOnSetup = true;
                 xCut.bRemoveAllMonsters = false;
                 xCut.bUnskippable = false;
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 100, new float[0]));
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 201, new float[0]));
                 xCut.lxEventsAtRelease.Add(new ReleaseCameraViewPortEvent());
                 xCut.lxEventsAtRelease.Add(new ActivateFlagTrigger(FlagCodex.FlagID._MainStory_FlyingTemple_StartedGeneratorC, 1));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 5, new float[0]));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(20320f, 315f), 1000f, false, false));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(5002, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new PlaySound("Generator_Keyboardpress", false));
                 xCut.AddEvent(new PlaySound("Generator_Keyboardstart", false));
                 xCut.AddEvent(new PlaySound("Generator_GeneratorStart", false));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 20, new float[0]));
                 xCut.AddEvent(new WaitEvent(50));
                 xCut.AddEvent(new PlaySound("Generator_ScreenStart", false));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 21, new float[0]));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 11, new float[0]));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new SetCameraShakeEvent(40), 20);
                 xCut.AddEvent(new BagmanInstructionEvent(0, 22, new float[0]));
                 xCut.AddEvent(new SetCameraShakeEvent(30), 20);
                 xCut.AddEvent(new SetCameraShakeEvent(20), 20);
                 xCut.AddEvent(new BagmanInstructionEvent(0, 28, new float[0]));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 23, new float[0]));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 25, new float[]
                 {
                     3f
                 }));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 24, new float[0]));
                 xCut.AddEvent(new WaitEvent(55));
                 Cutscene arg_AA16_0 = xCut;
                 byte arg_AA11_0 = 0;
                 byte arg_AA11_1 = 25;
                 float[] afParams = new float[1];
                 arg_AA16_0.AddEvent(new BagmanInstructionEvent(arg_AA11_0, arg_AA11_1, afParams));
                 xCut.AddEvent(new WaitEvent(40));
                 Cutscene arg_AA3D_0 = xCut;
                 byte arg_AA38_0 = 0;
                 byte arg_AA38_1 = 29;
                 afParams = new float[1];
                 arg_AA3D_0.AddEvent(new BagmanInstructionEvent(arg_AA38_0, arg_AA38_1, afParams));
                 xCut.AddEvent(new WaitEvent(45));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 29, new float[]
                 {
                     2f
                 }));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 29, new float[]
                 {
                     1f
                 }));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(320f, 260f), 1000f, false, false));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 25, new float[]
                 {
                     1f
                 }));
                 xCut.AddEvent(new WaitEvent(37));
                 Cutscene arg_AB08_0 = xCut;
                 byte arg_AB03_0 = 0;
                 byte arg_AB03_1 = 26;
                 afParams = new float[1];
                 arg_AB08_0.AddEvent(new BagmanInstructionEvent(arg_AB03_0, arg_AB03_1, afParams));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 25, new float[]
                 {
                     2f
                 }));
                 xCut.AddEvent(new WaitEvent(35));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(320f, 200f), 2f, true, true));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new WaitEvent(16));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 27, new float[0]));
                 xCut.AddEvent(new PlaySound("boss_door_open", false));
                 xCut.AddEvent(new SetCameraShakeEvent(50), 20);
                 xCut.AddEvent(new SetCameraShakeEvent(40), 10);
                 xCut.AddEvent(new BagmanInstructionEvent(0, 26, new float[]
                 {
                     1f
                 }));
                 xCut.AddEvent(new WaitEvent(13));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 25, new float[]
                 {
                     4f
                 }));
                 xCut.AddEvent(new SetCameraShakeEvent(30), 20);
                 xCut.AddEvent(new SetCameraShakeEvent(20));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new WaitEvent(45));
                 Cutscene arg_AC7B_0 = xCut;
                 byte arg_AC76_0 = 0;
                 byte arg_AC76_1 = 29;
                 afParams = new float[1];
                 arg_AC7B_0.AddEvent(new BagmanInstructionEvent(arg_AC76_0, arg_AC76_1, afParams));
                 xCut.AddEvent(new WaitEvent(45));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 29, new float[]
                 {
                     4f
                 }));
                 xCut.AddEvent(new ReleaseCameraViewPortEvent());
                 xCut.AddEvent(new BagmanInstructionEvent(0, 29, new float[]
                 {
                     1f
                 }));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new EndCutscene());
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(20318f, 372f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(20252f, 360f), 1, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(20378f, 359f), 3, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(20353f, 390f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(20318f, 372f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(20252f, 360f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(20378f, 359f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(20353f, 390f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SkyTemple_CrystalChallenge)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.bRemoveAllMonsters = false;
                 xCut.bUnskippable = true;
                 xCut.lenCreateOnStart.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.AddEvent(new QueueSong("Challenge"));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 11, new float[0]));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, -1f), 1f, 4, 0, 50));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(0f, -1f), 1f, 4, 0, 50));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(0f, -1f), 1f, 4, 0, 50));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(0f, -1f), 1f, 4, 0, 50));
                 xCut.AddEvent(new PlaySound("crystal_sentry_startup", false));
                 xCut.AddEvent(new WaitEvent(35));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 0, new float[0]));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new EndCutscene());
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(443f, 327f), 4, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(428f, 331f), 4, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(461f, 334f), 4, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(441f, 339f), 4, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(443f, 277f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(428f, 281f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(461f, 284f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(441f, 289f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SkyTemple_ItsFlying)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.bRemoveAllMonsters = false;
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 0, new float[0]));
                 xCut.lxEventsOnSkip.Add(new ReleaseCameraViewPortEvent());
                 xCut.lxEventsOnSkip.Add(new QueueSong("FlyingFortress"));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 0, new float[0]));
                 xCut.AddReleaseEvent(new ReleaseCameraViewPortEvent());
                 xCut.AddReleaseEvent(new QueueSong("FlyingFortress"));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(1022f, 270f), 1f, true, true));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, 1f), 1f, 6, 2, 45));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(0f, 1f), 1f, 6, 2, 45));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(0f, 1f), 1f, 6, 2, 45));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(0f, 1f), 1f, 6, 2, 45));
                 xCut.AddEvent(new WaitEvent(105));
                 xCut.AddEvent(new DialogueEvent("ItsFlying01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(40, NPCCodex.NPCTypes.GuestOrSign01));
                 xCut.AddEvent(new AnimationEvent(41, NPCCodex.NPCTypes.GuestOrSign02));
                 xCut.AddEvent(new WaitEvent(50));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new WaitEvent(50));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Dots, NPCCodex.NPCTypes.Player01, new Vector2(0f, -30f)));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new DialogueEvent("ItsFlying02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     xCut.AddEvent(new MoveCameraEvent(MoveCameraEvent.GetPosition.LocalPlayer, 1.5f, true, false))
                 }));
                 xCut.AddEvent(new EndCutscene());
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(319f, 124f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(306f, 119f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(335f, 119f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(282f, 131f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(319f, 169f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(306f, 164f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(335f, 164f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(282f, 176f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.GuestOrSign01, new Cutscene.EntityState(new Vector2(95f, 258f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.GuestOrSign02, new Cutscene.EntityState(new Vector2(545f, 258f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SkyTemple_AwakenGundam)
             {
                 xCut.bFadeOnSetup = true;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(325f, 348f), 1000f, true, true));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(5002, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 1, new float[0]));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 2, new float[0]));
                 xCut.AddEvent(new PlaySound("magic_shield_break", false));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player02, new Vector2(0f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player03, new Vector2(0f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player04, new Vector2(0f, -30f)));
                 xCut.AddEvent(new AnimationEvent(12, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, 1f), 1.5f, 8));
                 xCut.AddEvent(new WaitEvent(8));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 3, new float[0]));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, 1f), 1f, 8));
                 xCut.AddEvent(new WaitEvent(8));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, 1f), 0.5f, 8));
                 xCut.AddEvent(new WaitEvent(8));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, 1f), 0.25f, 8));
                 xCut.AddEvent(new WaitEvent(8));
                 xCut.AddEvent(new StopSong(false));
                 xCut.AddEvent(new WaitEvent(8));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 4, new float[0]));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new QueueSong("Omen"));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 5, new float[0]));
                 xCut.AddEvent(new WaitIndefinitelyEvent());
                 xCut.AddEvent(new BagmanInstructionEvent(0, 6, new float[0]));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(322f, 248f), 1f, true, true));
                 xCut.AddEvent(new WaitIndefinitelyEvent());
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 100, new float[0]));
                 xCut.AddReleaseEvent(new MoveCameraEvent(new Vector2(322f, 248f), 1000f, false, false));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 104, new float[0]));
                 xCut.lxEventsAtRelease.Add(new EnterAnotherCutscene(CutsceneLibrary.CutsceneID._MainStory_SkyTemple_GundamBossName));
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 101, new float[0]));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(320f, 345f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(267f, 338f), 1, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(361f, 338f), 3, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(333f, 360f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(320f, 371f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(267f, 338f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(361f, 338f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(333f, 360f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SkyTemple_GundamBossName)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.bUnskippable = true;
                 xCut.bRemoveAllMonsters = false;
                 xCut.iEndFrame = 42;
                 CutsceneEvent it5 = new StartBossNameFlash(EnemyCodex.EnemyTypes.GundamMain);
                 xCut.sPlayMusicOnEnd = "BossBattle01";
                 xCut.AddEvent(2, new PlaySong("BossBattle01", true));
                 xCut.AddEvent(10, it5);
                 xCut.AddEvent(20, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     it5
                 }));
                 xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
                 xCut.lxEventsAtRelease.Add(new BagmanInstructionEvent(0, 0, new float[0]));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SkyTemple_GundamDead)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.bRemoveAllMonsters = false;
                 xCut.lenCreateOnStart.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.lenItemGrantOnSkip.Add(ItemCodex.ItemTypes._KeyItem_FFAmulet);
                 xCut.AddEvent(new BagmanInstructionEvent(0, 10, new float[0]));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(277f, 383f), 2f, 4, 0, true, true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(358f, 377f), 2f, 4, 3, true, true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(226f, 339f), 2f, 4, 1, true, true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(364f, 343f), 2f, 4, 3, true, true));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new WaitEvent(200));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(320f, 330f), 1f, true, true));
                 xCut.AddEvent(new StopSong(false));
                 xCut.AddEvent(new WaitEvent(100));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 11, new float[0]));
                 xCut.AddEvent(new WaitIndefinitelyEvent());
                 xCut.AddEvent(new DialogueEvent("End_Amulet01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new PlaySound("Bag_Appear", false));
                 xCut.AddEvent(new WaitEvent(32));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.MrBag, new Vector2(277f, 382f)));
                 xCut.AddEvent(new AnimationEvent(10, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(1f, 0f), 1f, 28));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(45));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new DialogueEvent("End_Amulet02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(1f, 0f), 0.7f, 5, 1, 30));
                 xCut.AddEvent(new PlaySound("Pumpkin_Jump", false));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(0f, -1f), 0.65f, 4, 0, 30));
                 xCut.AddEvent(new PlaySound("Pumpkin_Jump", false));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new DialogueEvent("End_Amulet03"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new DialogueEvent("End_Amulet04"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, -1f), 1f, 4, 1, 19));
                 xCut.AddEvent(new WaitEvent(25));
                 xCut.AddEvent(new DialogueEvent("End_Amulet04b"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new BagmanInstructionEvent(0, 13, new float[0]));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(1f, 0f), 1f, 5, 2, 25));
                 xCut.AddEvent(new WaitEvent(25));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 14, new float[0]));
                 xCut.AddEvent(new AnimationEvent(81, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new ItemGetAnimationEvent(ItemCodex.ItemTypes._KeyItem_FFAmulet, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new GiveItemEvent(ItemCodex.ItemTypes._KeyItem_FFAmulet));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new DialogueEvent("End_Amulet05"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(82, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new DialogueEvent("End_Bag01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(15));
                 xCut.AddEvent(new AnimationEvent(22, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new PlaySound("Bag_Disappear", false));
                 xCut.AddEvent(new WaitEvent(36));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(-1f, 0f), 0.75f, 28));
                 xCut.AddEvent(new WaitEvent(28));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.MrBag, new Vector2(10000f, 10000f)));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 102, new float[0]));
                 xCut.lxEventsAtRelease.Add(new BagmanInstructionEvent(0, 103, new float[0]));
                 xCut.lxEventsAtRelease.Add(new ActivateFlagTrigger(FlagCodex.FlagID._MainStory_FlyingTemple_TempleCleared, 1));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(302f, 364f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(358f, 377f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(226f, 339f), 1, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(364f, 343f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_PostSkyTemple_MarinoStealAmalet)
             {
                 xCut.bFadeOnSetup = true;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.sPlayMusicOnEnd = "EvergrindCity";
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, -1f), 2f, 4, 0, 132));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(0f, -1f), 2f, 4, 8, 150));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(0f, -1f), 2f, 4, 5, 137));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(0f, -1f), 2f, 4, 8, 155));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Rival, new Vector2(0f, 1f), 1f, 6, 2, 202));
                 xCut.AddEvent(new WaitEvent(132));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player01, new Vector2(4f, -30f)));
                 xCut.AddEvent(new AnimationEvent(15, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(1f, 0f), 2f, 16, 0.9f));
                 xCut.AddEvent(new PlaySong("MarinoTheme", true));
                 xCut.AddEvent(new WaitEvent(5));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(1f, 0f), 2f, 5, 3, 6));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(-1f, 0f), 2f, 7, 2, 12));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Main_Rival));
                 xCut.AddEvent(new DialogueEvent("MarinoTakesAmulet01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Main_Rival));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Dots, NPCCodex.NPCTypes.Player01, new Vector2(4f, -30f)));
                 xCut.AddEvent(new WaitEvent(46));
                 xCut.AddEvent(new DialogueEvent("MarinoTakesAmulet02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(5));
                 xCut.AddEvent(new AnimationEvent(5004, NPCCodex.NPCTypes.Main_Rival));
                 xCut.AddEvent(new WaitEvent(80));
                 xCut.AddEvent(new DialogueEvent("MarinoTakesAmulet03"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(5008, NPCCodex.NPCTypes.Main_Rival));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new AnimationEvent(8, NPCCodex.NPCTypes.Main_Rival));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Rival, new Vector2(0f, 1f), 2.5f, 12, 2, 500));
                 xCut.AddEvent(new QueueSong("EvergrindCity"));
                 xCut.AddEvent(new DialogueEvent("MarinoTakesAmulet04"));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Angry, NPCCodex.NPCTypes.Player01, new Vector2(4f, -30f)));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new EndCutscene());
                 xCut.AddReleaseEvent(new ActivateFlagTrigger(FlagCodex.FlagID._MainStory_PostFlyingTemple_MarinoChase, 4));
                 xCut.AddReleaseEvent(new ActivateFlagTrigger(FlagCodex.FlagID._MainStory_PostFlyingTemple_MarinoChase, 1));
                 xCut.AddReleaseEvent(new SetVirtualHeight(0f, NPCCodex.NPCTypes.Player01));
                 xCut.AddReleaseEvent(new SetVirtualHeight(0f, NPCCodex.NPCTypes.Player02));
                 xCut.AddReleaseEvent(new SetVirtualHeight(0f, NPCCodex.NPCTypes.Player03));
                 xCut.AddReleaseEvent(new SetVirtualHeight(0f, NPCCodex.NPCTypes.Player04));
                 xCut.sEnterDialogueOnEnd = "MarinoTakesAmulet_GiveQuest";
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(19417f, 565f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(19390f, 586f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(19440f, 586f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(19393f, 618f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Main_Rival, new Cutscene.EntityState(new Vector2(19410f, 168f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(19433f, 301f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(19390f, 286f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(19452f, 312f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(19369f, 308f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Main_Rival, new Cutscene.EntityState(new Vector2(785f, 334f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_PostSkyTemple_ConfrontMarino)
             {
                 xCut.bFadeOnSetup = true;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(new DestroyAllEnemiesExcept(new NPCCodex.NPCTypes[]
                 {
                     NPCCodex.NPCTypes.GuestOrSign03
                 }));
                 xCut.AddEvent(new QueueSong("MarinoTheme"));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, -1f), 1f, 4, 0, 40));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(0f, -1f), 1f, 4, 0, 39));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(0f, -1f), 1f, 4, 0, 44));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(0f, -1f), 1f, 4, 0, 42));
                 xCut.AddEvent(new WaitEvent(80));
                 xCut.AddEvent(new DialogueEvent("MarinoQuest_Confronted"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.GuestOrSign03, new Vector2(975f, 511f), 2f, 4, 1, false, true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(1072f, 515f), 2f, 4, 3, false, true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(1092f, 526f), 2f, 4, 3, false, true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(1101f, 496f), 2f, 4, 3, false, true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(1090f, 531f), 2f, 4, 3, false, true));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new BagmanInstructionEvent(1, 0, new float[0]));
                 xCut.AddEvent(new WaitEvent(50));
                 xCut.AddEvent(new AnimationEvent(5000, NPCCodex.NPCTypes.GuestOrSign03));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new WaitEvent(90));
                 xCut.AddEvent(new DialogueEvent("MarinoQuest_Confronted2"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new EndCutscene());
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(1, 0, new float[0]));
                 xCut.AddReleaseEvent(new SetVirtualHeight(60f, NPCCodex.NPCTypes.Player01));
                 xCut.AddReleaseEvent(new SetVirtualHeight(60f, NPCCodex.NPCTypes.Player02));
                 xCut.AddReleaseEvent(new SetVirtualHeight(60f, NPCCodex.NPCTypes.Player03));
                 xCut.AddReleaseEvent(new SetVirtualHeight(60f, NPCCodex.NPCTypes.Player04));
                 xCut.AddReleaseEvent(new SetVirtualHeight(60f, NPCCodex.NPCTypes.GuestOrSign03));
                 xCut.AddReleaseEvent(new EnterAnotherCutscene(CutsceneLibrary.CutsceneID._MainStory_PostSkyTemple_MarinoBossName));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(1021f, 576f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(1002f, 586f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(1039f, 579f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(1022f, 595f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Main_Rival, new Cutscene.EntityState(new Vector2(30000f, 30000f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.GuestOrSign03, new Cutscene.EntityState(new Vector2(1022f, 500f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(1072f, 515f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     2
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(1092f, 526f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     2
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(1101f, 496f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     2
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(1090f, 531f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     2
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.GuestOrSign03, new Cutscene.EntityState(new Vector2(980f, 512f), 13, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_PostSkyTemple_MarinoBossName)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.bUnskippable = true;
                 xCut.bRemoveAllMonsters = false;
                 xCut.iEndFrame = 42;
                 CutsceneEvent it6 = new StartBossNameFlash(EnemyCodex.EnemyTypes.Marino);
                 xCut.sPlayMusicOnEnd = "MarinoBattle";
                 xCut.AddEvent(2, new PlaySong("MarinoBattle", true));
                 xCut.AddEvent(10, it6);
                 xCut.AddEvent(20, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     it6
                 }));
                 xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
                 xCut.lxEventsAtRelease.Add(new ActivateEnemyEvent(NPCCodex.NPCTypes.GuestOrSign03));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_PostSkyTemple_MarinoDefeated)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.sPlayMusicOnEnd = "EvergrindFields";
                 xCut.AddEvent(new ReviveAllPlayers());
                 xCut.AddEvent(new StopSong(false));
                 xCut.AddEvent(new WaitEvent(100));
                 xCut.AddEvent(new DialogueEvent("MarinoQuest_Defeated01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new PlaySong("EvergrindFields", true));
                 xCut.AddEvent(new WaitEvent(5));
                 xCut.AddEvent(new AnimationEvent(81, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new ItemGetAnimationEvent(ItemCodex.ItemTypes._KeyItem_FFAmulet, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(120));
                 xCut.AddEvent(new AnimationEvent(82, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new DialogueEvent("MarinoQuest_Defeated01b"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new EndCutscene());
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(1, 1, new float[0]));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(1, 2, new float[0]));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_PostSkyTemple_TalkToDadInLab)
             {
                 xCut.bFadeOnSetup = true;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.lenCreateOnStart.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.Evergrind_LedgeDude);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.Main_Collector_Tjockis);
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Father));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 0, new float[0]));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new DialogueEvent("AfterFlyingTempleFather01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(5));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, 1f), 1f, 6, 5, 15));
                 xCut.AddEvent(new WaitEvent(15));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Father));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(1f, 0f), 1f, 5, 0, 30));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("AfterFlyingTempleFather01b"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new PlaySound("Bag_Appear", false));
                 xCut.AddEvent(new WaitEvent(32));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.MrBag, new Vector2(3472f, 188f)));
                 xCut.AddEvent(new AnimationEvent(10, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(1f, 0f), 0.75f, 28));
                 xCut.AddEvent(new WaitEvent(50));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(-1f, 0f), 1f, 7, 1, 21));
                 xCut.AddEvent(new WaitEvent(18));
                 xCut.AddEvent(new AnimationEvent(13, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new WaitEvent(34));
                 xCut.AddEvent(new DialogueEvent("AfterFlyingTempleFather02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(8, NPCCodex.NPCTypes.Father));
                 xCut.AddEvent(new WaitEvent(34));
                 xCut.AddEvent(new DialogueEvent("AfterFlyingTempleFather03"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(5));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 1, new float[0]));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Father));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new DialogueEvent("AfterFlyingTempleFather04"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new PlaySound("BrawlerBot_Damage", false));
                 xCut.AddEvent(new PlaySound("Guardian_Damage", false));
                 xCut.AddEvent(new SetCameraShakeEvent(20));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 2, new float[0]));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player01, new Vector2(4f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Question, NPCCodex.NPCTypes.Father, new Vector2(4f, -30f)));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new StopSong(false));
                 xCut.AddEvent(new PlaySound("Pecco_Damage", false));
                 xCut.AddEvent(new PlaySound("Guardian_Damage", false));
                 xCut.AddEvent(new SetCameraShakeEvent(20));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new PlaySound("BrawlerBot_Death", false));
                 xCut.AddEvent(new PlaySound("Chicken", false));
                 xCut.AddEvent(new SetCameraShakeEvent(40));
                 xCut.AddEvent(new DialogueEvent("AfterFlyingTempleFather05"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new DialogueEvent("AfterFlyingTempleFather06"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Father, new Vector2(0f, 1f), 2f, 6, 7, 33));
                 xCut.AddEvent(new AnimationEvent(22, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new PlaySound("Bag_Disappear", false));
                 xCut.AddEvent(new WaitEvent(5));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(1f, 0f), 1f, 5, 3, 20));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(0f, 1f), 1f, 6, 0, 14));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(0f, -1f), 1f, 4, 2, 14));
                 xCut.AddEvent(new WaitEvent(11));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(-1f, 0f), 1.25f, 28));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Father, new Vector2(-1f, 0f), 2f, 7, 7, 180));
                 xCut.AddReleaseEvent(new AnimationEvent(7, NPCCodex.NPCTypes.Father));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 2, new float[0]));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 3, new float[0]));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 6, new float[0]));
                 xCut.AddReleaseEvent(new StopSong(false));
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 5, new float[0]));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(3442f, 173f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(3474f, 219f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(3434f, 226f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(3452f, 248f), 0));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(3451f, 188f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Father, new Cutscene.EntityState(new Vector2(3472f, 234f), 3, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(3494f, 219f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(3434f, 212f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(3452f, 262f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_PostSkyTemple_CommotionInHallway)
             {
                 xCut.bFadeOnSetup = true;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.lenCreateOnStart.Add(NPCCodex.NPCTypes.Fae_Naniva);
                 xCut.lenCreateOnStart.Add(NPCCodex.NPCTypes.Evergrind_Sally);
                 xCut.AddEvent(new BagmanInstructionEvent(0, 4, new float[0]));
                 xCut.AddEvent(new QueueSong("Naniva"));
                 xCut.AddEvent(new SetAlpha(1f, NPCCodex.NPCTypes.Father));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(387f, 203f), 1f, false, false));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(-1f, 0f), 1f, 7, 3, 84));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(-1f, 0f), 1f, 7, 3, 74));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(-1f, 0f), 1f, 7, 3, 72));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(-1f, 0f), 1f, 7, 3, 70));
                 xCut.AddEvent(new WaitEvent(80));
                 xCut.AddEvent(new DialogueEvent("HallwayCommotion01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(100, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new WaitEvent(80));
                 xCut.AddEvent(new DialogueEvent("HallwayCommotion02"));
                 xCut.AddEvent(new WaitEvent(32));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 10, new float[0]));
                 xCut.AddEvent(new PlaySound("Spells_Protect", false));
                 xCut.AddEvent(new WaitEvent(11));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Collector_Quintus, new Vector2(-1f, 0f), 3f, 7, 1, 10));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Main_Collector_Quintus, new Vector2(4f, -30f)));
                 xCut.AddEvent(new WaitEvent(80));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Naniva, new Vector2(0f, -3f), 1f, 0, 0, 30));
                 xCut.AddEvent(new WaitEvent(23));
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.Fae_Naniva, 5));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Angry, NPCCodex.NPCTypes.Evergrind_Guard01, new Vector2(4f, -36f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Angry, NPCCodex.NPCTypes.Evergrind_Guard02, new Vector2(4f, -36f)));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Evergrind_Guard01));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Evergrind_Guard02));
                 xCut.AddEvent(new WaitEvent(90));
                 xCut.AddEvent(new DialogueEvent("HallwayCommotion03"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Collector_Quintus, new Vector2(1f, 0f), 1f, 5, 4, 30));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Collector_Quintus, new Vector2(0f, -1f), 1f, 4, 4, 40));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.Main_Collector_Quintus, 5));
                 xCut.AddEvent(new MoveCameraEvent(MoveCameraEvent.GetPosition.LocalPlayer, 1f, false, false));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Father));
                 xCut.AddEvent(new DialogueEvent("HallwayCommotion04"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Father, new Vector2(-1f, 0f), 2f, 7, 4, 68));
                 xCut.AddEvent(new WaitEvent(68));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Father, new Vector2(0f, -1f), 2f, 4, 4, 38));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.Father, 5));
                 xCut.AddEvent(new WaitEvent(5));
                 xCut.lxEventsOnSkip.Add(new AnimationEvent(1, NPCCodex.NPCTypes.Evergrind_Guard01));
                 xCut.lxEventsOnSkip.Add(new AnimationEvent(3, NPCCodex.NPCTypes.Evergrind_Guard02));
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 9, new float[0]));
                 xCut.AddReleaseEvent(new ReleaseCameraViewPortEvent());
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(662f, 183f), 7));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(677f, 173f), 7));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(687f, 200f), 7));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(709f, 181f), 7));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Evergrind_Guard01, new Cutscene.EntityState(new Vector2(356f, 145f), 2));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Evergrind_Guard02, new Cutscene.EntityState(new Vector2(419f, 145f), 2));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Evergrind_Guard03, new Cutscene.EntityState(new Vector2(386f, 616f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Evergrind_Guard04, new Cutscene.EntityState(new Vector2(355f, 338f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Evergrind_Guard05, new Cutscene.EntityState(new Vector2(419f, 338f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Fae_Naniva, new Cutscene.EntityState(new Vector2(388f, 201f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Main_Polarn, new Cutscene.EntityState(new Vector2(291f, 182f), 1));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Evergrind_Sally, new Cutscene.EntityState(new Vector2(277f, 215f), 1));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Main_Collector_Biggs, new Cutscene.EntityState(new Vector2(482f, 182f), 3));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Main_Collector_Wedge, new Cutscene.EntityState(new Vector2(496f, 216f), 3));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Father, new Cutscene.EntityState(new Vector2(525f, 196f), 3, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Main_Collector_Quintus, new Cutscene.EntityState(new Vector2(388f, 155f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(578f, 183f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(603f, 173f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(615f, 200f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(639f, 181f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Father, new Cutscene.EntityState(new Vector2(5000f, 5000f), 3, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Fae_Naniva, new Cutscene.EntityState(new Vector2(5000f, 5000f), 3, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Main_Collector_Quintus, new Cutscene.EntityState(new Vector2(5000f, 5000f), 3, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_PostSkyTemple_InsideTheGrandMasterOffice)
             {
                 xCut.bFadeOnSetup = true;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.Evergrind_Guard03);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.Evergrind_Sally);
                 xCut.AddEvent(new BagmanInstructionEvent(0, 8, new float[0]));
                 xCut.AddEvent(new AnimationEvent(100, NPCCodex.NPCTypes.Main_Collector_MasterIvy));
                 xCut.AddEvent(new QueueSong("MasterIvy"));
                 xCut.AddEvent(new SetAlpha(1f, NPCCodex.NPCTypes.Father));
                 xCut.AddEvent(new SetAlpha(1f, NPCCodex.NPCTypes.Main_Collector_Quintus));
                 xCut.AddEvent(new SetAlpha(1f, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(10320f, 252f), 1f, false, false));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, -1f), 1f, 4, 0, 80));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(0f, -1f), 1f, 4, 0, 75));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(0f, -1f), 1f, 4, 0, 78));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(0f, -1f), 1f, 4, 0, 81));
                 xCut.AddEvent(new WaitEvent(120));
                 xCut.AddEvent(new DialogueEvent("NanivaInMasterOffice01"));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(10320f, 200f), 1f, false, false));
                 xCut.AddEvent(new AnimationEvent(101, NPCCodex.NPCTypes.Main_Collector_MasterIvy));
                 xCut.AddEvent(new WaitEvent(90));
                 xCut.AddEvent(new DialogueEvent("NanivaInMasterOffice02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(10320f, 252f), 1f, false, false));
                 xCut.AddEvent(new WaitEvent(15));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Main_Collector_Quintus));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Dots, NPCCodex.NPCTypes.Main_Collector_Quintus, new Vector2(4f, -30f)));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Father));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign08));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Upset, NPCCodex.NPCTypes.Fae_Naniva, new Vector2(4f, -32f)));
                 xCut.AddEvent(new WaitEvent(80));
                 xCut.AddEvent(new DialogueEvent("NanivaInMasterOffice03"));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Father));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Main_Collector_Quintus));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new DialogueEvent("NanivaInMasterOffice04"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Naniva, new Vector2(0f, 1f), 0.5f, 20));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("NanivaInMasterOffice04b"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new DialogueEvent("NanivaInMasterOffice05"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Naniva, new Vector2(0f, 1f), 0.5f, 40));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Father, new Vector2(0f, -1f), 1f, 4, 0, 66));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new DialogueEvent("NanivaInMasterOffice06"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(104, NPCCodex.NPCTypes.Main_Collector_MasterIvy));
                 xCut.AddEvent(new WaitEvent(90));
                 xCut.AddEvent(new DialogueEvent("NanivaInMasterOffice06b"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(10320f, 270f), 1f, false, false));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Fae_Naniva, new Vector2(10320f, 319f), 1f, 0, 1, false, false));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Father, new Vector2(10355f, 319f), 1f, 4, 3, false, false));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Main_Collector_Quintus));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new DialogueEvent("NanivaInMasterOffice07"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(103, NPCCodex.NPCTypes.Main_Collector_MasterIvy));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new SetCameraShakeEvent(30));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new DialogueEvent("NanivaInMasterOffice07b"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(105, NPCCodex.NPCTypes.Main_Collector_MasterIvy));
                 xCut.AddEvent(new MoveCameraEvent(MoveCameraEvent.GetPosition.LocalPlayer, 1f, false, false));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Father, new Vector2(0f, 1f), 2f, 6, 6, 75));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Naniva, new Vector2(0f, 1f), 2f, 2, 2, 75));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(-1f, 0f), 2f, 7, 1, 15));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(1f, 0f), 2f, 5, 3, 10));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Main_Collector_Quintus));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new WaitEvent(27));
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.Fae_Naniva, 10));
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.Father, 10));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.lxEventsOnSkip.Add(new AnimationEvent(2, NPCCodex.NPCTypes.Main_Collector_Quintus));
                 xCut.AddReleaseEvent(new ReleaseCameraViewPortEvent());
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 11, new float[0]));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(10000f, 0f) + new Vector2(325f, 431f), 4));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(10000f, 0f) + new Vector2(304f, 450f), 4));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(10000f, 0f) + new Vector2(360f, 444f), 4));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(10000f, 0f) + new Vector2(274f, 449f), 4));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Fae_Naniva, new Cutscene.EntityState(new Vector2(10000f, 0f) + new Vector2(320f, 254f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Father, new Cutscene.EntityState(new Vector2(10000f, 0f) + new Vector2(355f, 319f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Main_Collector_Quintus, new Cutscene.EntityState(new Vector2(10000f, 0f) + new Vector2(285f, 319f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(10295f, 351f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(10304f, 375f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(10380f, 366f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(10274f, 368f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Father, new Cutscene.EntityState(new Vector2(5000f, 5000f), 3, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Fae_Naniva, new Cutscene.EntityState(new Vector2(5000f, 5000f), 3, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_PostSkyTemple_TalkingWithDadAndNaniva)
             {
                 xCut.bFadeOnSetup = true;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.lenCreateOnStart.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.lenDestroyAtEnd.Add(NPCCodex.NPCTypes.MrBag);
                 xCut.AddEvent(new QueueSong("HQ"));
                 xCut.AddEvent(new SetAlpha(1f, NPCCodex.NPCTypes.Father));
                 xCut.AddEvent(new SetAlpha(1f, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new DialogueEvent("TalkingWithNaniva01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(8, NPCCodex.NPCTypes.Father));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.Evergrind_Scientist_Bob, new Vector2(704f, 187f)));
                 xCut.AddEvent(new CreateFadeInWatcher(NPCCodex.NPCTypes.Evergrind_Scientist_Bob, 30));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Evergrind_Scientist_Bob, new Vector2(-1f, 0f), 1f, 7, 3, 230));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new DialogueEvent("TalkingWithNaniva02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Father));
                 xCut.AddEvent(new DialogueEvent("TalkingWithNaniva03"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Father));
                 xCut.AddEvent(new DialogueEvent("TalkingWithNaniva04"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new PlaySound("Bag_Appear", false));
                 xCut.AddEvent(new WaitEvent(32));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.MrBag, new Vector2(389f, 165f)));
                 xCut.AddEvent(new AnimationEvent(10, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(1f, 0f), 0.5f, 28));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("TalkingWithNaniva05"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(13, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new WaitEvent(15));
                 xCut.AddEvent(new DialogueEvent("TalkingWithNaniva06"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(22, NPCCodex.NPCTypes.MrBag));
                 xCut.AddEvent(new PlaySound("Bag_Disappear", false));
                 xCut.AddEvent(new WaitEvent(36));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.MrBag, new Vector2(-1f, 0f), 0.5f, 28));
                 xCut.AddEvent(new WaitEvent(28));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.MrBag, new Vector2(-1000f, -1000f)));
                 xCut.AddEvent(new DialogueEvent("TalkingWithNaniva07"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(5));
                 CutsceneEvent xMove2 = new MoveEvent(NPCCodex.NPCTypes.Evergrind_Scientist_Bob, new Vector2(1f, 0f), 2f, 5, 5, 110);
                 CutsceneEvent xMove3 = new MoveEvent(NPCCodex.NPCTypes.Father, new Vector2(1f, 0f), 2f, 5, 5, 160);
                 xCut.AddEvent(xMove2);
                 xCut.AddEvent(xMove3);
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Naniva, new Vector2(1f, 0f), 1f, 1, 0, 34));
                 xCut.AddEvent(new WaitEvent(36));
                 xCut.AddEvent(new DialogueEvent("TalkingWithNaniva08"));
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     xMove2
                 }));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Evergrind_Scientist_Bob, new Vector2(1f, 0f), 2f, 5, 5, 20));
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.Evergrind_Scientist_Bob, 15));
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     xMove3
                 }));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Father, new Vector2(1f, 0f), 2f, 5, 5, 20));
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.Father, 15));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.sEnterDialogueOnEnd = "GetSeasonTempleQuest";
                 xCut.lxEventsOnSkip.Add(new AnimationEvent(1, NPCCodex.NPCTypes.Evergrind_Guard01));
                 xCut.lxEventsOnSkip.Add(new AnimationEvent(3, NPCCodex.NPCTypes.Evergrind_Guard02));
                 xCut.AddReleaseEvent(new ReleaseCameraViewPortEvent());
                 xCut.AddReleaseEvent(new SetAlpha(1f, NPCCodex.NPCTypes.Father));
                 xCut.AddReleaseEvent(new SetAlpha(1f, NPCCodex.NPCTypes.Evergrind_Scientist_Bob));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 12, new float[0]));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(389f, 164f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(369f, 151f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(416f, 151f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(403f, 144f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Evergrind_Guard04, new Cutscene.EntityState(new Vector2(252f, 330f), 2));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Evergrind_Guard05, new Cutscene.EntityState(new Vector2(522f, 330f), 2));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Fae_Naniva, new Cutscene.EntityState(new Vector2(356f, 187f), 1, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Main_Polarn, new Cutscene.EntityState(new Vector2(218f, 137f), 0));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Evergrind_Sally, new Cutscene.EntityState(new Vector2(277f, 215f), 1));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Main_Collector_Biggs, new Cutscene.EntityState(new Vector2(572f, 135f), 2));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Main_Collector_Wedge, new Cutscene.EntityState(new Vector2(545f, 135f), 2));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Father, new Cutscene.EntityState(new Vector2(427f, 187f), 3, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Father, new Cutscene.EntityState(new Vector2(3472f, 164f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Evergrind_Scientist_Bob, new Cutscene.EntityState(new Vector2(3276f, 200f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Fae_Naniva, new Cutscene.EntityState(new Vector2(390f, 187f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Winterland_CantEnterSantaFae)
             {
                 xCut.bFadeOnSetup = true;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = true;
                 xCut.AddEvent(new BagmanInstructionEvent(0, 0, new float[0]));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new DialogueEvent("NanivaFirstTreeCutscene01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(258f, 314f), 1f, false, false));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(101, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new DialogueEvent("NanivaFirstTreeCutscene02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Dots, NPCCodex.NPCTypes.Fae_Naniva, new Vector2(4f, -30f)));
                 xCut.AddEvent(new WaitEvent(120));
                 xCut.AddEvent(new AnimationEvent(102, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new MoveCameraEvent(MoveCameraEvent.GetPosition.LocalPlayer, 1f, false, false));
                 xCut.AddEvent(new WaitEvent(24));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("NanivaFirstTreeCutscene03"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddReleaseEvent(new ReleaseCameraViewPortEvent());
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 5, new float[0]));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 6, new float[0]));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(145f, 425f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(175f, 435f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(115f, 432f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(157f, 445f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Fae_Naniva, new Cutscene.EntityState(new Vector2(145f, 382f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Winterland_MoveTrees)
             {
                 xCut.bFadeOnSetup = true;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = true;
                 xCut.AddEvent(new BagmanInstructionEvent(0, 0, new float[0]));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new DialogueEvent("NanivaSecondTreeCutscene01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(101, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("NanivaSecondTreeCutscene02"));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(258f, 314f), 1f, false, false));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new BagmanInstructionEvent(0, 1, new float[0]));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player01, new Vector2(4f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player02, new Vector2(4f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player03, new Vector2(4f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player04, new Vector2(4f, -30f)));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new DialogueEvent("NanivaSecondTreeCutscene03"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new BagmanInstructionEvent(0, 2, new float[0]));
                 xCut.AddEvent(new WaitEvent(90));
                 xCut.AddEvent(new AnimationEvent(102, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new MoveCameraEvent(MoveCameraEvent.GetPosition.LocalPlayer, 1f, false, false));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new DialogueEvent("NanivaSecondTreeCutscene04"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 3, new float[0]));
                 xCut.AddReleaseEvent(new ReleaseCameraViewPortEvent());
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 4, new float[0]));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 30, new float[0]));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(145f, 425f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(175f, 435f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(115f, 432f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(157f, 445f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Fae_Naniva, new Cutscene.EntityState(new Vector2(145f, 382f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Winterland_MeetLuke)
             {
                 xCut.bFadeOnSetup = true;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(new DestroyAllEnemiesExcept(new NPCCodex.NPCTypes[]
                 {
                     NPCCodex.NPCTypes.GuestOrSign01
                 }));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 10, new float[0]));
                 xCut.AddEvent(new SetVirtualHeight(120f, NPCCodex.NPCTypes.Main_Polarn));
                 xCut.AddEvent(new SetVirtualHeight(120f, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new SetVirtualHeight(120f, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new SetVirtualHeight(120f, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new SetVirtualHeight(120f, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new DialogueEvent("LukeJoins00"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(326f, 674f), 1f, false, false));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new DialogueEvent("LukeJoins00b"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign01, new Vector2(1f, 0f), 1f, 5, 1, 48));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(-1f, 0f), 1f, 7, 3, 40));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new AnimationEvent(1001, NPCCodex.NPCTypes.Main_Polarn));
                 xCut.AddEvent(new WaitEvent(8));
                 xCut.AddEvent(new AnimationEvent(9, NPCCodex.NPCTypes.GuestOrSign01));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(-1f, 0f), 1f, 21));
                 xCut.AddEvent(new WaitEvent(28));
                 xCut.AddEvent(new SetCameraShakeEvent(30));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 11, new float[0]));
                 xCut.AddEvent(new AnimationEvent(29, NPCCodex.NPCTypes.GuestOrSign01));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign01, new Vector2(-1f, 0f), 5f, 10));
                 xCut.AddEvent(new WaitEvent(120));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Dots, NPCCodex.NPCTypes.Main_Polarn, new Vector2(4f, -30f)));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new DialogueEvent("LukeJoins00c"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Main_Polarn));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Main_Polarn, new Vector2(4f, -30f)));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("LukeJoins01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(0f, -1f), 1f, 4, 0, 90));
                 xCut.AddEvent(new MoveCameraEvent(MoveCameraEvent.GetPosition.LocalPlayer, 1f, false, false));
                 xCut.AddEvent(new WaitEvent(90));
                 xCut.AddEvent(new DialogueEvent("LukeJoins01b"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new ReleaseCameraViewPortEvent());
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(-1f, 0f), 2f, 7, 4, 75));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, 1f), 1f, 6, 3, 25));
                 xCut.AddEvent(new WaitEvent(25));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(0f, -1f), 2f, 4, 4, 100));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new DialogueEvent("LukeJoins02"));
                 xCut.AddEvent(new WaitEvent(70));
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.Main_Polarn, 10));
                 xCut.AddEvent(new WaitEvent(15));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddReleaseEvent(new ReleaseCameraViewPortEvent());
                 xCut.AddReleaseEvent(new ActivateFlagTrigger(FlagCodex.FlagID._MainStory_Winterland_TalkToLuke, 1));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(326f, 580f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     3
                 })));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(310f, 580f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     3
                 })));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(340f, 580f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     3
                 })));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(290f, 580f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     3
                 })));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Main_Polarn, new Cutscene.EntityState(new Vector2(390f, 701f), 3, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     3
                 })));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.GuestOrSign01, new Cutscene.EntityState(new Vector2(250f, 701f), 1, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     3
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(326f, 605f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     3
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.GuestOrSign01, new Cutscene.EntityState(new Vector2(-100f, 0f), 1, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     3
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Main_Polarn, new Cutscene.EntityState(new Vector2(-200f, 0f), 1, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     3
                 })));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Winterland_LukeSmash)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.GuestOrSign08));
                 xCut.AddEvent(new AnimationEvent(1012, NPCCodex.NPCTypes.Main_Polarn));
                 xCut.AddEvent(new WaitEvent(16));
                 xCut.AddEvent(new PlaySound("Footstep", false));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(0f, -1f), 2.5f, 24));
                 xCut.AddEvent(new WaitEvent(24));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(0f, -1f), 2.5f, 24, 0.94f));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.Player01, new Vector2(320f, 314f)));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, -1f), 1f, 4, 0, 40));
                 xCut.AddEvent(new CreateFadeInWatcher(NPCCodex.NPCTypes.Player01, 10));
                 xCut.AddEvent(new PlaySound("RunStop", false));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects.ShieldBreakGroundsmoke, NPCCodex.NPCTypes.Main_Polarn, new Vector2(0f, 8f) + Utility.RandomizeVector2Direction(CAS.RandomInVisual) * 3f));
                 xCut.AddEvent(new WaitEvent(2));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects.ShieldBreakGroundsmoke, NPCCodex.NPCTypes.Main_Polarn, new Vector2(0f, 8f) + Utility.RandomizeVector2Direction(CAS.RandomInVisual) * 3f));
                 xCut.AddEvent(new WaitEvent(2));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects.ShieldBreakGroundsmoke, NPCCodex.NPCTypes.Main_Polarn, new Vector2(0f, 8f) + Utility.RandomizeVector2Direction(CAS.RandomInVisual) * 3f));
                 xCut.AddEvent(new WaitEvent(2));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects.ShieldBreakGroundsmoke, NPCCodex.NPCTypes.Main_Polarn, new Vector2(0f, 8f) + Utility.RandomizeVector2Direction(CAS.RandomInVisual) * 3f));
                 xCut.AddEvent(new WaitEvent(2));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects.ShieldBreakGroundsmoke, NPCCodex.NPCTypes.Main_Polarn, new Vector2(0f, 8f) + Utility.RandomizeVector2Direction(CAS.RandomInVisual) * 3f));
                 xCut.AddEvent(new WaitEvent(2));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.Player02, new Vector2(304f, 314f)));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(0f, -1f), 1f, 4, 0, 30));
                 xCut.AddEvent(new CreateFadeInWatcher(NPCCodex.NPCTypes.Player02, 10));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.Player03, new Vector2(336f, 314f)));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(0f, -1f), 1f, 4, 0, 20));
                 xCut.AddEvent(new CreateFadeInWatcher(NPCCodex.NPCTypes.Player03, 10));
                 xCut.AddEvent(new AnimationEvent(1002, NPCCodex.NPCTypes.Main_Polarn));
                 xCut.AddEvent(new WaitEvent(12));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.Player04, new Vector2(320f, 317f)));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(0f, -1f), 1f, 4, 0, 10));
                 xCut.AddEvent(new CreateFadeInWatcher(NPCCodex.NPCTypes.Player04, 10));
                 xCut.AddEvent(new AnimationEvent(1001, NPCCodex.NPCTypes.GuestOrSign01));
                 xCut.AddEvent(new PlaySound("TwohandedSwing", false));
                 xCut.AddEvent(new PlaySound("Hit_Slash", false));
                 Cutscene arg_FC81_0 = xCut;
                 byte arg_FC7C_0 = 0;
                 byte arg_FC7C_1 = 3;
                 float[] afParams = new float[1];
                 arg_FC81_0.AddEvent(new BagmanInstructionEvent(arg_FC7C_0, arg_FC7C_1, afParams));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.GuestOrSign02, new Vector2(4f, -20f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.GuestOrSign03, new Vector2(4f, -20f)));
                 xCut.AddEvent(new WaitEvent(32));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 3, new float[]
                 {
                     1f
                 }));
                 xCut.AddEvent(new PlaySound("TwohandedSwing", false));
                 xCut.AddEvent(new PlaySound("Hit_Slash", false));
                 xCut.AddEvent(new WaitEvent(32));
                 xCut.AddEvent(new WaitEvent(4));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign01, new Vector2(1f, 0f), 9f, 12));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects._HitEffect_SmashOnHit01, new Vector2(327f, 224f)));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 2, new float[0]));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 3, new float[]
                 {
                     2f
                 }));
                 xCut.AddEvent(new PlaySound("Hit_Slash", false));
                 xCut.AddEvent(new WaitEvent(6));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign02, new Vector2(0.7f, -0.6f), 8f, 30, 0.97f));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects._HitEffect_SmashOnHitWall01, new Vector2(378f, 219f)));
                 xCut.AddEvent(new AnimationEvent(10003, NPCCodex.NPCTypes.GuestOrSign02));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 3, new float[]
                 {
                     3f
                 }));
                 xCut.AddEvent(new PlaySound("Hit_Slash", false));
                 xCut.AddEvent(new WaitEvent(2));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign03, new Vector2(0.7f, 0.6f), 8f, 30, 0.97f));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects._HitEffect_SmashOnHitWall01, new Vector2(442f, 224f)));
                 xCut.AddEvent(new AnimationEvent(10003, NPCCodex.NPCTypes.GuestOrSign03));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 3, new float[]
                 {
                     4f
                 }));
                 xCut.AddEvent(new WaitEvent(4));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 3, new float[]
                 {
                     5f
                 }));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 1, new float[0]));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects._HitEffect_SmashOnHitWall01, new Vector2(403f, 230f)));
                 xCut.AddEvent(new WaitEvent(15));
                 if (CAS.NetworkRole == NetworkHelperInterface.NetworkRole.Client)
                 {
                     xCut.AddEvent(new KillEnemyEvent(NPCCodex.NPCTypes.GuestOrSign01));
                     xCut.AddEvent(new KillEnemyEvent(NPCCodex.NPCTypes.GuestOrSign02));
                     xCut.AddEvent(new KillEnemyEvent(NPCCodex.NPCTypes.GuestOrSign03));
                 }
                 xCut.AddEvent(new WaitEvent(15));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Main_Polarn));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Dots, NPCCodex.NPCTypes.GuestOrSign06, new Vector2(4f, -20f)));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new AnimationEvent(1002, NPCCodex.NPCTypes.GuestOrSign06));
                 xCut.AddEvent(new WaitEvent(24));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 4, new float[0]));
                 xCut.AddEvent(new WaitEvent(14));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign04, new Vector2(0f, -1f), 1f, 4, 4, 100));
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.GuestOrSign04, 10));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign05, new Vector2(0f, -1f), 1f, 4, 4, 100));
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.GuestOrSign05, 10));
                 xCut.AddEvent(new WaitEvent(14));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign06, new Vector2(0f, -1f), 1f, 4, 4, 100));
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.GuestOrSign06, 15));
                 xCut.AddEvent(new WaitEvent(24));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(0f, -1f), 1f, 4, 0, 30));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 0, new float[0]));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Question, NPCCodex.NPCTypes.Main_Polarn, new Vector2(4f, -32f)));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign07));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.GuestOrSign08));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects.JarBreak, new Vector2(403f, 171f)));
                 xCut.AddEvent(new PlaySound("Jar_break", false));
                 xCut.AddEvent(new PlaySound("Gund4m_Flaps_A", false));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Main_Polarn));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryEntrance_Luke01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(402f, 171f), 1.4f, 4, 0, false, false))
                 }));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 5, new float[0]));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign08));
                 xCut.AddEvent(new PlaySound("door_open", false));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Main_Polarn));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryEntrance_Luke02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(-1f, 0f), 2f, 7, 3, 20));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 0, new float[0]));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.GuestOrSign08));
                 xCut.AddEvent(new PlaySound("Gund4m_Flaps_A", false));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryEntrance_Luke03"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(1f, 0f), 1f, 5, 2, 40));
                 xCut.AddEvent(new WaitEvent(35));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 5, new float[0]));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign08));
                 xCut.AddEvent(new PlaySound("door_open", false));
                 xCut.AddEvent(new WaitEvent(5));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryEntrance_Luke04"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddReleaseEvent(new ActivateFlagTrigger(FlagCodex.FlagID._MainStory_Winterland_ToyFactoryEntranceLukeFightSeen, 0));
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 5, new float[0]));
                 xCut.lxEventsOnSkip.Add(new AnimationEvent(2, NPCCodex.NPCTypes.GuestOrSign08));
                 xCut.lxEventsOnSkip.Add(new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign07));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(5000f, 5000f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(5000f, 5000f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(5000f, 5000f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(5000f, 5000f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(320f, 274f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(304f, 284f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(333f, 294f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(320f, 307f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Main_Polarn, new Cutscene.EntityState(new Vector2(402f, 171f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.GuestOrSign01, new Cutscene.EntityState(new Vector2(10000f, 171f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.GuestOrSign02, new Cutscene.EntityState(new Vector2(10000f, 171f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.GuestOrSign03, new Cutscene.EntityState(new Vector2(10000f, 171f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.GuestOrSign04, new Cutscene.EntityState(new Vector2(10000f, 171f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.GuestOrSign05, new Cutscene.EntityState(new Vector2(10000f, 171f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.GuestOrSign06, new Cutscene.EntityState(new Vector2(10000f, 171f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Winterland_LukeComeForPuzzle)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.sPlayMusicOnEnd = "Challenge";
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player01, new Vector2(4f, -32f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player02, new Vector2(4f, -32f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player03, new Vector2(4f, -32f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player04, new Vector2(4f, -32f)));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryBombTrains_Start01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 CutsceneEvent ost = xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(349f, 302f), 1.4f, 4, 0, false, false));
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     ost
                 }));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(320f, 300f), 1.5f, true, false));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(15));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryBombTrains_Start02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(15));
                 xCut.AddEvent(new SetCameraShakeEvent(30));
                 xCut.AddEvent(new WaitEvent(45));
                 xCut.AddEvent(new SetCameraShakeEvent(30));
                 xCut.AddEvent(new WaitEvent(45));
                 xCut.AddEvent(new SetCameraShakeEvent(5));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player01, new Vector2(4f, -32f)));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign01));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new SetCameraShakeEvent(45));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(598f, 290f)));
                 xCut.AddEvent(new ToggleMoveCollider(NPCCodex.NPCTypes.Main_Polarn, false));
                 xCut.AddEvent(new CreateFadeInWatcher(NPCCodex.NPCTypes.Main_Polarn, 30));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(-1f, 0f), 1f, 7, 3, 60));
                 xCut.AddEvent(new WaitEvent(15));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryBombTrains_Start03"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Question, NPCCodex.NPCTypes.Main_Polarn, new Vector2(4f, -32f)));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryBombTrains_Start04"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Dots, NPCCodex.NPCTypes.Main_Polarn, new Vector2(4f, -32f)));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryBombTrains_Start05"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new BagmanInstructionEvent(0, 1, new float[0]));
                 ost = xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Fae_Naniva, new Vector2(369f, 302f), 2f, 0, 1, false, false));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryBombTrains_Start06"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     ost
                 }));
                 ost = xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Fae_Naniva, new Vector2(477f, 258f), 2f, 0, 2, false, false));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new QueueSong("Challenge"));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(320f, 160f), 1.5f, false, false));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 2, new float[0]));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player01, new Vector2(4f, -32f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player02, new Vector2(4f, -32f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player03, new Vector2(4f, -32f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player04, new Vector2(4f, -32f)));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(226f, 220f), 2f, 4, 0, true, true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(316f, 218f), 2f, 4, 0, true, true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(324f, 154f), 2f, 4, 3, true, true));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryBombTrains_Start07"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     ost
                 }));
                 xCut.lxEventsOnSkip.Add(new AnimationEvent(2, NPCCodex.NPCTypes.GuestOrSign01));
                 xCut.lxEventsOnSkip.Add(new MoveCameraEvent(new Vector2(320f, 160f), 10000f, false, false));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 3, new float[0]));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 2, new float[0]));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 1, new float[0]));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(349f, 302f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(226f, 220f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(316f, 218f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(324f, 154f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Main_Polarn, new Cutscene.EntityState(new Vector2(538f, 290f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Fae_Naniva, new Cutscene.EntityState(new Vector2(477f, 258f), 2, Cutscene.EntityState.MovementColliderChange.None, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Winterland_LukeMidPuzzle)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(new BagmanInstructionEvent(0, 5, new float[0]));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(320f, 300f), 1.5f, true, false));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(15));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryBombTrains_Mid01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(320f, 160f), 1.5f, false, false));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.lxEventsOnSkip.Add(new MoveCameraEvent(new Vector2(320f, 160f), 10000f, false, false));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 2, new float[0]));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 6, new float[0]));
                 xCut.AddReleaseEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Fae_Naniva));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Winterland_LukeEndPuzzle)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(new QueueSong("ToyFactory"));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 5, new float[0]));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(320f, 300f), 1.5f, true, false));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(15));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryBombTrains_End01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(320f, 160f), 1.5f, false, false));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.lxEventsOnSkip.Add(new MoveCameraEvent(new Vector2(320f, 160f), 10000f, false, false));
                 xCut.lxEventsOnSkip.Add(new QueueSong("ToyFactory"));
                 xCut.AddReleaseEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Fae_Naniva));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Winterland_ToyMachineFightBegin)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryBombBoss_Startup01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.GuestOrSign06, 60));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(5, NPCCodex.NPCTypes.GuestOrSign02));
                 xCut.AddEvent(new WaitEvent(44));
                 xCut.AddEvent(new QueueSong("BossBattle01"));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player01, new Vector2(4f, -32f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player02, new Vector2(4f, -32f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player03, new Vector2(4f, -32f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player04, new Vector2(4f, -32f)));
                 xCut.AddEvent(new WaitEvent(140));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryBombBoss_Startup02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddReleaseEvent(new EnterAnotherCutscene(CutsceneLibrary.CutsceneID._MainStory_Winterland_ToyMachineBossName));
                 xCut.lxEventsOnSkip.Add(new SetPositionEvent(NPCCodex.NPCTypes.GuestOrSign06, new Vector2(5000f, 5000f)));
                 xCut.lxEventsOnSkip.Add(new AnimationEvent(0, NPCCodex.NPCTypes.GuestOrSign02));
                 xCut.lxEventsOnSkip.Add(new QueueSong("BossBattle01"));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Winterland_ToyMachineBossName)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.bUnskippable = true;
                 xCut.bRemoveAllMonsters = false;
                 xCut.iEndFrame = 42;
                 CutsceneEvent it7 = new StartBossNameFlash(EnemyCodex.EnemyTypes.EnragedToyMachine);
                 xCut.AddEvent(10, it7);
                 xCut.AddEvent(20, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     it7
                 }));
                 xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
                 xCut.lxEventsAtRelease.Add(new ActivateEnemyEvent(NPCCodex.NPCTypes.GuestOrSign02));
                 xCut.lxEventsAtRelease.Add(new BagmanInstructionEvent(0, 19, new float[0]));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Winterland_LukeEnterBossFight)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(new ToggleCombatCollider(NPCCodex.NPCTypes.Player01, false));
                 xCut.AddEvent(new ToggleCombatCollider(NPCCodex.NPCTypes.Player02, false));
                 xCut.AddEvent(new ToggleCombatCollider(NPCCodex.NPCTypes.Player03, false));
                 xCut.AddEvent(new ToggleCombatCollider(NPCCodex.NPCTypes.Player04, false));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new WaitEvent(15));
                 xCut.AddEvent(new SetCameraShakeEvent(20));
                 xCut.AddEvent(new WaitEvent(45));
                 xCut.AddEvent(new SetCameraShakeEvent(20));
                 xCut.AddEvent(new WaitEvent(45));
                 xCut.AddEvent(new SetCameraShakeEvent(5));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Player01, new Vector2(4f, -32f)));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 10, new float[0]));
                 xCut.AddEvent(new WaitEvent(12));
                 xCut.AddEvent(new SetCameraShakeEvent(60));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.Fae_Naniva, new Vector2(479f, 78f)));
                 xCut.AddEvent(new CreateFadeInWatcher(NPCCodex.NPCTypes.Fae_Naniva, 30));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Naniva, new Vector2(-1f, 0f), 1f, 3, 2, 32));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(479f, 94f)));
                 xCut.AddEvent(new ToggleMoveCollider(NPCCodex.NPCTypes.Main_Polarn, false));
                 xCut.AddEvent(new CreateFadeInWatcher(NPCCodex.NPCTypes.Main_Polarn, 30));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(-1f, 0f), 1f, 7, 2, 22));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryBombBoss_EnterLuke01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(1010, NPCCodex.NPCTypes.Main_Polarn));
                 xCut.AddEvent(new WaitEvent(32));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(-1f, 0f), 3f, 12));
                 xCut.AddEvent(new WaitEvent(9));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Main_Polarn));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign03));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.GuestOrSign04, new Vector2(395f, 92f)));
                 xCut.AddEvent(new WaitEvent(120));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign05, new Vector2(1f, 0.6f), 4f, 40, 0.98f));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign05));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign01));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects._Unique_ToyFactory_BossRoomWindow_GlassBreak, new Vector2(409f, 119f)));
                 xCut.AddEvent(new PlaySound("Jar_break", false));
                 xCut.AddEvent(new WaitEvent(6));
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.GuestOrSign04, 10));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new SetVirtualHeight(-10f, NPCCodex.NPCTypes.GuestOrSign05));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryBombBoss_EnterLuke01b"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(1f, 0f), 1f, 5, 2, 13));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new AnimationEvent(1011, NPCCodex.NPCTypes.Main_Polarn));
                 xCut.AddEvent(new WaitEvent(36));
                 xCut.AddEvent(new SetCameraShakeEvent(20));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 11, new float[0]));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryBombBoss_EnterLuke02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.lxEventsOnSkip.Add(new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign01));
                 xCut.lxEventsOnSkip.Add(new AnimationEvent(1, NPCCodex.NPCTypes.GuestOrSign03));
                 xCut.lxEventsOnSkip.Add(new AnimationEvent(1011, NPCCodex.NPCTypes.Main_Polarn));
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 11, new float[0]));
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 12, new float[0]));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 1, new float[0]));
                 xCut.AddReleaseEvent(new ToggleCombatCollider(NPCCodex.NPCTypes.Player01, true));
                 xCut.AddReleaseEvent(new ToggleCombatCollider(NPCCodex.NPCTypes.Player02, true));
                 xCut.AddReleaseEvent(new ToggleCombatCollider(NPCCodex.NPCTypes.Player03, true));
                 xCut.AddReleaseEvent(new ToggleCombatCollider(NPCCodex.NPCTypes.Player04, true));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Main_Polarn, new Cutscene.EntityState(new Vector2(434f, 94f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Fae_Naniva, new Cutscene.EntityState(new Vector2(447f, 78f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.GuestOrSign04, new Cutscene.EntityState(new Vector2(5000f, 5000f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.GuestOrSign05, new Cutscene.EntityState(new Vector2(541f, 156f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Winterland_ToyMachineDefeated)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.sPlayMusicOnEnd = "ToyFactory";
                 xCut.AddEvent(new ToggleCombatCollider(NPCCodex.NPCTypes.Player01, false));
                 xCut.AddEvent(new ToggleCombatCollider(NPCCodex.NPCTypes.Player02, false));
                 xCut.AddEvent(new ToggleCombatCollider(NPCCodex.NPCTypes.Player03, false));
                 xCut.AddEvent(new ToggleCombatCollider(NPCCodex.NPCTypes.Player04, false));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(313f, 225f), 1.4f, 4, 0, true, true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(285f, 256f), 1.4f, 4, 0, true, true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(339f, 256f), 1.4f, 4, 0, true, true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(315f, 266f), 1.4f, 4, 0, true, true));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new QueueSong("ToyFactory"));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new SetCameraShakeEvent(20));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects.ExplosionRed, new Vector2(271f, 145f), 120f));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new SetCameraShakeEvent(20));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects.ExplosionRed, new Vector2(353f, 130f), 120f));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new SetCameraShakeEvent(20));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects.ExplosionRed, new Vector2(293f, 88f), 120f));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 14, new float[0]));
                 xCut.AddEvent(new WaitEvent(24));
                 xCut.AddEvent(new SetCameraShakeEvent(20));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects.ExplosionRed, new Vector2(353f, 98f), 120f));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new SetCameraShakeEvent(20));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects.ExplosionRed, new Vector2(311f, 117f), 120f));
                 xCut.AddEvent(new WaitEvent(16));
                 xCut.AddEvent(new SetCameraShakeEvent(20));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects.ExplosionRed, new Vector2(283f, 123f), 120f));
                 xCut.AddEvent(new WaitEvent(16));
                 xCut.AddEvent(new SetCameraShakeEvent(20));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects.ExplosionRed, new Vector2(261f, 75f), 120f));
                 xCut.AddEvent(new WaitEvent(16));
                 xCut.AddEvent(new SetCameraShakeEvent(20));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects.ExplosionRed, new Vector2(347f, 112f), 120f));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new SetCameraShakeEvent(20));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects.ExplosionRed, new Vector2(262f, 143f), 120f));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new SetCameraShakeEvent(20));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects.ExplosionRed, new Vector2(341f, 135f), 120f));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new SetCameraShakeEvent(20));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects.ExplosionRed, new Vector2(312f, 110f), 120f));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new AnimationEvent(4, NPCCodex.NPCTypes.GuestOrSign02));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 15, new float[0]));
                 xCut.AddEvent(new WaitEvent(120));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryBombBossDefeated01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(5));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Main_Polarn, new Vector2(1f, 0f), 2f, 5, 5, 25));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new CreateFadeOutWatcher(NPCCodex.NPCTypes.Main_Polarn, 16));
                 xCut.AddEvent(new DialogueEvent("ToyFactoryBombBossDefeated02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Naniva, new Vector2(-0.3f, 1f), 1f, 2, 2, 50));
                 xCut.AddEvent(new SetVirtualHeight(25f, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new WaitEvent(50));
                 xCut.AddEvent(new SetVirtualHeight(0f, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.lxEventsOnSkip.Add(new AnimationEvent(4, NPCCodex.NPCTypes.GuestOrSign02));
                 xCut.lxEventsOnSkip.Add(new BagmanInstructionEvent(0, 17, new float[0]));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 16, new float[0]));
                 xCut.AddReleaseEvent(new ToggleCombatCollider(NPCCodex.NPCTypes.Player01, true));
                 xCut.AddReleaseEvent(new ToggleCombatCollider(NPCCodex.NPCTypes.Player02, true));
                 xCut.AddReleaseEvent(new ToggleCombatCollider(NPCCodex.NPCTypes.Player03, true));
                 xCut.AddReleaseEvent(new ToggleCombatCollider(NPCCodex.NPCTypes.Player04, true));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(313f, 225f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(285f, 256f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(339f, 256f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(315f, 266f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Main_Polarn, new Cutscene.EntityState(new Vector2(5000f, 5000f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Winterland_ToyFactoryQuestDone)
             {
                 xCut.bFadeOnSetup = true;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(new BagmanInstructionEvent(0, 0, new float[0]));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("CompleteToyFactoryQuest01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(103, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new WaitEvent(200));
                 xCut.AddEvent(new DialogueEvent("CompleteToyFactoryQuest02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(5));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Dots, NPCCodex.NPCTypes.Winterland_MrsClaus, new Vector2(4f, -32f)));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new DialogueEvent("CompleteToyFactoryQuest03"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 5, new float[0]));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 20, new float[0]));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(4000f, 0f) + new Vector2(281f, 206f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(4000f, 0f) + new Vector2(308f, 186f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(4000f, 0f) + new Vector2(255f, 213f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(4000f, 0f) + new Vector2(268f, 235f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Fae_Naniva, new Cutscene.EntityState(new Vector2(4000f, 0f) + new Vector2(259f, 181f), 1, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_Winterland_WinterElderCreezi)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(new BagmanInstructionEvent(0, 0, new float[0]));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new DialogueEvent("EnterSantaFae01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new StopSong(false));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Question, NPCCodex.NPCTypes.Fae_Naniva, new Vector2(4f, -30f)));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new DialogueEvent("EnterSantaFae02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new QueueSong("Omen"));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Fae_Naniva, new Vector2(4f, -30f)));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     xCut.AddEvent(new MoveCameraEvent(new Vector2(361f, 690f), 2f, true, false))
                 }));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Autumn_FrozenGuy, new Vector2(-1f, 0f), 0.25f, 60));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new DialogueEvent("EnterSantaFae03"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(100, NPCCodex.NPCTypes.Fae_Winter));
                 xCut.AddEvent(new WaitEvent(32));
                 xCut.AddEvent(new AnimationEvent(100, NPCCodex.NPCTypes.Fae_Autumn_FrozenGuy));
                 xCut.AddEvent(new SetCameraShakeEvent(30));
                 Vector2 v2DangerousMan = new Vector2(360f, 679f);
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign01, Utility.Normalize(new Vector2(249f, 726f) - v2DangerousMan), 0.5f, 60, 0.98f));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign02, Utility.Normalize(new Vector2(299f, 662f) - v2DangerousMan), 0.5f, 60, 0.98f));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign03, Utility.Normalize(new Vector2(408f, 672f) - v2DangerousMan), 0.5f, 60, 0.98f));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign04, Utility.Normalize(new Vector2(484f, 728f) - v2DangerousMan), 0.5f, 60, 0.98f));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign05, Utility.Normalize(new Vector2(412f, 773f) - v2DangerousMan), 0.5f, 60, 0.98f));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign06, Utility.Normalize(new Vector2(376f, 781f) - v2DangerousMan), 0.5f, 60, 0.98f));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign07, Utility.Normalize(new Vector2(346f, 782f) - v2DangerousMan), 0.5f, 60, 0.98f));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.GuestOrSign08, Utility.Normalize(new Vector2(311f, 773f) - v2DangerousMan), 0.5f, 60, 0.98f));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.GuestOrSign08, new Vector2(4f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.GuestOrSign03, new Vector2(4f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Upset, NPCCodex.NPCTypes.GuestOrSign05, new Vector2(4f, -30f)));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Fae_Autumn, new Vector2(345f, 717f), 2f, 0, 0, false, false));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Fae_Winter));
                 xCut.AddEvent(new DialogueEvent("EnterSantaFae04"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Fae_Summer, new Vector2(375f, 717f), 2f, 0, 0, false, false));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new DialogueEvent("EnterSantaFae05"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("EnterSantaFae06"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(101, NPCCodex.NPCTypes.Fae_Winter));
                 xCut.AddEvent(new WaitEvent(200));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.GuestOrSign01, new Vector2(4f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.GuestOrSign04, new Vector2(4f, -30f)));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Upset, NPCCodex.NPCTypes.GuestOrSign08, new Vector2(4f, -30f)));
                 xCut.AddEvent(new SetCameraShakeEvent(50));
                 xCut.AddEvent(new SetAlpha(0f, NPCCodex.NPCTypes.Fae_Autumn));
                 xCut.AddEvent(new SetAlpha(0f, NPCCodex.NPCTypes.Fae_Summer));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new SetCameraShakeEvent(40));
                 xCut.AddEvent(new WaitEvent(26));
                 xCut.AddEvent(new SetCameraShakeEvent(30));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new SetAlpha(1f, NPCCodex.NPCTypes.Fae_Autumn));
                 xCut.AddEvent(new SetAlpha(1f, NPCCodex.NPCTypes.Fae_Summer));
                 xCut.AddEvent(new DialogueEvent("EnterSantaFae07"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new DialogueEvent("EnterSantaFae08"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Winter, new Vector2(0f, -1f), 2f, 0, 0, 200));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Summer, new Vector2(0f, -1f), 2f, 0, 0, 200));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Autumn, new Vector2(0f, -1f), 2f, 0, 0, 200));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new MoveCameraEvent(MoveCameraEvent.GetPosition.LocalPlayer, 2f, true, false));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new DialogueEvent("EnterSantaFae09"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.lxEventsOnSkip.Add(new ReleaseCameraViewPortEvent());
                 xCut.lxEventsOnSkip.Add(new AnimationEvent(101, NPCCodex.NPCTypes.Fae_Autumn_FrozenGuy));
                 xCut.lxEventsOnSkip.Add(new QueueSong("Omen"));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 1, new float[0]));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 2, new float[0]));
                 xCut.lxEventsAtRelease.Add(new ReleaseCameraViewPortEvent());
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(280f, 1054f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(317f, 1062f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(296f, 1071f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(263f, 1078f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Fae_Naniva, new Cutscene.EntityState(new Vector2(279f, 1014f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Fae_Autumn, new Cutscene.EntityState(new Vector2(5000f, 5000f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Fae_Summer, new Cutscene.EntityState(new Vector2(5000f, 5000f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Fae_Winter, new Cutscene.EntityState(new Vector2(5000f, 5000f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SeasonTemple_EnterLobby)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(new BagmanInstructionEvent(0, 1, new float[0]));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.Fae_Naniva, new Vector2(340f, 405f)));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(340f, 380f), 1f, false, false));
                 xCut.AddEvent(new WaitEvent(120));
                 xCut.AddEvent(new DialogueEvent("EnterTemple01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Exclamation, NPCCodex.NPCTypes.Fae_Naniva, new Vector2(4f, -30f)));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new DialogueEvent("EnterTemple02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new AttachedEffectEvent(SortedAnimated.SortedAnimatedEffects._GUIEffects_Emote_Dots, NPCCodex.NPCTypes.Fae_Naniva, new Vector2(4f, -30f)));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new DialogueEvent("EnterTemple03"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 CutsceneEvent asd = xCut.AddEvent(new MoveCameraEvent(MoveCameraEvent.GetPosition.LocalPlayer, 1f, false, false));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     asd
                 }));
                 xCut.lxEventsOnSkip.Add(new ReleaseCameraViewPortEvent());
                 xCut.AddReleaseEvent(new ReleaseCameraViewPortEvent());
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 2, new float[0]));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(340f, 441f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(317f, 445f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(366f, 446f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(354f, 463f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(340f, 441f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(317f, 445f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(366f, 446f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(354f, 463f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SeasonTemple_PreFaeBattle)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.AddEvent(new QueueSong("Omen"));
                 xCut.AddEvent(new BagmanInstructionEvent(0, 1, new float[0]));
                 xCut.AddEvent(new SetPositionEvent(NPCCodex.NPCTypes.Fae_Naniva, new Vector2(320f, 422f)));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(320f, 250f), 1000f, false, false));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Winter, new Vector2(0f, -1f), 0.5f, 60));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Autumn, new Vector2(0f, -1f), 0.75f, 80));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Summer, new Vector2(0f, -1f), 0.75f, 80));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(319f, 210f), 1f, false, false));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("PreFaeBattle01"));
                 xCut.AddEvent(new WaitEvent(25));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Fae_Winter));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Fae_Summer));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Fae_Autumn));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(320f, 250f), 1f, true, false));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Naniva, new Vector2(0f, -1f), 2f, 50));
                 xCut.AddEvent(new WaitEvent(100));
                 xCut.AddEvent(new DialogueEvent("PreFaeBattle02"));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Winter, new Vector2(0f, 1f), 0.5f, 60));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, -1f), 2f, 4, 0, 100));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(0f, -1f), 2f, 4, 0, 100));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(0f, -1f), 2f, 4, 0, 100));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(0f, -1f), 2f, 4, 0, 100));
                 xCut.AddEvent(new WaitEvent(120));
                 xCut.AddEvent(new DialogueEvent("PreFaeBattle03"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(103, NPCCodex.NPCTypes.Fae_Winter));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("PreFaeBattle04"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(105, NPCCodex.NPCTypes.Fae_Winter));
                 xCut.AddEvent(new WaitEvent(50));
                 xCut.AddEvent(new DialogueEvent("PreFaeBattle05"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(320f, 300f), 1f, false, false));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Winter, new Vector2(0f, -1f), 1f, 120));
                 xCut.AddEvent(new WaitEvent(35));
                 xCut.AddEvent(new DialogueEvent("PreFaeBattle06"));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Naniva, new Vector2(0f, -1f), 1f, 50));
                 xCut.AddEvent(new WaitEvent(25));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Autumn, new Vector2(-1f, 0.2f), 2f, 15));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Summer, new Vector2(1f, 0.2f), 2f, 15));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new DialogueEvent("PreFaeBattle07"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(320f, 345f), 1f, false, false));
                 xCut.AddEvent(new BagmanInstructionEvent(1, 5, new float[0]));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Fae_Autumn, new Vector2(443f, 357f), 2f, 0, 3, false, false));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Fae_Summer, new Vector2(202f, 357f), 2f, 0, 1, false, false));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Naniva, new Vector2(0f, -1f), 1f, 30));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new AnimationEvent(1, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("PreFaeBattle08"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.lxEventsOnSkip.Add(new MoveCameraEvent(new Vector2(320f, 345f), 1000f, true, false));
                 xCut.lxEventsAtRelease.Add(new MoveCameraEvent(new Vector2(320f, 345f), 1000f, true, false));
                 xCut.AddReleaseEvent(new EnterAnotherCutscene(CutsceneLibrary.CutsceneID._MainStory_SeasonTemple_FaeBossName));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(299f, 533f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(355f, 537f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(305f, 546f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(335f, 554f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Fae_Naniva, new Cutscene.EntityState(new Vector2(320f, 422f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(299f, 333f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(355f, 337f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(305f, 346f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(335f, 354f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision, Utility.CreateIntMask(new int[]
                 {
                     1
                 })));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Fae_Naniva, new Cutscene.EntityState(new Vector2(320f, 244f), 2, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Fae_Autumn, new Cutscene.EntityState(new Vector2(443f, 357f), 3, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Fae_Summer, new Cutscene.EntityState(new Vector2(202f, 357f), 1, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Fae_Winter, new Cutscene.EntityState(new Vector2(5000f, 5000f), 0, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SeasonTemple_FaeBossName)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.bUnskippable = true;
                 xCut.bRemoveAllMonsters = false;
                 xCut.iEndFrame = 42;
                 CutsceneEvent it8 = new StartBossNameFlash(EnemyCodex.EnemyTypes.AutumnFae);
                 xCut.sPlayMusicOnEnd = "MiniBossBattle03";
                 xCut.AddEvent(2, new PlaySong("MiniBossBattle03", true));
                 xCut.AddEvent(10, it8);
                 xCut.AddEvent(20, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     it8
                 }));
                 xCut.AddEvent(new SetCameraShakeEvent(30));
                 xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
                 xCut.lxEventsAtEnd.Add(new BagmanInstructionEvent(1, 1, new float[0]));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SeasonTemple_PostFaeBattle)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.sPlayMusicOnEnd = "WinterTheme";
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new StopSong(false));
                 xCut.AddEvent(new WaitEvent(100));
                 xCut.AddEvent(new AnimationEvent(25, NPCCodex.NPCTypes.Fae_Autumn));
                 xCut.AddEvent(new AnimationEvent(25, NPCCodex.NPCTypes.Fae_Summer));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new DialogueEvent("PostFaeBattle01"));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new PlaySong("WinterTheme", true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(323f, 372f), 1f, 4, 0, true, true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(301f, 381f), 1f, 4, 0, true, true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(344f, 381f), 1f, 4, 0, true, true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(322f, 406f), 1f, 4, 0, true, true));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Fae_Naniva, new Vector2(334f, 354f), 2f, 0, 0, false, false));
                 xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Fae_Autumn, new Vector2(303f, 320f), 1f, 0, 2, false, false));
                 CutsceneEvent ost2 = xCut.AddEvent(new AdvancedMoveEvent(NPCCodex.NPCTypes.Fae_Summer, new Vector2(340f, 320f), 1f, 0, 2, false, false));
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     ost2
                 }));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("PostFaeBattle02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new BagmanInstructionEvent(1, 3, new float[0]));
                 xCut.AddEvent(new WaitEvent(100));
                 xCut.AddEvent(new DialogueEvent("PostFaeBattle03"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new PlaySound("Receive_Phase_Shift", false));
                 xCut.AddEvent(new AnimationEvent(2300, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(2300, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(2300, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(2300, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new BagmanInstructionEvent(1, 8, new float[0]));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new BagmanInstructionEvent(1, 8, new float[0]));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new BagmanInstructionEvent(1, 8, new float[0]));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new BagmanInstructionEvent(1, 8, new float[0]));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new AnimationEvent(2302, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(2302, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(2302, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(2302, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new BagmanInstructionEvent(1, 0, new float[0]));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player02));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player03));
                 xCut.AddEvent(new AnimationEvent(0, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new DialogueEvent("PostFaeBattle04"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Autumn, new Vector2(0.1f, 1f), 2f, 2, 2, 30));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Summer, new Vector2(-0.1f, 1f), 2f, 2, 2, 30));
                 xCut.AddEvent(new WaitEvent(5));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(-1f, 0f), 2f, 7, 2, 15));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(1f, 0f), 2f, 5, 2, 15));
                 xCut.AddEvent(new WaitEvent(25));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player01));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Fae_Naniva));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Autumn, new Vector2(0f, 1f), 2f, 2, 2, 200));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Fae_Summer, new Vector2(0f, 1f), 2f, 2, 2, 200));
                 xCut.AddEvent(new AnimationEvent(2, NPCCodex.NPCTypes.Player04));
                 xCut.AddEvent(new MoveCameraEvent(MoveCameraEvent.GetPosition.LocalPlayer, 1f, true, false));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new DialogueEvent("PostFaeBattle05"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.lxEventsOnSkip.Add(new ReleaseCameraViewPortEvent());
                 xCut.lxEventsAtRelease.Add(new ReleaseCameraViewPortEvent());
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(0, 2, new float[0]));
                 xCut.AddReleaseEvent(new BagmanInstructionEvent(1, 4, new float[0]));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(323f, 372f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(271f, 381f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(374f, 381f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(322f, 406f), 2, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Fae_Autumn, new Cutscene.EntityState(new Vector2(5000f, 5000f), 3, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Fae_Summer, new Cutscene.EntityState(new Vector2(5000f, 5000f), 1, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SeasonTemple_EnterF02Battle01)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.bRemoveAllMonsters = false;
                 xCut.bUnskippable = true;
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(-1f, 0f), 1f, 7, 3, 50));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(-1f, 0f), 1f, 7, 3, 50));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(-1f, 0f), 1f, 7, 3, 50));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(-1f, 0f), 1f, 7, 3, 50));
                 xCut.AddEvent(new WaitEvent(40));
                 xCut.AddEvent(new BagmanInstructionEvent(1, 3, new float[0]));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new BagmanInstructionEvent(1, 0, new float[0]));
                 xCut.AddEvent(new EndCutscene());
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(492f, 399f), 7, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(500f, 394f), 7, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(509f, 404f), 7, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(515f, 398f), 7, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(442f, 399f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(450f, 394f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(459f, 404f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(465f, 398f), 3, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SeasonTemple_EnterF02Battle02)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.bRemoveAllMonsters = false;
                 xCut.bUnskippable = true;
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player01, new Vector2(0f, -1f), 1f, 4, 0, 40));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player02, new Vector2(0f, -1f), 1f, 4, 0, 40));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player03, new Vector2(0f, -1f), 1f, 4, 0, 40));
                 xCut.AddEvent(new MoveEvent(NPCCodex.NPCTypes.Player04, new Vector2(0f, -1f), 1f, 4, 0, 40));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new BagmanInstructionEvent(1, 3, new float[0]));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new BagmanInstructionEvent(1, 0, new float[0]));
                 xCut.AddEvent(new EndCutscene());
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(319f, 447f), 4, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(305f, 453f), 4, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(334f, 453f), 4, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxStartState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(317f, 460f), 4, Cutscene.EntityState.MovementColliderChange.TurnOffMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player01, new Cutscene.EntityState(new Vector2(319f, 407f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player02, new Cutscene.EntityState(new Vector2(305f, 413f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player03, new Cutscene.EntityState(new Vector2(334f, 413f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
                 xCut.denxEndState.Add(NPCCodex.NPCTypes.Player04, new Cutscene.EntityState(new Vector2(317f, 420f), 0, Cutscene.EntityState.MovementColliderChange.TurnOnMovementCollision));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SeasonTemple_HydraBossName)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.bUnskippable = true;
                 xCut.bRemoveAllMonsters = false;
                 xCut.iEndFrame = 42;
                 CutsceneEvent it9 = new StartBossNameFlash(EnemyCodex.EnemyTypes.SeasonHydra_Summer);
                 xCut.AddEvent(10, it9);
                 xCut.sPlayMusicOnEnd = "MiniBossBattle03";
                 xCut.AddEvent(2, new PlaySong("MiniBossBattle03", true));
                 xCut.AddEvent(10, it9);
                 xCut.AddEvent(20, new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     it9
                 }));
                 xCut.AddEvent(xCut.iEndFrame, new EndCutscene());
                 xCut.lxEventsAtEnd.Add(new BagmanInstructionEvent(1, 4, new float[0]));
             }
             else if (enID == CutsceneLibrary.CutsceneID._MainStory_SeasonTemple_PreHydraBattle)
             {
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.bUnskippable = false;
                 xCut.AddEvent(new MoveCameraEvent(new Vector2(320f, 180f), 1f, true, false));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new DialogueEvent("PreHydraBattle01"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects._EnemyEffects_Boss_SeasonHydra_PreAppearBubbleSmall, new Vector2(306f, 204f)));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects._EnemyEffects_Boss_SeasonHydra_PreAppearBubbleSmall, new Vector2(344f, 220f)));
                 xCut.AddEvent(new WaitEvent(20));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects._EnemyEffects_Boss_SeasonHydra_PreAppearBubbleSmall, new Vector2(308f, 219f)));
                 if (CAS.NetworkRole == NetworkHelperInterface.NetworkRole.LocalOnly)
                 {
                     xCut.AddEvent(new AnimationEvent(3, NPCCodex.NPCTypes.Player01));
                 }
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new EffectEvent(SortedAnimated.SortedAnimatedEffects._EnemyEffects_Boss_SeasonHydra_PreAppearBubbleBig, new Vector2(320f, 216f)));
                 xCut.AddEvent(new StopSong(false));
                 xCut.AddEvent(new WaitEvent(30));
                 xCut.AddEvent(new DialogueEvent("PreHydraBattle02"));
                 xCut.AddEvent(new WaitForDialogueEvent());
                 xCut.lxEventsOnSkip.Add(new MoveCameraEvent(new Vector2(320f, 180f), 1000f, false, false));
                 xCut.lxEventsAtRelease.Add(new BagmanInstructionEvent(1, 0, new float[0]));
             }
             else
             {
                 if (enID != CutsceneLibrary.CutsceneID._MainStory_SeasonTemple_PostHydraBattle)
                 {
                     throw new Exception("LOL bajsa ner dig föffan så lack försöker ladda kattscener som inte finns va lOLOLoll??!!");
                 }
                 xCut.bFadeOnSetup = false;
                 xCut.iEndFrame = 30000;
                 xCut.bRemoveAllMonsters = false;
                 xCut.bUnskippable = true;
                 xCut.sPlayMusicOnEnd = "WinterTheme";
                 xCut.AddEvent(new WaitEvent(40));
                 if (RenderMaster.enPlayfieldPassOne != RenderMaster.PlayfieldRenderPass.Season_Summer)
                 {
                     xCut.AddEvent(new BagmanInstructionEvent(1, 6, new float[0]));
                     xCut.AddEvent(new WaitEvent(60));
                 }
                 CutsceneEvent xMos = new MoveCameraEvent(MoveCameraEvent.GetPosition.LocalPlayer, 1f, false, false);
                 xCut.AddEvent(xMos);
                 xCut.AddEvent(new BagmanInstructionEvent(1, 7, new float[0]));
                 xCut.AddEvent(new WaitEvent(60));
                 xCut.AddEvent(new WaitEvent(10));
                 xCut.AddEvent(new WaitUntilEventsFinished(new CutsceneEvent[]
                 {
                     xMos
                 }));
                 xCut.lxEventsOnSkip.Add(new ReleaseCameraViewPortEvent());
                 xCut.lxEventsAtRelease.Add(new ReleaseCameraViewPortEvent());
             }
         }
     }
     return xCut;
 }