Example #1
0
        public override void update()
        {
            if (update_soft_reset())
            {
                return;
            }
            update_skip();
            if (!is_message_window_active && Message_Active)
            {
                HUD.move_on();
                Message_Active = false;
            }
            base.update();
            update_white_flash();
            if (!Skipping)
            {
                // Hit/Crit Spark
                update_hit_spark();
                if (Battler_1_Sprite != null)
                {
                    // Update battler 1's sprite
                    Battler_1_Sprite.update();
                    // Causes HUD effects when battler 1 activates a skill

                    /*if (Battler_1_Sprite.battler.actor.skill_flash) //Yeti
                     * {
                     *  HUD.skill_flash(1);
                     *  HUD.add_message(Battler_1_Sprite.battler.actor.skill_name(), Battler_1_Sprite.battler.team, 90, "Yellow");
                     *  Battler_1_Sprite.battler.actor.skill_flash = false;
                     * }*/
                    int battler_shake = Battler_1_Sprite.shake();
                    if (battler_shake > 0)
                    {
                        mini_shake(battler_shake);
                    }
                }
                if (Battler_2_Sprite != null)
                {
                    // Update battler 2's sprite
                    Battler_2_Sprite.update();
                    // Causes HUD effects when battler 2 activates a skill

                    /*if (Battler_2_Sprite.battler.actor.skill_flash) //Yeti
                     * {
                     *  HUD.skill_flash(2);
                     *  HUD.add_message(Battler_2_Sprite.battler.actor.skill_name(), Battler_2_Sprite.battler.team, 90, "Yellow");
                     *  Battler_2_Sprite.battler.actor.skill_flash = false;
                     * }*/
                    int battler_shake = Battler_2_Sprite.shake();
                    if (battler_shake > 0)
                    {
                        mini_shake(battler_shake);
                    }
                }
                switch (Phase)
                {
                case 0:
                    update_phase_0();
                    break;

                case 1:
                    update_phase_1();
                    break;

                case 2:
                    update_phase_2();
                    break;

                case 3:
                    update_phase_3();
                    break;
                }
                if (Shake_Reset)
                {
                    Layer_2_Shake    = Vector2.Zero;
                    Layer_3_Shake    = Vector2.Zero;
                    Layer_5_Shake    = Vector2.Zero;
                    Platform_1_Shake = Vector2.Zero;
                    Platform_2_Shake = Vector2.Zero;
                    Shake_Reset      = false;
                }
                update_shake();
                update_pan();
                if (Brightness.Count > 0)
                {
                    Black_Fill.TintA = (byte)Brightness.pop();
                }
                if (Weather_Visible == BattleWeathers.Visible && Phase >= 1 && Phase <= 2)
                {
                    float minimum = 0.25f;
                    if (Bg_Magic_Darken && Weather_Opacity > minimum)
                    {
                        Weather_Opacity = Math.Max(minimum, Weather_Opacity - 1 / 24f);
                    }
                    else if (!Bg_Magic_Darken && Weather_Opacity < 1)
                    {
                        Weather_Opacity = Math.Min(1, Weather_Opacity + 1 / 24f);
                    }
                }
                if (HUD != null)
                {
                    HUD.update();
                }
                // Miss effect
                update_miss_text();
                // No Damage effect
                update_nodamage_text();
            }
        }