public void CancelTraceDangerSequence()
 {
     timeThisState = 0.0f;
     state = TraceDangerState.WarningScrenIntro;
     IsActive = false;
     PreventOSRendering = false;
     PostProcessor.dangerModeEnabled = false;
     MusicManager.stop();
 }
 public void CancelTraceDangerSequence()
 {
     timeThisState      = 0.0f;
     state              = TraceDangerState.WarningScrenIntro;
     IsActive           = false;
     PreventOSRendering = false;
     PostProcessor.dangerModeEnabled = false;
     MusicManager.stop();
 }
 public void CompleteIPResetSucsesfully()
 {
     timeThisState      = 0.0f;
     state              = TraceDangerState.DisconnectedReboot;
     IsActive           = true;
     PreventOSRendering = true;
     PostProcessor.dangerModeEnabled         = false;
     PostProcessor.dangerModePercentComplete = 0.0f;
     MusicManager.stop();
     spinDownSound.Play(1f, -0.6f, 0.0f);
 }
 public void CompleteIPResetSucsesfully()
 {
     timeThisState = 0.0f;
     state = TraceDangerState.DisconnectedReboot;
     IsActive = true;
     PreventOSRendering = true;
     PostProcessor.dangerModeEnabled = false;
     PostProcessor.dangerModePercentComplete = 0.0f;
     MusicManager.stop();
     spinDownSound.Play(1f, -0.6f, 0.0f);
 }
 public void BeginTraceDangerSequence()
 {
     timeThisState      = 0.0f;
     state              = TraceDangerState.WarningScrenIntro;
     IsActive           = true;
     PreventOSRendering = true;
     oldSong            = MusicManager.currentSongName;
     os.execute("dc");
     os.display.command      = "";
     os.terminal.inputLocked = true;
     MusicManager.playSongImmediatley("Music/Ambient/dark_drone_008");
     spinDownSound.Play();
 }
 public void BeginTraceDangerSequence()
 {
     timeThisState = 0.0f;
     state = TraceDangerState.WarningScrenIntro;
     IsActive = true;
     PreventOSRendering = true;
     oldSong = MusicManager.currentSongName;
     os.execute("dc");
     os.display.command = "";
     os.terminal.inputLocked = true;
     MusicManager.playSongImmediatley("Music/Ambient/dark_drone_008");
     spinDownSound.Play();
 }
        public void Update(float t)
        {
            timeThisState += t;
            var num = float.MaxValue;

            PostProcessor.dangerModeEnabled = false;
            switch (state)
            {
            case TraceDangerState.WarningScrenIntro:
                num = 1f;
                if (timeThisState > (double)num)
                {
                    timeThisState             = 0.0f;
                    state                     = TraceDangerState.WarningScreen;
                    warningScreenIsActivating = false;
                }
                break;

            case TraceDangerState.WarningScreenExiting:
                num = 13.9f;
                if (timeThisState > (double)num)
                {
                    timeThisState       = 0.0f;
                    state               = TraceDangerState.Countdown;
                    os.display.visible  = true;
                    os.netMap.visible   = true;
                    os.terminal.visible = true;
                    os.ram.visible      = true;
                }
                break;

            case TraceDangerState.Countdown:
                num = 130f;
                if (timeThisState > (double)num)
                {
                    timeThisState = 0.0f;
                    state         = TraceDangerState.Gameover;
                    CancelTraceDangerSequence();
                    Game1.getSingleton().Exit();
                }
                if ((os.timer - (double)onBeatFlashTimer) % 1.93766665458679 < 0.0500000007450581)
                {
                    os.warningFlash();
                }
                PostProcessor.dangerModePercentComplete = Math.Min(timeThisState / (num * 0.85f), 1f);
                PostProcessor.dangerModeEnabled         = true;
                PreventOSRendering = false;
                break;

            case TraceDangerState.DisconnectedReboot:
                num = 10f;
                if (timeThisState > (double)num)
                {
                    CancelTraceDangerSequence();
                    MusicManager.loadAsCurrentSong(oldSong);
                    os.rebootThisComputer();
                }
                break;
            }
            percentComplete = timeThisState / num;
        }
        private void DrawWarningScreen()
        {
            if (warningScreenIsActivating)
            {
                spriteBatch.Draw(Utils.white, fullscreen, Color.White);
            }
            else
            {
                DrawFlashingRedBackground();
            }
            var text      = "WARNING";
            var vector2_1 = titleFont.MeasureString(text);
            var widthTo   = fullscreen.Width * 0.65f;
            var scale     = widthTo / vector2_1.X;
            var vector2_2 = new Vector2(20f, -10f);

            spriteBatch.DrawString(titleFont, text, vector2_2, Color.Black, 0.0f, Vector2.Zero, scale,
                                   SpriteEffects.None, 0.5f);
            vector2_2.Y += (float)(vector2_1.Y * (double)scale - 55.0);
            TextItem.doFontLabel(vector2_2, "COMPLETED TRACE DETECTED : EMERGENCY RECOVERY MODE ACTIVE", titleFont,
                                 Color.Black, widthTo, float.MaxValue);
            vector2_2.Y += 40f;
            vector2_2    = DrawFlashInString("Unsyndicated foreign connection detected during active trace", vector2_2,
                                             0.0f, 0.2f, false, 0.2f);
            vector2_2 = DrawFlashInString(" :: Emergency recovery mode activated", vector2_2, 0.1f, 0.2f, false, 0.2f);
            vector2_2 = DrawFlashInString("-----------------------------------------------------------------------",
                                          vector2_2, 0.2f, 0.2f, false, 0.2f);
            vector2_2 = DrawFlashInString(" ", vector2_2, 0.5f, 0.2f, false, 0.2f);
            vector2_2 = DrawFlashInString(
                "Automated screening procedures will divert incoming connections temporarily", vector2_2, 0.5f, 0.2f,
                false, 0.2f);
            vector2_2 = DrawFlashInString("This window is a final oppourtunity to regain anonymity.", vector2_2, 0.6f,
                                          0.2f, false, 0.2f);
            vector2_2 = DrawFlashInString("As your current IP Address is known, it must be changed -", vector2_2, 0.7f,
                                          0.2f, false, 0.2f);
            vector2_2 = DrawFlashInString("This can ony be done on your currently active ISP's routing server",
                                          vector2_2, 0.8f, 0.2f, false, 0.2f);
            vector2_2 =
                DrawFlashInString("Reverse tracerouting has located this ISP server's ip address as 68.144.93.18",
                                  vector2_2, 0.9f, 0.2f, false, 0.2f);
            vector2_2 = DrawFlashInString(
                "Your local ip : " + os.thisComputer.ip + " must be tracked here and changed.", vector2_2, 1f, 0.2f,
                false, 0.2f);
            vector2_2 = DrawFlashInString(" ", vector2_2, 1.1f, 0.2f, false, 0.2f);
            vector2_2 =
                DrawFlashInString("Failure to complete this while active diversion holds will result in complete",
                                  vector2_2, 1.1f, 0.2f, false, 0.2f);
            vector2_2 =
                DrawFlashInString(
                    "and permenant loss of all account data - THIS IS NOT REPEATABLE AND CANNOT BE DELAYED", vector2_2,
                    1.2f, 0.2f, false, 0.2f);
            if (warningScreenIsActivating || timeThisState < 1.20000004768372 ||
                !Button.doButton(789798001, 20, (int)(vector2_2.Y + 10.0), 400, 40, "BEGIN", Color.Black))
            {
                return;
            }
            timeThisState             = 0.0f;
            state                     = TraceDangerState.WarningScreenExiting;
            PreventOSRendering        = true;
            onBeatFlashTimer          = os.timer;
            warningScreenIsActivating = true;
            spinUpSound.Play(1f, 0.0f, 0.0f);
            os.terminal.inputLocked = false;
            os.delayer.Post(ActionDelayer.Wait(0.1), () => spinUpSound.Play(1f, 0.0f, 0.0f));
            os.delayer.Post(ActionDelayer.Wait(0.4), () => spinUpSound.Play(0.4f, 0.0f, 0.0f));
            os.delayer.Post(ActionDelayer.Wait(0.8), () => spinUpSound.Play(0.2f, 0.1f, 0.0f));
            os.delayer.Post(ActionDelayer.Wait(1.3), () => spinUpSound.Play(0.1f, 0.2f, 0.0f));
            os.delayer.Post(ActionDelayer.Wait(0.01), () => MusicManager.playSongImmediatley("Music/Traced"));
        }
 public void Update(float t)
 {
     timeThisState += t;
     var num = float.MaxValue;
     PostProcessor.dangerModeEnabled = false;
     switch (state)
     {
         case TraceDangerState.WarningScrenIntro:
             num = 1f;
             if (timeThisState > (double) num)
             {
                 timeThisState = 0.0f;
                 state = TraceDangerState.WarningScreen;
                 warningScreenIsActivating = false;
             }
             break;
         case TraceDangerState.WarningScreenExiting:
             num = 13.9f;
             if (timeThisState > (double) num)
             {
                 timeThisState = 0.0f;
                 state = TraceDangerState.Countdown;
                 os.display.visible = true;
                 os.netMap.visible = true;
                 os.terminal.visible = true;
                 os.ram.visible = true;
             }
             break;
         case TraceDangerState.Countdown:
             num = 130f;
             if (timeThisState > (double) num)
             {
                 timeThisState = 0.0f;
                 state = TraceDangerState.Gameover;
                 CancelTraceDangerSequence();
                 Game1.getSingleton().Exit();
             }
             if ((os.timer - (double) onBeatFlashTimer)%1.93766665458679 < 0.0500000007450581)
                 os.warningFlash();
             PostProcessor.dangerModePercentComplete = Math.Min(timeThisState/(num*0.85f), 1f);
             PostProcessor.dangerModeEnabled = true;
             PreventOSRendering = false;
             break;
         case TraceDangerState.DisconnectedReboot:
             num = 10f;
             if (timeThisState > (double) num)
             {
                 CancelTraceDangerSequence();
                 MusicManager.loadAsCurrentSong(oldSong);
                 os.rebootThisComputer();
             }
             break;
     }
     percentComplete = timeThisState/num;
 }
示例#10
0
 private void DrawWarningScreen()
 {
     if (warningScreenIsActivating)
         spriteBatch.Draw(Utils.white, fullscreen, Color.White);
     else
         DrawFlashingRedBackground();
     var text = "WARNING";
     var vector2_1 = titleFont.MeasureString(text);
     var widthTo = fullscreen.Width*0.65f;
     var scale = widthTo/vector2_1.X;
     var vector2_2 = new Vector2(20f, -10f);
     spriteBatch.DrawString(titleFont, text, vector2_2, Color.Black, 0.0f, Vector2.Zero, scale,
         SpriteEffects.None, 0.5f);
     vector2_2.Y += (float) (vector2_1.Y*(double) scale - 55.0);
     TextItem.doFontLabel(vector2_2, "COMPLETED TRACE DETECTED : EMERGENCY RECOVERY MODE ACTIVE", titleFont,
         Color.Black, widthTo, float.MaxValue);
     vector2_2.Y += 40f;
     vector2_2 = DrawFlashInString("Unsyndicated foreign connection detected during active trace", vector2_2,
         0.0f, 0.2f, false, 0.2f);
     vector2_2 = DrawFlashInString(" :: Emergency recovery mode activated", vector2_2, 0.1f, 0.2f, false, 0.2f);
     vector2_2 = DrawFlashInString("-----------------------------------------------------------------------",
         vector2_2, 0.2f, 0.2f, false, 0.2f);
     vector2_2 = DrawFlashInString(" ", vector2_2, 0.5f, 0.2f, false, 0.2f);
     vector2_2 = DrawFlashInString(
         "Automated screening procedures will divert incoming connections temporarily", vector2_2, 0.5f, 0.2f,
         false, 0.2f);
     vector2_2 = DrawFlashInString("This window is a final oppourtunity to regain anonymity.", vector2_2, 0.6f,
         0.2f, false, 0.2f);
     vector2_2 = DrawFlashInString("As your current IP Address is known, it must be changed -", vector2_2, 0.7f,
         0.2f, false, 0.2f);
     vector2_2 = DrawFlashInString("This can ony be done on your currently active ISP's routing server",
         vector2_2, 0.8f, 0.2f, false, 0.2f);
     vector2_2 =
         DrawFlashInString("Reverse tracerouting has located this ISP server's ip address as 68.144.93.18",
             vector2_2, 0.9f, 0.2f, false, 0.2f);
     vector2_2 = DrawFlashInString(
         "Your local ip : " + os.thisComputer.ip + " must be tracked here and changed.", vector2_2, 1f, 0.2f,
         false, 0.2f);
     vector2_2 = DrawFlashInString(" ", vector2_2, 1.1f, 0.2f, false, 0.2f);
     vector2_2 =
         DrawFlashInString("Failure to complete this while active diversion holds will result in complete",
             vector2_2, 1.1f, 0.2f, false, 0.2f);
     vector2_2 =
         DrawFlashInString(
             "and permenant loss of all account data - THIS IS NOT REPEATABLE AND CANNOT BE DELAYED", vector2_2,
             1.2f, 0.2f, false, 0.2f);
     if (warningScreenIsActivating || timeThisState < 1.20000004768372 ||
         !Button.doButton(789798001, 20, (int) (vector2_2.Y + 10.0), 400, 40, "BEGIN", Color.Black))
         return;
     timeThisState = 0.0f;
     state = TraceDangerState.WarningScreenExiting;
     PreventOSRendering = true;
     onBeatFlashTimer = os.timer;
     warningScreenIsActivating = true;
     spinUpSound.Play(1f, 0.0f, 0.0f);
     os.terminal.inputLocked = false;
     os.delayer.Post(ActionDelayer.Wait(0.1), () => spinUpSound.Play(1f, 0.0f, 0.0f));
     os.delayer.Post(ActionDelayer.Wait(0.4), () => spinUpSound.Play(0.4f, 0.0f, 0.0f));
     os.delayer.Post(ActionDelayer.Wait(0.8), () => spinUpSound.Play(0.2f, 0.1f, 0.0f));
     os.delayer.Post(ActionDelayer.Wait(1.3), () => spinUpSound.Play(0.1f, 0.2f, 0.0f));
     os.delayer.Post(ActionDelayer.Wait(0.01), () => MusicManager.playSongImmediatley("Music/Traced"));
 }