protected void draw_hud(SpriteBatch sprite_batch) { sprite_batch.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend, SamplerState.PointClamp, null, null); if (Hit_Spark != null) { Hit_Spark.draw(sprite_batch); } Vector2 number_vector = (Layer_3_Shake + Platform_1_Shake + Platform_2_Shake) * 0.5f + Pan_Vector; foreach (var number in HitNumbers) { number.draw(sprite_batch, new Vector2((int)number_vector.X, (int)number_vector.Y)); } sprite_batch.End(); if (HUD != null) { HUD.draw(sprite_batch, Layer_5_Shake); } sprite_batch.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend, SamplerState.PointClamp, null, null); if (Miss_Spark != null) { Miss_Spark.draw(sprite_batch, Pan_Vector); } if (NoDamage_Spark != null) { NoDamage_Spark.draw(sprite_batch, Pan_Vector); } sprite_batch.End(); if (Exp_Gauge != null) { sprite_batch.GraphicsDevice.ScissorRectangle = fix_rect_to_screen(Exp_Gauge.scissor_rect()); if (sprite_batch.GraphicsDevice.ScissorRectangle.Width > 0 && sprite_batch.GraphicsDevice.ScissorRectangle.Width > 0) { sprite_batch.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend, null, null, Exp_Gauge.raster_state); Exp_Gauge.draw(sprite_batch); sprite_batch.End(); } } Effect battle_shader = Global.effect_shader(); if (Battler_1_Sprite != null) { Battler_1_Sprite.draw_fg_effects(sprite_batch, battle_shader, Pan_Vector); } if (Battler_2_Sprite != null) { Battler_2_Sprite.draw_fg_effects(sprite_batch, battle_shader, Pan_Vector); } draw_skill_gain_popup(sprite_batch); draw_wlvl_popup(sprite_batch); draw_wbreak_popup(sprite_batch); }
protected virtual void draw_map_combat(SpriteBatch sprite_batch) { if (Map_Miss_Spark != null) { sprite_batch.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend); Map_Miss_Spark.draw(sprite_batch, Global.game_map.display_loc); sprite_batch.End(); } if (Map_NoDamage_Spark != null) { sprite_batch.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend); Map_NoDamage_Spark.draw(sprite_batch, Global.game_map.display_loc); sprite_batch.End(); } draw_skill_gain_popup(sprite_batch); draw_wlvl_popup(sprite_batch); draw_wbreak_popup(sprite_batch); if (Combat_HUD != null) { sprite_batch.GraphicsDevice.ScissorRectangle = Combat_HUD.scissor_rect(); if (sprite_batch.GraphicsDevice.ScissorRectangle.Width > 0 && sprite_batch.GraphicsDevice.ScissorRectangle.Width > 0) { sprite_batch.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend, null, null, Combat_HUD.raster_state); Combat_HUD.draw(sprite_batch); sprite_batch.End(); } } if (Exp_Gauge != null) { sprite_batch.GraphicsDevice.ScissorRectangle = Exp_Gauge.scissor_rect(); if (sprite_batch.GraphicsDevice.ScissorRectangle.Width > 0 && sprite_batch.GraphicsDevice.ScissorRectangle.Width > 0) { sprite_batch.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend, null, null, Exp_Gauge.raster_state); Exp_Gauge.draw(sprite_batch); sprite_batch.End(); } } }