public void PreTimeSkipAI(NPC npc) { if (npc.type == NPCID.CultistBoss) { foreach (TimeSkipData dt in TimeSkipStates) { Main.NewText(dt); } } var IsTimeSkipped = TBAR.TimeSkipManager.IsTimeSkipped; if (IsTimeSkipped) { elapsedTime++; if (elapsedTime == 6) { TimeSkipStates.Add ( new TimeSkipData(npc.Center, npc.velocity, npc.scale, npc.rotation, npc.frame, npc.direction, npc.ai) ); elapsedTime = 0; } if (TimeSkipStates.Count > 12) { TimeSkipStates.RemoveAt(0); } if (TimeSkipStates.Count <= 0) { for (int i = 0; i < 13; i++) { TimeSkipStates.Add ( new TimeSkipData(npc.Center, npc.velocity, npc.scale, npc.rotation, npc.frame, npc.direction, npc.ai) ); } } } else { elapsedTime = 0; } if (!IsTimeSkipped && TimeSkipStates.Count > 0) { /* * npc.ai = TimeSkipStates[0].AI; * npc.Center = TimeSkipStates[0].Position; * npc.scale = TimeSkipStates[0].Scale; * npc.direction = TimeSkipStates[0].Direction; */ TimeSkipStates.Clear(); } }
public void PreTimeSkipAI(NPC npc) { var IsTimeSkipped = TimeSkipManager.IsTimeSkipped; int TimeSkipDuration = TimeSkipManager.TimeSkippedFor; if (IsTimeSkipped) { if (TimeSkipManager.TimeSkippedFor % 6 == 0) { TimeSkipStates.Add ( new TimeSkipState(npc.Center, npc.velocity, npc.scale, npc.rotation, npc.frame, npc.direction, npc.ai) ); } } if (IsTimeSkipped && TimeSkipStates.Count > 12) { TimeSkipStates.RemoveAt(0); } if (TimeSkipStates.Count <= 0 && IsTimeSkipped) { for (int i = 0; i < 13; i++) { TimeSkipStates.Add ( new TimeSkipState(npc.Center, npc.velocity, npc.scale, npc.rotation, npc.frame, npc.direction, npc.ai) ); } } if (IsTimeSkipped && TimeSkipDuration <= 2 && TimeSkipStates.Count > 0) { /* * npc.ai = TimeSkipStates[0].AI; * npc.Center = TimeSkipStates[0].Position; * npc.scale = TimeSkipStates[0].Scale; * npc.direction = TimeSkipStates[0].Direction; */ TimeSkipStates.Clear(); } }