コード例 #1
0
        private void Timing(On.Celeste.Level.orig_Update orig, Level self)
        {
            if (SpeedrunToolModule.LivesplitMode)
            {
                var currentRoom = Celeste.Instance.AutoSplitterInfo.Level;
                if (previousRoom != null && previousRoom != currentRoom)
                {
                    UpdateTimerState();
                }

                previousRoom = currentRoom;
            }
            else
            {
                if (!self.Completed && self.TimerStarted)
                {
                    nextRoomTimerData.Timing(self);
                    currentRoomTimerData.Timing(self);
                }
                else if (self.Completed)
                {
                    UpdateTimerState();
                }
            }

            orig(self);
        }
コード例 #2
0
        private void Timing(On.Celeste.Level.orig_Update orig, Level self)
        {
            if (!self.Completed && self.TimerStarted)
            {
                nextRoomTimerData.Timing(self.Session);
                currentRoomTimerData.Timing(self.Session);
            }
            else if (self.Completed)
            {
                UpdateTimerState();
            }

            orig(self);
        }