diff --git a/engine b/engine index 5ad8b27d..d7c45b19 160000 --- a/engine +++ b/engine @@ -1 +1 @@ -Subproject commit 5ad8b27d8db0776700c2b08bf68fbea5e0a4680d +Subproject commit d7c45b19ccf6ddadc73d1c8423cd2848f59de437 diff --git a/modules/wave_survival/damage_box.cpp b/modules/wave_survival/damage_box.cpp index f7617d5a..cc9ed359 100644 --- a/modules/wave_survival/damage_box.cpp +++ b/modules/wave_survival/damage_box.cpp @@ -1,6 +1,9 @@ #include "damage_box.h" -#include "health_status.h" -#include "hitbox.h" +#include "core/config/engine.h" +#include "core/object/callable_mp.h" +#include "core/object/class_db.h" +#include "wave_survival/health_status.h" +#include "wave_survival/hitbox.h" void DamageBox::_bind_methods() { ClassDB::bind_method(D_METHOD("attack_motion_begin"), &self_type::attack_motion_begin); diff --git a/modules/wave_survival/enemies/enemy_rifleman.cpp b/modules/wave_survival/enemies/enemy_rifleman.cpp index ef2e442c..b51f40e0 100644 --- a/modules/wave_survival/enemies/enemy_rifleman.cpp +++ b/modules/wave_survival/enemies/enemy_rifleman.cpp @@ -1,4 +1,6 @@ #include "enemy_rifleman.h" +#include "core/config/engine.h" +#include "core/object/class_db.h" #include "core/os/memory.h" #include "scene/animation/animation_player.h" #include "wave_survival/macros.h" diff --git a/modules/wave_survival/enemies/enemy_wretched.cpp b/modules/wave_survival/enemies/enemy_wretched.cpp index 53d1b604..6cdfee8f 100644 --- a/modules/wave_survival/enemies/enemy_wretched.cpp +++ b/modules/wave_survival/enemies/enemy_wretched.cpp @@ -1,4 +1,5 @@ #include "enemy_wretched.h" +#include "core/config/engine.h" #include "scene/animation/animation_player.h" #include "wave_survival/npc_unit.h" #include "wave_survival/player_body.h" diff --git a/modules/wave_survival/enemy_body.cpp b/modules/wave_survival/enemy_body.cpp index 09a673fd..0de69c1a 100644 --- a/modules/wave_survival/enemy_body.cpp +++ b/modules/wave_survival/enemy_body.cpp @@ -1,5 +1,5 @@ #include "enemy_body.h" -#include "core/math/math_funcs.h" +#include "core/config/engine.h" #include "macros.h" #include "scene/animation/animation_player.h" #include "wave_survival/npc_unit.h" diff --git a/modules/wave_survival/enemy_body.h b/modules/wave_survival/enemy_body.h index 9021acc2..6710fac3 100644 --- a/modules/wave_survival/enemy_body.h +++ b/modules/wave_survival/enemy_body.h @@ -1,6 +1,7 @@ #ifndef ENEMY_BODY_H #define ENEMY_BODY_H +#include "core/object/callable_mp.h" #include "scene/3d/navigation/navigation_agent_3d.h" #include "scene/3d/physics/character_body_3d.h" #include "wave_survival/health_status.h" diff --git a/modules/wave_survival/enemy_spawner.cpp b/modules/wave_survival/enemy_spawner.cpp index ce1c8bbb..c8afecc9 100644 --- a/modules/wave_survival/enemy_spawner.cpp +++ b/modules/wave_survival/enemy_spawner.cpp @@ -1,11 +1,14 @@ #include "enemy_spawner.h" +#include "core/config/engine.h" #include "core/io/resource.h" -#include "core/object/object.h" +#include "core/io/resource_loader.h" +#include "core/object/callable_mp.h" +#include "core/object/class_db.h" #include "macros.h" -#include "map_region.h" -#include "npc_unit.h" -#include "patrol_path.h" #include "scene/resources/packed_scene.h" +#include "wave_survival/map_region.h" +#include "wave_survival/npc_unit.h" +#include "wave_survival/patrol_path.h" void SpawnData::_bind_methods() { BIND_HPROPERTY(Variant::DICTIONARY, difficulty_spawns, PROPERTY_HINT_DICTIONARY_TYPE, vformat("int;%s/%s:PackedScene", Variant::OBJECT, PROPERTY_HINT_RESOURCE_TYPE)); diff --git a/modules/wave_survival/enemy_spawner.h b/modules/wave_survival/enemy_spawner.h index 87c512e2..fea92e93 100644 --- a/modules/wave_survival/enemy_spawner.h +++ b/modules/wave_survival/enemy_spawner.h @@ -4,6 +4,7 @@ #include "core/io/resource.h" #include "core/templates/hash_map.h" #include "scene/3d/marker_3d.h" +#include "scene/resources/packed_scene.h" class MapRegion; class PatrolPath; diff --git a/modules/wave_survival/heads_up_display.cpp b/modules/wave_survival/heads_up_display.cpp index 50f4d31f..80a20062 100644 --- a/modules/wave_survival/heads_up_display.cpp +++ b/modules/wave_survival/heads_up_display.cpp @@ -1,4 +1,7 @@ #include "heads_up_display.h" +#include "core/config/engine.h" +#include "core/object/callable_mp.h" +#include "core/object/class_db.h" HeadsUpDisplay *HeadsUpDisplay::singleton_instance{ nullptr }; diff --git a/modules/wave_survival/health_status.cpp b/modules/wave_survival/health_status.cpp index b10591ad..86d2dc22 100644 --- a/modules/wave_survival/health_status.cpp +++ b/modules/wave_survival/health_status.cpp @@ -1,5 +1,6 @@ #include "health_status.h" #include "core/config/engine.h" +#include "core/object/class_db.h" #include "macros.h" String HealthStatus::sig_death{ "death" }; diff --git a/modules/wave_survival/hitbox.cpp b/modules/wave_survival/hitbox.cpp index 99afb072..40035050 100644 --- a/modules/wave_survival/hitbox.cpp +++ b/modules/wave_survival/hitbox.cpp @@ -1,6 +1,9 @@ #include "hitbox.h" -#include "health_status.h" +#include "core/config/engine.h" +#include "core/object/callable_mp.h" +#include "core/object/class_db.h" #include "macros.h" +#include "wave_survival/health_status.h" void Hitbox::_bind_methods() { BIND_HPROPERTY(Variant::OBJECT, health, PROPERTY_HINT_NODE_TYPE, "HealthStatus"); diff --git a/modules/wave_survival/hitscan_muzzle.cpp b/modules/wave_survival/hitscan_muzzle.cpp index df255f5a..d05399c1 100644 --- a/modules/wave_survival/hitscan_muzzle.cpp +++ b/modules/wave_survival/hitscan_muzzle.cpp @@ -1,9 +1,13 @@ #include "hitscan_muzzle.h" -#include "health_status.h" -#include "hitbox.h" +#include "core/config/engine.h" +#include "core/io/resource_loader.h" +#include "core/object/callable_mp.h" +#include "core/object/class_db.h" #include "macros.h" -#include "muzzle_effect.h" #include "scene/resources/packed_scene.h" +#include "wave_survival/health_status.h" +#include "wave_survival/hitbox.h" +#include "wave_survival/muzzle_effect.h" void HitscanMuzzle::_bind_methods() { ClassDB::bind_method(D_METHOD("shoot"), &self_type::shoot); diff --git a/modules/wave_survival/hitscan_muzzle.h b/modules/wave_survival/hitscan_muzzle.h index ac040a73..a87f78b9 100644 --- a/modules/wave_survival/hitscan_muzzle.h +++ b/modules/wave_survival/hitscan_muzzle.h @@ -2,6 +2,7 @@ #define HITSCAN_MUZZLE_H #include "scene/3d/physics/ray_cast_3d.h" +#include "scene/resources/packed_scene.h" class MuzzleEffect; class HitscanMuzzle : public RayCast3D { diff --git a/modules/wave_survival/interactable.cpp b/modules/wave_survival/interactable.cpp index 57f8f6c3..993ef278 100644 --- a/modules/wave_survival/interactable.cpp +++ b/modules/wave_survival/interactable.cpp @@ -1,5 +1,5 @@ #include "interactable.h" -#include "heads_up_display.h" +#include "core/object/class_db.h" #include "macros.h" void Interactable::_bind_methods() { diff --git a/modules/wave_survival/interactable.h b/modules/wave_survival/interactable.h index ebaecc88..c774a19b 100644 --- a/modules/wave_survival/interactable.h +++ b/modules/wave_survival/interactable.h @@ -1,8 +1,8 @@ #ifndef INTERACTABLE_H #define INTERACTABLE_H -#include "player_interactor.h" #include "scene/main/node.h" +#include "wave_survival/player_interactor.h" class Interactable : public Node { GDCLASS(Interactable, Node); diff --git a/modules/wave_survival/map_region.cpp b/modules/wave_survival/map_region.cpp index 4dd344d3..de928a83 100644 --- a/modules/wave_survival/map_region.cpp +++ b/modules/wave_survival/map_region.cpp @@ -1,6 +1,7 @@ #include "map_region.h" -#include "enemy_body.h" -#include "player_body.h" +#include "core/config/engine.h" +#include "wave_survival/enemy_body.h" +#include "wave_survival/player_body.h" String const MapRegion::sig_difficulty_increased{ "difficulty_increased" }; String const MapRegion::sig_phase_changed{ "hunt_phase" }; diff --git a/modules/wave_survival/map_region.h b/modules/wave_survival/map_region.h index b821c930..a6c48c66 100644 --- a/modules/wave_survival/map_region.h +++ b/modules/wave_survival/map_region.h @@ -2,8 +2,8 @@ #define MAP_REGION_H #include "core/templates/hash_set.h" -#include "npc_unit.h" #include "scene/3d/physics/area_3d.h" +#include "wave_survival/npc_unit.h" class MapRegion : public Area3D { GDCLASS(MapRegion, Area3D); diff --git a/modules/wave_survival/muzzle_effect.cpp b/modules/wave_survival/muzzle_effect.cpp index e7306c8a..a7282a9b 100644 --- a/modules/wave_survival/muzzle_effect.cpp +++ b/modules/wave_survival/muzzle_effect.cpp @@ -1,4 +1,5 @@ #include "muzzle_effect.h" +#include "core/object/class_db.h" void MuzzleEffect::_bind_methods() { GDVIRTUAL_BIND(trigger); diff --git a/modules/wave_survival/npc_unit.cpp b/modules/wave_survival/npc_unit.cpp index 582dc525..a248e650 100644 --- a/modules/wave_survival/npc_unit.cpp +++ b/modules/wave_survival/npc_unit.cpp @@ -1,10 +1,12 @@ #include "npc_unit.h" -#include "enemy_body.h" +#include "core/config/engine.h" +#include "core/object/class_db.h" #include "macros.h" -#include "map_region.h" -#include "patrol_path.h" -#include "player_detector.h" #include "scene/resources/packed_scene.h" +#include "wave_survival/enemy_body.h" +#include "wave_survival/map_region.h" +#include "wave_survival/patrol_path.h" +#include "wave_survival/player_detector.h" void NpcUnit::_bind_methods() { BIND_HPROPERTY(Variant::OBJECT, patrol_path, PROPERTY_HINT_NODE_TYPE, "PatrolPath"); diff --git a/modules/wave_survival/npc_unit.h b/modules/wave_survival/npc_unit.h index 6fb32bda..36794afa 100644 --- a/modules/wave_survival/npc_unit.h +++ b/modules/wave_survival/npc_unit.h @@ -2,6 +2,7 @@ #define NPC_UNIT_H #include "scene/3d/node_3d.h" +#include "scene/resources/packed_scene.h" class StateMachine; class EnemyBody; class PatrolPath; diff --git a/modules/wave_survival/patrol_path.cpp b/modules/wave_survival/patrol_path.cpp index 720a4407..a4a982a3 100644 --- a/modules/wave_survival/patrol_path.cpp +++ b/modules/wave_survival/patrol_path.cpp @@ -1,4 +1,6 @@ #include "patrol_path.h" +#include "core/config/engine.h" +#include "core/object/callable_mp.h" void PatrolPath::_bind_methods() {} diff --git a/modules/wave_survival/player_body.cpp b/modules/wave_survival/player_body.cpp index 0cd01cad..a68f6ce8 100644 --- a/modules/wave_survival/player_body.cpp +++ b/modules/wave_survival/player_body.cpp @@ -1,10 +1,12 @@ #include "player_body.h" +#include "core/config/engine.h" +#include "core/object/callable_mp.h" #include "health_status.h" #include "macros.h" -#include "player_camera.h" -#include "player_input.h" -#include "weapon_base.h" -#include "weapon_inventory.h" +#include "wave_survival/player_camera.h" +#include "wave_survival/player_input.h" +#include "wave_survival/weapon_base.h" +#include "wave_survival/weapon_inventory.h" PlayerBody *PlayerBody::singleton_instance{ nullptr }; diff --git a/modules/wave_survival/player_camera.cpp b/modules/wave_survival/player_camera.cpp index ecde8de2..9c09fc88 100644 --- a/modules/wave_survival/player_camera.cpp +++ b/modules/wave_survival/player_camera.cpp @@ -1,7 +1,9 @@ #include "player_camera.h" +#include "core/config/engine.h" +#include "core/object/callable_mp.h" #include "macros.h" -#include "player_body.h" -#include "player_input.h" +#include "wave_survival/player_body.h" +#include "wave_survival/player_input.h" void PlayerCamera::_bind_methods() { } diff --git a/modules/wave_survival/player_detector.cpp b/modules/wave_survival/player_detector.cpp index 6f1b5bdb..ea6a7ff8 100644 --- a/modules/wave_survival/player_detector.cpp +++ b/modules/wave_survival/player_detector.cpp @@ -1,6 +1,8 @@ #include "player_detector.h" -#include "player_body.h" -#include "sound_event_patchboard.h" +#include "core/config/engine.h" +#include "core/object/callable_mp.h" +#include "wave_survival/player_body.h" +#include "wave_survival/sound_event_patchboard.h" String PlayerDetector::sig_awareness_changed{ "awareness_changed" }; diff --git a/modules/wave_survival/player_input.cpp b/modules/wave_survival/player_input.cpp index dd45e4b9..89973d0a 100644 --- a/modules/wave_survival/player_input.cpp +++ b/modules/wave_survival/player_input.cpp @@ -1,6 +1,7 @@ #include "player_input.h" #include "core/config/engine.h" #include "core/input/input.h" +#include "core/object/callable_mp.h" #include "scene/main/scene_tree.h" String PlayerInput::sig_movement_input{ "movement_input" }; diff --git a/modules/wave_survival/player_interactor.cpp b/modules/wave_survival/player_interactor.cpp index 1574cc53..654404b1 100644 --- a/modules/wave_survival/player_interactor.cpp +++ b/modules/wave_survival/player_interactor.cpp @@ -1,8 +1,10 @@ #include "player_interactor.h" -#include "interactable.h" -#include "player_body.h" -#include "player_input.h" -#include "weapon_inventory.h" +#include "core/config/engine.h" +#include "core/object/class_db.h" +#include "wave_survival/interactable.h" +#include "wave_survival/player_body.h" +#include "wave_survival/player_input.h" +#include "wave_survival/weapon_inventory.h" void PlayerInteractor::_bind_methods() { ClassDB::bind_method(D_METHOD("pickup_demo_pack"), &self_type::pickup_demo_pack); diff --git a/modules/wave_survival/player_interactor.h b/modules/wave_survival/player_interactor.h index e18b14a1..3c522b0b 100644 --- a/modules/wave_survival/player_interactor.h +++ b/modules/wave_survival/player_interactor.h @@ -1,6 +1,7 @@ #ifndef PLAYER_INTERACTOR_H #define PLAYER_INTERACTOR_H +#include "core/object/callable_mp.h" #include "scene/3d/physics/shape_cast_3d.h" class Interactable; class WeaponInventory; diff --git a/modules/wave_survival/register_types.cpp b/modules/wave_survival/register_types.cpp index ec20b74c..e6074636 100644 --- a/modules/wave_survival/register_types.cpp +++ b/modules/wave_survival/register_types.cpp @@ -1,5 +1,6 @@ #include "register_types.h" +#include "core/config/engine.h" #include "core/object/class_db.h" #include "wave_survival/damage_box.h" #include "wave_survival/enemies/enemy_rifleman.h" diff --git a/modules/wave_survival/sound_event_node.cpp b/modules/wave_survival/sound_event_node.cpp index 45ef167c..a36dd6f8 100644 --- a/modules/wave_survival/sound_event_node.cpp +++ b/modules/wave_survival/sound_event_node.cpp @@ -1,6 +1,8 @@ #include "sound_event_node.h" +#include "core/config/engine.h" +#include "core/object/class_db.h" #include "macros.h" -#include "sound_event_patchboard.h" +#include "wave_survival/sound_event_patchboard.h" void SoundEventNode::_bind_methods() { ClassDB::bind_method(D_METHOD("trigger_event"), &self_type::trigger_event); diff --git a/modules/wave_survival/state_machine.cpp b/modules/wave_survival/state_machine.cpp index ece6bdae..96f85f2b 100644 --- a/modules/wave_survival/state_machine.cpp +++ b/modules/wave_survival/state_machine.cpp @@ -1,6 +1,6 @@ #include "state_machine.h" #include "core/config/engine.h" -#include "state.h" +#include "wave_survival/state.h" void StateMachine::_bind_methods() { ClassDB::bind_method(D_METHOD("switch_to_state", "state"), &self_type::switch_to_state); diff --git a/modules/wave_survival/weapon_base.cpp b/modules/wave_survival/weapon_base.cpp index 8c7e54d2..387e073b 100644 --- a/modules/wave_survival/weapon_base.cpp +++ b/modules/wave_survival/weapon_base.cpp @@ -1,9 +1,11 @@ #include "weapon_base.h" +#include "core/config/engine.h" +#include "core/object/class_db.h" #include "macros.h" -#include "player_body.h" -#include "player_camera.h" -#include "player_input.h" #include "scene/animation/animation_player.h" +#include "wave_survival/player_body.h" +#include "wave_survival/player_camera.h" +#include "wave_survival/player_input.h" void WeaponBase::_bind_methods() { BIND_HPROPERTY(Variant::OBJECT, anim, PROPERTY_HINT_NODE_TYPE, AnimationPlayer::get_class_static()); diff --git a/modules/wave_survival/weapon_inventory.cpp b/modules/wave_survival/weapon_inventory.cpp index 768e7c31..a8a01a77 100644 --- a/modules/wave_survival/weapon_inventory.cpp +++ b/modules/wave_survival/weapon_inventory.cpp @@ -1,7 +1,10 @@ #include "weapon_inventory.h" +#include "core/config/engine.h" +#include "core/object/callable_mp.h" +#include "core/object/class_db.h" #include "macros.h" -#include "player_input.h" -#include "weapon_base.h" +#include "wave_survival/player_input.h" +#include "wave_survival/weapon_base.h" void WeaponInventory::_bind_methods() { BIND_HPROPERTY(Variant::OBJECT, starting_weapon, PROPERTY_HINT_RESOURCE_TYPE, "PackedScene"); diff --git a/modules/wave_survival/weapon_inventory.h b/modules/wave_survival/weapon_inventory.h index 0b32242a..fe065605 100644 --- a/modules/wave_survival/weapon_inventory.h +++ b/modules/wave_survival/weapon_inventory.h @@ -1,6 +1,7 @@ #ifndef WEAPON_INVENTORY_H #define WEAPON_INVENTORY_H +#include "scene/3d/node_3d.h" #include "scene/main/node.h" #include "scene/resources/packed_scene.h" class PlayerBody; diff --git a/modules/wave_survival/weapons/revolver.cpp b/modules/wave_survival/weapons/revolver.cpp index 379d70aa..901d695a 100644 --- a/modules/wave_survival/weapons/revolver.cpp +++ b/modules/wave_survival/weapons/revolver.cpp @@ -1,4 +1,7 @@ #include "revolver.h" +#include "core/config/engine.h" +#include "core/object/callable_mp.h" +#include "core/object/class_db.h" #include "scene/animation/animation_player.h" #include "wave_survival/macros.h" #include "wave_survival/player_body.h" diff --git a/modules/wave_survival/weapons/rifle.cpp b/modules/wave_survival/weapons/rifle.cpp index e572069d..33bbaf6c 100644 --- a/modules/wave_survival/weapons/rifle.cpp +++ b/modules/wave_survival/weapons/rifle.cpp @@ -1,8 +1,12 @@ #include "rifle.h" +#include "core/config/engine.h" +#include "core/object/callable_mp.h" +#include "core/object/class_db.h" #include "scene/animation/animation_player.h" #include "wave_survival/hitscan_muzzle.h" #include "wave_survival/macros.h" #include "wave_survival/player_body.h" +#include "wave_survival/player_camera.h" #include "wave_survival/player_input.h" #include "wave_survival/weapon_inventory.h" diff --git a/modules/wave_survival/weapons/rifle.h b/modules/wave_survival/weapons/rifle.h index 335b86ce..f49a78e8 100644 --- a/modules/wave_survival/weapons/rifle.h +++ b/modules/wave_survival/weapons/rifle.h @@ -1,7 +1,6 @@ #ifndef WEAPONS_RIFLE_H #define WEAPONS_RIFLE_H -#include "wave_survival/player_camera.h" #include "wave_survival/weapon_base.h" class PlayerBody; class HitscanMuzzle; diff --git a/project/maps/game.scn b/project/maps/game.scn index 7d90f6f4..ff7fc7ab 100644 Binary files a/project/maps/game.scn and b/project/maps/game.scn differ diff --git a/project/maps/industrial_area_map.scn b/project/maps/industrial_area_map.scn index a042130d..8e6ee031 100644 Binary files a/project/maps/industrial_area_map.scn and b/project/maps/industrial_area_map.scn differ