Add pulsing effect when invulnerable/intangible, make airdodge make the player intangible. (#75)
CI / build-and-test (push) Successful in 2m3s
CI / production-build (push) Successful in 15m42s

Reviewed-on: #75
Co-authored-by: Álex Román Núñez <eirexe@eirteam.moe>
This commit was merged in pull request #75.
This commit is contained in:
2026-09-28 15:44:50 +00:00
committed by EIREXE
parent ccf2657d29
commit 3af36c4bc8
14 changed files with 311 additions and 43 deletions
+23 -18
View File
@@ -35,8 +35,9 @@ use ron_asset_manager::RonAssetPlugin;
use crate::{
camera::MatchCameraPlugin, fighter::manifest::FighterManifest, game_settings::GameSettings,
match_runtime::MatchRuntimePlugin, menus::style::FGUiStyle, schedule::GameplaySchedulePlugin,
stage::manifest::StageManifest, ui::InGameUIPlugin,
match_runtime::MatchRuntimePlugin, materials::ShinesparkMaterialPlugin,
menus::style::FGUiStyle, schedule::GameplaySchedulePlugin, stage::manifest::StageManifest,
ui::InGameUIPlugin,
};
mod args;
@@ -49,6 +50,7 @@ pub mod game_settings;
pub mod input;
pub mod match_loading;
pub mod match_runtime;
pub mod materials;
mod math;
pub mod menus;
pub mod netcode;
@@ -109,22 +111,25 @@ impl Plugin for GamePlugin {
// game-level content and configuration.
app.init_state::<AppState>()
.add_plugins((
SettingsPlugin::new("moe.eirteam.shinespark.debug_settings"),
// Brings up GGRS (and with it `GgrsSchedule`), so it goes first.
netcode::FighterNetcodePlugin::default(),
GameplaySchedulePlugin,
MatchRuntimePlugin,
input::FighterInputPlugin,
replay::ReplayPlugin,
debug_tools::DebugToolsPlugin,
filled_gizmos::FilledGizmosPlugin,
fighter::FighterPlugin,
fighter::baked_animation::BakedAnimationPlugin,
scripting::importer::FighterScriptImportPlugin,
stage::StagePlugin,
MatchCameraPlugin,
GameAssetPlugin,
InGameUIPlugin,
(
SettingsPlugin::new("moe.eirteam.shinespark.debug_settings"),
// Brings up GGRS (and with it `GgrsSchedule`), so it goes first.
netcode::FighterNetcodePlugin::default(),
GameplaySchedulePlugin,
MatchRuntimePlugin,
input::FighterInputPlugin,
replay::ReplayPlugin,
debug_tools::DebugToolsPlugin,
filled_gizmos::FilledGizmosPlugin,
fighter::FighterPlugin,
fighter::baked_animation::BakedAnimationPlugin,
scripting::importer::FighterScriptImportPlugin,
stage::StagePlugin,
MatchCameraPlugin,
GameAssetPlugin,
InGameUIPlugin,
),
ShinesparkMaterialPlugin,
))
.add_plugins(menus::MenuPlugin)
.add_loading_state(