refactor heads-db and added plane controls

This commit is contained in:
2025-04-12 16:19:14 +02:00
parent fb9d7c78fe
commit dab4ea0656
10 changed files with 19 additions and 10 deletions

View File

@@ -5,8 +5,8 @@ use crate::{
GameState,
aim::AimTarget,
global_observer,
head_asset::HeadsDatabase,
heads::ActiveHeads,
heads_database::HeadsDatabase,
hitpoints::Hit,
physics_layers::GameLayer,
player::{Player, PlayerBodyMesh},

View File

@@ -4,7 +4,7 @@ use crate::{
GameState,
abilities::{HeadAbility, TriggerData, TriggerThrow},
aim::AimTarget,
head_asset::HeadsDatabase,
heads_database::HeadsDatabase,
npc::Npc,
};

View File

@@ -4,7 +4,7 @@ mod target_ui;
use crate::{
GameState,
head::ActiveHead,
head_asset::HeadsDatabase,
heads_database::HeadsDatabase,
physics_layers::GameLayer,
player::{Player, PlayerBodyMesh},
tb_entities::EnemySpawn,

View File

@@ -4,7 +4,7 @@ use crate::{
GameState,
backpack::{BackbackSwapEvent, Backpack},
global_observer,
head_asset::HeadsDatabase,
heads_database::HeadsDatabase,
hitpoints::Hitpoints,
player::Player,
sounds::PlaySound,

View File

@@ -2,6 +2,13 @@ use crate::abilities::HeadAbility;
use bevy::prelude::*;
use serde::{Deserialize, Serialize};
#[derive(Debug, Default, Reflect, Serialize, Deserialize)]
pub enum HeadControls {
#[default]
Walk,
Plane,
}
#[derive(Debug, Default, Reflect, Serialize, Deserialize)]
pub struct HeadStats {
pub key: String,
@@ -9,6 +16,8 @@ pub struct HeadStats {
pub ability: HeadAbility,
#[serde(default)]
pub range: f32,
#[serde(default)]
pub controls: HeadControls,
}
#[derive(Debug, Asset, Reflect, Serialize, Deserialize)]

View File

@@ -1,6 +1,6 @@
use crate::{
GameState,
head_asset::{HeadDatabaseAsset, HeadsDatabase},
heads_database::{HeadDatabaseAsset, HeadsDatabase},
};
use bevy::{prelude::*, utils::HashMap};
use bevy_asset_loader::prelude::*;

View File

@@ -11,8 +11,8 @@ mod cutscene;
mod debug;
mod gates;
mod head;
mod head_asset;
mod heads;
mod heads_database;
mod hitpoints;
mod keys;
mod loading_assets;
@@ -42,7 +42,7 @@ use bevy_trenchbroom::prelude::*;
use bevy_ui_gradients::UiGradientsPlugin;
use camera::MainCamera;
use control::controller::CharacterControllerPlugin;
use head_asset::HeadDatabaseAsset;
use heads_database::HeadDatabaseAsset;
use loading_assets::AudioAssets;
use std::io::{Read, Write};
use utils::{billboards, sprite_3d_animation, squish_animation};

View File

@@ -2,8 +2,8 @@ use crate::{
GameState,
ai::Ai,
head::ActiveHead,
head_asset::HeadsDatabase,
heads::{HEAD_COUNT, HeadState},
heads_database::HeadsDatabase,
hitpoints::{Hitpoints, Kill},
keys::KeySpawn,
tb_entities::EnemySpawn,

View File

@@ -9,8 +9,8 @@ use crate::{
},
global_observer,
head::ActiveHead,
head_asset::HeadsDatabase,
heads::HeadChanged,
heads_database::HeadsDatabase,
hitpoints::Hitpoints,
loading_assets::GameAssets,
physics_layers::GameLayer,