From 73af6abeb7a7ee5d7a2aebea1c2d0405acc380b9 Mon Sep 17 00:00:00 2001 From: Marek Lenczewski Date: Thu, 2 Apr 2026 19:30:44 +0200 Subject: [PATCH] update --- CLAUDE.md | 29 +++++++-------- {autoload => autoloads}/event_bus.gd | 0 {autoload => autoloads}/event_bus.gd.uid | 0 {autoload => autoloads}/game_state.gd | 0 {autoload => autoloads}/game_state.gd.uid | 0 {resources => autoloads}/stats/base_stats.gd | 0 .../stats/base_stats.gd.uid | 0 {autoload => autoloads/stats}/stats.gd | 0 {autoload => autoloads/stats}/stats.gd.uid | 0 plan.md | 36 ++++++++++--------- project.godot | 8 ++--- resources/roles/healer/set.tres | 16 --------- resources/roles/tank/set.tres | 15 -------- {dungeon => scenes/dungeon}/dungeon.tscn | 14 ++++---- .../dungeon}/dungeon_manager.gd | 2 +- .../dungeon}/dungeon_manager.gd.uid | 0 {enemy => scenes/enemy}/boss.gd | 2 +- {enemy => scenes/enemy}/boss.gd.uid | 0 {enemy => scenes/enemy}/boss.tscn | 8 ++--- .../stats => scenes/enemy}/boss_stats.gd | 0 .../stats => scenes/enemy}/boss_stats.gd.uid | 0 .../stats => scenes/enemy}/boss_stats.tres | 2 +- {enemy => scenes/enemy}/enemy.gd | 0 {enemy => scenes/enemy}/enemy.gd.uid | 0 {enemy => scenes/enemy}/enemy.tscn | 8 ++--- {enemy => scenes/enemy}/enemy_movement.gd | 0 {enemy => scenes/enemy}/enemy_movement.gd.uid | 0 .../stats => scenes/enemy}/enemy_stats.gd | 0 .../stats => scenes/enemy}/enemy_stats.gd.uid | 0 .../stats => scenes/enemy}/enemy_stats.tres | 2 +- {components => scenes}/healthbar.gd | 0 {components => scenes}/healthbar.gd.uid | 0 {hud => scenes/hud}/hud.gd | 0 {hud => scenes/hud}/hud.gd.uid | 0 {hud => scenes/hud}/hud.tscn | 2 +- {player => scenes/player}/camera.gd | 0 {player => scenes/player}/camera.gd.uid | 0 {player => scenes/player}/combat.gd | 0 {player => scenes/player}/combat.gd.uid | 0 {player => scenes/player}/movement.gd | 0 {player => scenes/player}/movement.gd.uid | 0 {player => scenes/player}/player.gd | 0 {player => scenes/player}/player.gd.uid | 0 {player => scenes/player}/player.tscn | 20 +++++------ .../stats => scenes/player}/player_stats.gd | 0 .../player}/player_stats.gd.uid | 0 .../stats => scenes/player}/player_stats.tres | 2 +- .../roles => scenes/player/role}/ability.gd | 0 .../player/role}/ability.gd.uid | 0 .../player/role}/ability_set.gd | 0 .../player/role}/ability_set.gd.uid | 0 .../player/role}/damage/abilities/aoe.tres | 2 +- .../role}/damage/abilities/passive.tres | 2 +- .../player/role}/damage/abilities/single.tres | 2 +- .../player/role}/damage/abilities/ult.tres | 2 +- .../role}/damage/abilities/utility.tres | 2 +- .../player/role}/damage/set.tres | 14 ++++---- .../player/role}/healer/abilities/aoe.tres | 2 +- .../role}/healer/abilities/passive.tres | 2 +- .../player/role}/healer/abilities/single.tres | 2 +- .../player/role}/healer/abilities/ult.tres | 2 +- .../role/healer}/abilities/utility.tres | 2 +- scenes/player/role/healer/set.tres | 16 +++++++++ {player => scenes/player/role}/role.gd | 0 {player => scenes/player/role}/role.gd.uid | 0 .../player/role}/tank/abilities/aoe.tres | 2 +- .../player/role}/tank/abilities/passive.tres | 2 +- .../player/role}/tank/abilities/single.tres | 2 +- .../player/role}/tank/abilities/ult.tres | 2 +- .../player/role/tank}/abilities/utility.tres | 2 +- scenes/player/role/tank/set.tres | 15 ++++++++ {player => scenes/player}/targeting.gd | 0 {player => scenes/player}/targeting.gd.uid | 0 {portal => scenes/portal}/gate.gd | 2 +- {portal => scenes/portal}/gate.gd.uid | 0 {portal => scenes/portal}/gate.tscn | 2 +- {portal => scenes/portal}/portal.gd | 2 +- {portal => scenes/portal}/portal.gd.uid | 0 {portal => scenes/portal}/portal.tscn | 6 ++-- .../stats => scenes/portal}/portal_stats.gd | 0 .../portal}/portal_stats.gd.uid | 0 .../stats => scenes/portal}/portal_stats.tres | 2 +- {world => scenes/world}/portal_spawner.gd | 4 +-- {world => scenes/world}/portal_spawner.gd.uid | 0 {world => scenes/world}/world.tscn | 6 ++-- .../stats => systems/aggro}/aggro_config.gd | 0 .../aggro}/aggro_config.gd.uid | 0 .../stats => systems/aggro}/aggro_config.tres | 2 +- systems/aggro/aggro_system.gd | 2 +- systems/spawn_system.gd | 2 +- 90 files changed, 138 insertions(+), 133 deletions(-) rename {autoload => autoloads}/event_bus.gd (100%) rename {autoload => autoloads}/event_bus.gd.uid (100%) rename {autoload => autoloads}/game_state.gd (100%) rename {autoload => autoloads}/game_state.gd.uid (100%) rename {resources => autoloads}/stats/base_stats.gd (100%) rename {resources => autoloads}/stats/base_stats.gd.uid (100%) rename {autoload => autoloads/stats}/stats.gd (100%) rename {autoload => autoloads/stats}/stats.gd.uid (100%) delete mode 100644 resources/roles/healer/set.tres delete mode 100644 resources/roles/tank/set.tres rename {dungeon => scenes/dungeon}/dungeon.tscn (93%) rename {dungeon => scenes/dungeon}/dungeon_manager.gd (87%) rename {dungeon => scenes/dungeon}/dungeon_manager.gd.uid (100%) rename {enemy => scenes/enemy}/boss.gd (62%) rename {enemy => scenes/enemy}/boss.gd.uid (100%) rename {enemy => scenes/enemy}/boss.tscn (91%) rename {resources/stats => scenes/enemy}/boss_stats.gd (100%) rename {resources/stats => scenes/enemy}/boss_stats.gd.uid (100%) rename {resources/stats => scenes/enemy}/boss_stats.tres (83%) rename {enemy => scenes/enemy}/enemy.gd (100%) rename {enemy => scenes/enemy}/enemy.gd.uid (100%) rename {enemy => scenes/enemy}/enemy.tscn (91%) rename {enemy => scenes/enemy}/enemy_movement.gd (100%) rename {enemy => scenes/enemy}/enemy_movement.gd.uid (100%) rename {resources/stats => scenes/enemy}/enemy_stats.gd (100%) rename {resources/stats => scenes/enemy}/enemy_stats.gd.uid (100%) rename {resources/stats => scenes/enemy}/enemy_stats.tres (83%) rename {components => scenes}/healthbar.gd (100%) rename {components => scenes}/healthbar.gd.uid (100%) rename {hud => scenes/hud}/hud.gd (100%) rename {hud => scenes/hud}/hud.gd.uid (100%) rename {hud => scenes/hud}/hud.tscn (98%) rename {player => scenes/player}/camera.gd (100%) rename {player => scenes/player}/camera.gd.uid (100%) rename {player => scenes/player}/combat.gd (100%) rename {player => scenes/player}/combat.gd.uid (100%) rename {player => scenes/player}/movement.gd (100%) rename {player => scenes/player}/movement.gd.uid (100%) rename {player => scenes/player}/player.gd (100%) rename {player => scenes/player}/player.gd.uid (100%) rename {player => scenes/player}/player.tscn (79%) rename {resources/stats => scenes/player}/player_stats.gd (100%) rename {resources/stats => scenes/player}/player_stats.gd.uid (100%) rename {resources/stats => scenes/player}/player_stats.tres (84%) rename {resources/roles => scenes/player/role}/ability.gd (100%) rename {resources/roles => scenes/player/role}/ability.gd.uid (100%) rename {resources/roles => scenes/player/role}/ability_set.gd (100%) rename {resources/roles => scenes/player/role}/ability_set.gd.uid (100%) rename {resources/roles => scenes/player/role}/damage/abilities/aoe.tres (87%) rename {resources/roles => scenes/player/role}/damage/abilities/passive.tres (87%) rename {resources/roles => scenes/player/role}/damage/abilities/single.tres (87%) rename {resources/roles => scenes/player/role}/damage/abilities/ult.tres (88%) rename {resources/roles => scenes/player/role}/damage/abilities/utility.tres (86%) rename {resources/roles => scenes/player/role}/damage/set.tres (60%) rename {resources/roles => scenes/player/role}/healer/abilities/aoe.tres (88%) rename {resources/roles => scenes/player/role}/healer/abilities/passive.tres (87%) rename {resources/roles => scenes/player/role}/healer/abilities/single.tres (87%) rename {resources/roles => scenes/player/role}/healer/abilities/ult.tres (88%) rename {resources/roles/tank => scenes/player/role/healer}/abilities/utility.tres (86%) create mode 100644 scenes/player/role/healer/set.tres rename {player => scenes/player/role}/role.gd (100%) rename {player => scenes/player/role}/role.gd.uid (100%) rename {resources/roles => scenes/player/role}/tank/abilities/aoe.tres (86%) rename {resources/roles => scenes/player/role}/tank/abilities/passive.tres (87%) rename {resources/roles => scenes/player/role}/tank/abilities/single.tres (86%) rename {resources/roles => scenes/player/role}/tank/abilities/ult.tres (85%) rename {resources/roles/healer => scenes/player/role/tank}/abilities/utility.tres (86%) create mode 100644 scenes/player/role/tank/set.tres rename {player => scenes/player}/targeting.gd (100%) rename {player => scenes/player}/targeting.gd.uid (100%) rename {portal => scenes/portal}/gate.gd (92%) rename {portal => scenes/portal}/gate.gd.uid (100%) rename {portal => scenes/portal}/gate.tscn (93%) rename {portal => scenes/portal}/portal.gd (92%) rename {portal => scenes/portal}/portal.gd.uid (100%) rename {portal => scenes/portal}/portal.tscn (91%) rename {resources/stats => scenes/portal}/portal_stats.gd (100%) rename {resources/stats => scenes/portal}/portal_stats.gd.uid (100%) rename {resources/stats => scenes/portal}/portal_stats.tres (83%) rename {world => scenes/world}/portal_spawner.gd (88%) rename {world => scenes/world}/portal_spawner.gd.uid (100%) rename {world => scenes/world}/world.tscn (97%) rename {resources/stats => systems/aggro}/aggro_config.gd (100%) rename {resources/stats => systems/aggro}/aggro_config.gd.uid (100%) rename {resources/stats => systems/aggro}/aggro_config.tres (56%) diff --git a/CLAUDE.md b/CLAUDE.md index cbbc3b6..e5888cd 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -24,20 +24,21 @@ Der User kommuniziert auf Deutsch. Code und Variablen auf Englisch. Kommentare n - **Resources** für Basiswerte (Stats, Abilities), **Stats Autoload** für Laufzeitwerte ## Projektstruktur -- `player/` — Spieler (.tscn + .gd): player, camera, movement, combat, targeting, role -- `enemy/` — Gegner (.tscn + .gd): enemy, enemy_movement, boss -- `portal/` — Portal + Gate (.tscn + .gd): portal, gate -- `dungeon/` — Dungeon (.tscn + .gd): dungeon, dungeon_manager -- `hud/` — HUD (.tscn + .gd): hud -- `world/` — Hauptszene (.tscn + .gd): world, portal_spawner -- `systems/` — 9 Systeme (health, shield, damage, ability, cooldown, enemy_ai, respawn, spawn, buff) - - `aggro/` — AggroSystem (aggro_system, aggro_tracker, aggro_decay, aggro_events) -- `autoload/` — EventBus (event_bus), Stats (stats), GameState (game_state) -- `components/` — Shared Components: healthbar -- `resources/stats/` — Stats-Klassen (.gd) + Daten (.tres): base_stats, player_stats, enemy_stats, boss_stats, portal_stats, aggro_config -- `resources/roles/` — Ability/AbilitySet-Klassen (.gd) + pro Rolle (damage, tank, healer): - - `{rolle}/set.tres` — AbilitySet der Rolle - - `{rolle}/abilities/` — Abilities (single, aoe, utility, ult, passive) +Drei Grundordner nach Verantwortung. Resources liegen bei ihren Skripten. +- `scenes/` — Darstellung + Input + - `player/` — Spieler + player_stats + role/ (Rollen + Abilities) + - `enemy/` — Gegner + Boss + enemy_stats + boss_stats + - `portal/` — Portal + Gate + portal_stats + - `dungeon/` — Dungeon + dungeon_manager + - `hud/` — HUD + - `world/` — Hauptszene + portal_spawner + - `healthbar.gd` — Shared Component +- `systems/` — Spiellogik + - 9 Systeme (health, shield, damage, ability, cooldown, enemy_ai, respawn, spawn, buff) + - `aggro/` — AggroSystem (system, tracker, decay, events) + aggro_config +- `autoloads/` — Globaler Zustand + - event_bus, game_state + - `stats/` — stats + base_stats ## Planungsdokument `plan.md` enthält die vollständige Projektstruktur: Szenenbaum, Szenen mit Nodes, Skripte, Components, Stats, Aggro-Regeln, Abilities und Events. Dieses Dokument ist die Wahrheit für den Soll-Zustand. diff --git a/autoload/event_bus.gd b/autoloads/event_bus.gd similarity index 100% rename from autoload/event_bus.gd rename to autoloads/event_bus.gd diff --git a/autoload/event_bus.gd.uid b/autoloads/event_bus.gd.uid similarity index 100% rename from autoload/event_bus.gd.uid rename to autoloads/event_bus.gd.uid diff --git a/autoload/game_state.gd b/autoloads/game_state.gd similarity index 100% rename from autoload/game_state.gd rename to autoloads/game_state.gd diff --git a/autoload/game_state.gd.uid b/autoloads/game_state.gd.uid similarity index 100% rename from autoload/game_state.gd.uid rename to autoloads/game_state.gd.uid diff --git a/resources/stats/base_stats.gd b/autoloads/stats/base_stats.gd similarity index 100% rename from resources/stats/base_stats.gd rename to autoloads/stats/base_stats.gd diff --git a/resources/stats/base_stats.gd.uid b/autoloads/stats/base_stats.gd.uid similarity index 100% rename from resources/stats/base_stats.gd.uid rename to autoloads/stats/base_stats.gd.uid diff --git a/autoload/stats.gd b/autoloads/stats/stats.gd similarity index 100% rename from autoload/stats.gd rename to autoloads/stats/stats.gd diff --git a/autoload/stats.gd.uid b/autoloads/stats/stats.gd.uid similarity index 100% rename from autoload/stats.gd.uid rename to autoloads/stats/stats.gd.uid diff --git a/plan.md b/plan.md index f1baa1c..8d01767 100644 --- a/plan.md +++ b/plan.md @@ -1,23 +1,27 @@ # Projektstruktur ## Ordnerstruktur +Drei Grundordner nach Verantwortung. Resources liegen bei ihren Skripten. ``` -player/ — Spieler (.tscn + .gd) -enemy/ — Gegner + Boss (.tscn + .gd) -portal/ — Portal + Gate (.tscn + .gd) -dungeon/ — Dungeon (.tscn + .gd) -hud/ — HUD (.tscn + .gd) -world/ — Hauptszene (.tscn + .gd) -systems/ — 9 Gameplay-Systeme (.gd) - aggro/ — AggroSystem (aggro_system, aggro_tracker, aggro_decay, aggro_events) -autoload/ — EventBus, Stats, GameState (.gd) -components/ — Shared UI: healthbar (.gd) -resources/ - stats/ — Stats-Klassen (.gd) + Daten (.tres) + AggroConfig - roles/ — Ability/AbilitySet-Klassen (.gd) + Rollen-Daten - damage/ — set.tres + abilities/ - tank/ — set.tres + abilities/ - healer/ — set.tres + abilities/ +scenes/ — Darstellung + Input + healthbar.gd — Shared Component + player/ — Spieler + player_stats + role/ — Rollenwechsel + Ability/AbilitySet-Klassen + damage/ — set.tres + abilities/ + tank/ — set.tres + abilities/ + healer/ — set.tres + abilities/ + enemy/ — Gegner + Boss + enemy_stats + boss_stats + portal/ — Portal + Gate + portal_stats + dungeon/ — Dungeon + dungeon_manager + hud/ — HUD + world/ — Hauptszene + portal_spawner +systems/ — Spiellogik + aggro/ — AggroSystem (system, tracker, decay, events) + aggro_config + 9× *_system.gd — health, shield, damage, ability, cooldown, enemy_ai, respawn, spawn, buff +autoloads/ — Globaler Zustand + event_bus.gd + game_state.gd + stats/ — stats.gd + base_stats.gd ``` ## Szenenbaum diff --git a/project.godot b/project.godot index e213582..c8f1160 100644 --- a/project.godot +++ b/project.godot @@ -11,15 +11,15 @@ config_version=5 [application] config/name="mmo" -run/main_scene="res://world/world.tscn" +run/main_scene="res://scenes/world/world.tscn" config/features=PackedStringArray("4.6", "Forward Plus") config/icon="res://icon.svg" [autoload] -EventBus="*res://autoload/event_bus.gd" -Stats="*res://autoload/stats.gd" -GameState="*res://autoload/game_state.gd" +EventBus="*res://autoloads/event_bus.gd" +Stats="*res://autoloads/stats/stats.gd" +GameState="*res://autoloads/game_state.gd" [dotnet] diff --git a/resources/roles/healer/set.tres b/resources/roles/healer/set.tres deleted file mode 100644 index c523517..0000000 --- a/resources/roles/healer/set.tres +++ /dev/null @@ -1,16 +0,0 @@ -[gd_resource type="Resource" script_class="AbilitySet" format=3 uid="uid://kcwuhnqy34mj"] - -[ext_resource type="Script" uid="uid://voedgs25cwrb" path="res://resources/roles/ability_set.gd" id="1"] -[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://resources/roles/ability.gd" id="1_ability"] -[ext_resource type="Resource" path="res://resources/roles/healer/abilities/single.tres" id="2"] -[ext_resource type="Resource" path="res://resources/roles/healer/abilities/aoe.tres" id="3"] -[ext_resource type="Resource" path="res://resources/roles/healer/abilities/utility.tres" id="4"] -[ext_resource type="Resource" path="res://resources/roles/healer/abilities/ult.tres" id="5"] -[ext_resource type="Resource" path="res://resources/roles/healer/abilities/passive.tres" id="6"] - -[resource] -script = ExtResource("1") -abilities = Array[ExtResource("1_ability")]([ExtResource("2"), ExtResource("3"), ExtResource("4"), ExtResource("5"), ExtResource("6")]) -aa_damage = 1.0 -aa_range = 20.0 -aa_is_heal = true diff --git a/resources/roles/tank/set.tres b/resources/roles/tank/set.tres deleted file mode 100644 index e56d5b8..0000000 --- a/resources/roles/tank/set.tres +++ /dev/null @@ -1,15 +0,0 @@ -[gd_resource type="Resource" script_class="AbilitySet" format=3 uid="uid://cgxtn7dfs40bh"] - -[ext_resource type="Script" uid="uid://voedgs25cwrb" path="res://resources/roles/ability_set.gd" id="1"] -[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://resources/roles/ability.gd" id="1_ability"] -[ext_resource type="Resource" path="res://resources/roles/tank/abilities/single.tres" id="2"] -[ext_resource type="Resource" path="res://resources/roles/tank/abilities/aoe.tres" id="3"] -[ext_resource type="Resource" path="res://resources/roles/tank/abilities/utility.tres" id="4"] -[ext_resource type="Resource" path="res://resources/roles/tank/abilities/ult.tres" id="5"] -[ext_resource type="Resource" path="res://resources/roles/tank/abilities/passive.tres" id="6"] - -[resource] -script = ExtResource("1") -abilities = Array[ExtResource("1_ability")]([ExtResource("2"), ExtResource("3"), ExtResource("4"), ExtResource("5"), ExtResource("6")]) -aa_damage = 5.0 -aa_range = 3.0 diff --git a/dungeon/dungeon.tscn b/scenes/dungeon/dungeon.tscn similarity index 93% rename from dungeon/dungeon.tscn rename to scenes/dungeon/dungeon.tscn index 1a1ed73..a349c1a 100644 --- a/dungeon/dungeon.tscn +++ b/scenes/dungeon/dungeon.tscn @@ -1,11 +1,11 @@ [gd_scene format=3] -[ext_resource type="PackedScene" path="res://player/player.tscn" id="player"] -[ext_resource type="PackedScene" path="res://hud/hud.tscn" id="hud"] -[ext_resource type="PackedScene" path="res://enemy/enemy.tscn" id="enemy"] -[ext_resource type="PackedScene" path="res://enemy/boss.tscn" id="boss"] -[ext_resource type="Script" path="res://dungeon/dungeon_manager.gd" id="dungeon_manager"] -[ext_resource type="PackedScene" path="res://portal/gate.tscn" id="gate"] +[ext_resource type="PackedScene" path="res://scenes/player/player.tscn" id="player"] +[ext_resource type="PackedScene" path="res://scenes/hud/hud.tscn" id="hud"] +[ext_resource type="PackedScene" path="res://scenes/enemy/enemy.tscn" id="enemy"] +[ext_resource type="PackedScene" path="res://scenes/enemy/boss.tscn" id="boss"] +[ext_resource type="Script" path="res://scenes/dungeon/dungeon_manager.gd" id="dungeon_manager"] +[ext_resource type="PackedScene" path="res://scenes/portal/gate.tscn" id="gate"] [ext_resource type="Script" path="res://systems/health_system.gd" id="health_system"] [ext_resource type="Script" path="res://systems/shield_system.gd" id="shield_system"] [ext_resource type="Script" path="res://systems/damage_system.gd" id="damage_system"] @@ -204,7 +204,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 75) [node name="ExitGate" parent="." instance=ExtResource("gate")] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6, 0, -4) -target_scene = "res://world/world.tscn" +target_scene = "res://scenes/world/world.tscn" is_exit = true [node name="DungeonManager" type="Node" parent="."] diff --git a/dungeon/dungeon_manager.gd b/scenes/dungeon/dungeon_manager.gd similarity index 87% rename from dungeon/dungeon_manager.gd rename to scenes/dungeon/dungeon_manager.gd index 5f4940b..9f89f63 100644 --- a/dungeon/dungeon_manager.gd +++ b/scenes/dungeon/dungeon_manager.gd @@ -13,4 +13,4 @@ func _on_entity_died(entity: Node) -> void: GameState.returning_from_dungeon = false GameState.clear() EventBus.dungeon_cleared.emit() - get_tree().change_scene_to_file("res://world/world.tscn") + get_tree().change_scene_to_file("res://scenes/world/world.tscn") diff --git a/dungeon/dungeon_manager.gd.uid b/scenes/dungeon/dungeon_manager.gd.uid similarity index 100% rename from dungeon/dungeon_manager.gd.uid rename to scenes/dungeon/dungeon_manager.gd.uid diff --git a/enemy/boss.gd b/scenes/enemy/boss.gd similarity index 62% rename from enemy/boss.gd rename to scenes/enemy/boss.gd index ac0df03..d34a03f 100644 --- a/enemy/boss.gd +++ b/scenes/enemy/boss.gd @@ -1,4 +1,4 @@ -extends "res://enemy/enemy.gd" +extends "res://scenes/enemy/enemy.gd" func _ready() -> void: super._ready() diff --git a/enemy/boss.gd.uid b/scenes/enemy/boss.gd.uid similarity index 100% rename from enemy/boss.gd.uid rename to scenes/enemy/boss.gd.uid diff --git a/enemy/boss.tscn b/scenes/enemy/boss.tscn similarity index 91% rename from enemy/boss.tscn rename to scenes/enemy/boss.tscn index c2fa114..dbfb94b 100644 --- a/enemy/boss.tscn +++ b/scenes/enemy/boss.tscn @@ -1,9 +1,9 @@ [gd_scene load_steps=6 format=3] -[ext_resource type="Script" path="res://enemy/boss.gd" id="1"] -[ext_resource type="Script" path="res://components/healthbar.gd" id="4"] -[ext_resource type="Script" path="res://enemy/enemy_movement.gd" id="5"] -[ext_resource type="Resource" path="res://resources/stats/boss_stats.tres" id="8"] +[ext_resource type="Script" path="res://scenes/enemy/boss.gd" id="1"] +[ext_resource type="Script" path="res://scenes/healthbar.gd" id="4"] +[ext_resource type="Script" path="res://scenes/enemy/enemy_movement.gd" id="5"] +[ext_resource type="Resource" path="res://scenes/enemy/boss_stats.tres" id="8"] [sub_resource type="CapsuleShape3D" id="CapsuleShape3D_1"] radius = 0.6 diff --git a/resources/stats/boss_stats.gd b/scenes/enemy/boss_stats.gd similarity index 100% rename from resources/stats/boss_stats.gd rename to scenes/enemy/boss_stats.gd diff --git a/resources/stats/boss_stats.gd.uid b/scenes/enemy/boss_stats.gd.uid similarity index 100% rename from resources/stats/boss_stats.gd.uid rename to scenes/enemy/boss_stats.gd.uid diff --git a/resources/stats/boss_stats.tres b/scenes/enemy/boss_stats.tres similarity index 83% rename from resources/stats/boss_stats.tres rename to scenes/enemy/boss_stats.tres index 188c934..e15d7c7 100644 --- a/resources/stats/boss_stats.tres +++ b/scenes/enemy/boss_stats.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="BossStats" load_steps=2 format=3] -[ext_resource type="Script" path="res://resources/stats/boss_stats.gd" id="1"] +[ext_resource type="Script" path="res://scenes/enemy/boss_stats.gd" id="1"] [resource] script = ExtResource("1") diff --git a/enemy/enemy.gd b/scenes/enemy/enemy.gd similarity index 100% rename from enemy/enemy.gd rename to scenes/enemy/enemy.gd diff --git a/enemy/enemy.gd.uid b/scenes/enemy/enemy.gd.uid similarity index 100% rename from enemy/enemy.gd.uid rename to scenes/enemy/enemy.gd.uid diff --git a/enemy/enemy.tscn b/scenes/enemy/enemy.tscn similarity index 91% rename from enemy/enemy.tscn rename to scenes/enemy/enemy.tscn index 6fde9cc..35c48a2 100644 --- a/enemy/enemy.tscn +++ b/scenes/enemy/enemy.tscn @@ -1,9 +1,9 @@ [gd_scene load_steps=6 format=3] -[ext_resource type="Script" path="res://enemy/enemy.gd" id="1"] -[ext_resource type="Script" path="res://components/healthbar.gd" id="4"] -[ext_resource type="Script" path="res://enemy/enemy_movement.gd" id="5"] -[ext_resource type="Resource" path="res://resources/stats/enemy_stats.tres" id="8"] +[ext_resource type="Script" path="res://scenes/enemy/enemy.gd" id="1"] +[ext_resource type="Script" path="res://scenes/healthbar.gd" id="4"] +[ext_resource type="Script" path="res://scenes/enemy/enemy_movement.gd" id="5"] +[ext_resource type="Resource" path="res://scenes/enemy/enemy_stats.tres" id="8"] [sub_resource type="CapsuleShape3D" id="CapsuleShape3D_1"] radius = 0.4 diff --git a/enemy/enemy_movement.gd b/scenes/enemy/enemy_movement.gd similarity index 100% rename from enemy/enemy_movement.gd rename to scenes/enemy/enemy_movement.gd diff --git a/enemy/enemy_movement.gd.uid b/scenes/enemy/enemy_movement.gd.uid similarity index 100% rename from enemy/enemy_movement.gd.uid rename to scenes/enemy/enemy_movement.gd.uid diff --git a/resources/stats/enemy_stats.gd b/scenes/enemy/enemy_stats.gd similarity index 100% rename from resources/stats/enemy_stats.gd rename to scenes/enemy/enemy_stats.gd diff --git a/resources/stats/enemy_stats.gd.uid b/scenes/enemy/enemy_stats.gd.uid similarity index 100% rename from resources/stats/enemy_stats.gd.uid rename to scenes/enemy/enemy_stats.gd.uid diff --git a/resources/stats/enemy_stats.tres b/scenes/enemy/enemy_stats.tres similarity index 83% rename from resources/stats/enemy_stats.tres rename to scenes/enemy/enemy_stats.tres index 909ed32..cd0eb0d 100644 --- a/resources/stats/enemy_stats.tres +++ b/scenes/enemy/enemy_stats.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="EnemyStats" format=3 uid="uid://cj1shmjwf0xeo"] -[ext_resource type="Script" uid="uid://bh2uuuvl30y0x" path="res://resources/stats/enemy_stats.gd" id="1"] +[ext_resource type="Script" uid="uid://bh2uuuvl30y0x" path="res://scenes/enemy/enemy_stats.gd" id="1"] [resource] script = ExtResource("1") diff --git a/components/healthbar.gd b/scenes/healthbar.gd similarity index 100% rename from components/healthbar.gd rename to scenes/healthbar.gd diff --git a/components/healthbar.gd.uid b/scenes/healthbar.gd.uid similarity index 100% rename from components/healthbar.gd.uid rename to scenes/healthbar.gd.uid diff --git a/hud/hud.gd b/scenes/hud/hud.gd similarity index 100% rename from hud/hud.gd rename to scenes/hud/hud.gd diff --git a/hud/hud.gd.uid b/scenes/hud/hud.gd.uid similarity index 100% rename from hud/hud.gd.uid rename to scenes/hud/hud.gd.uid diff --git a/hud/hud.tscn b/scenes/hud/hud.tscn similarity index 98% rename from hud/hud.tscn rename to scenes/hud/hud.tscn index bfd5010..c0aa8c0 100644 --- a/hud/hud.tscn +++ b/scenes/hud/hud.tscn @@ -1,6 +1,6 @@ [gd_scene format=3] -[ext_resource type="Script" path="res://hud/hud.gd" id="1"] +[ext_resource type="Script" path="res://scenes/hud/hud.gd" id="1"] [sub_resource type="StyleBoxFlat" id="StyleBoxFlat_ability_active"] bg_color = Color(0.2, 0.2, 0.2, 0.8) diff --git a/player/camera.gd b/scenes/player/camera.gd similarity index 100% rename from player/camera.gd rename to scenes/player/camera.gd diff --git a/player/camera.gd.uid b/scenes/player/camera.gd.uid similarity index 100% rename from player/camera.gd.uid rename to scenes/player/camera.gd.uid diff --git a/player/combat.gd b/scenes/player/combat.gd similarity index 100% rename from player/combat.gd rename to scenes/player/combat.gd diff --git a/player/combat.gd.uid b/scenes/player/combat.gd.uid similarity index 100% rename from player/combat.gd.uid rename to scenes/player/combat.gd.uid diff --git a/player/movement.gd b/scenes/player/movement.gd similarity index 100% rename from player/movement.gd rename to scenes/player/movement.gd diff --git a/player/movement.gd.uid b/scenes/player/movement.gd.uid similarity index 100% rename from player/movement.gd.uid rename to scenes/player/movement.gd.uid diff --git a/player/player.gd b/scenes/player/player.gd similarity index 100% rename from player/player.gd rename to scenes/player/player.gd diff --git a/player/player.gd.uid b/scenes/player/player.gd.uid similarity index 100% rename from player/player.gd.uid rename to scenes/player/player.gd.uid diff --git a/player/player.tscn b/scenes/player/player.tscn similarity index 79% rename from player/player.tscn rename to scenes/player/player.tscn index a99f726..d64fc17 100644 --- a/player/player.tscn +++ b/scenes/player/player.tscn @@ -1,15 +1,15 @@ [gd_scene format=3 uid="uid://cdnkbt1f0db7e"] -[ext_resource type="Script" uid="uid://bfpt2p7uucfyb" path="res://player/player.gd" id="1"] -[ext_resource type="Script" uid="uid://cohjyjge1kqxb" path="res://player/camera.gd" id="2"] -[ext_resource type="Script" uid="uid://fg87dh8fbc8" path="res://player/movement.gd" id="3"] -[ext_resource type="Script" uid="uid://d15til6fsxw5b" path="res://player/combat.gd" id="4"] -[ext_resource type="Script" uid="uid://b05nkuryipwny" path="res://player/targeting.gd" id="8"] -[ext_resource type="Script" path="res://player/role.gd" id="10"] -[ext_resource type="Resource" uid="uid://cgxtn7dfs40bh" path="res://resources/roles/tank/set.tres" id="11"] -[ext_resource type="Resource" uid="uid://beodknb6i1pm4" path="res://resources/roles/damage/set.tres" id="12"] -[ext_resource type="Resource" uid="uid://kcwuhnqy34mj" path="res://resources/roles/healer/set.tres" id="13"] -[ext_resource type="Resource" path="res://resources/stats/player_stats.tres" id="14"] +[ext_resource type="Script" uid="uid://bfpt2p7uucfyb" path="res://scenes/player/player.gd" id="1"] +[ext_resource type="Script" uid="uid://cohjyjge1kqxb" path="res://scenes/player/camera.gd" id="2"] +[ext_resource type="Script" uid="uid://fg87dh8fbc8" path="res://scenes/player/movement.gd" id="3"] +[ext_resource type="Script" uid="uid://d15til6fsxw5b" path="res://scenes/player/combat.gd" id="4"] +[ext_resource type="Script" uid="uid://b05nkuryipwny" path="res://scenes/player/targeting.gd" id="8"] +[ext_resource type="Script" path="res://scenes/player/role/role.gd" id="10"] +[ext_resource type="Resource" uid="uid://cgxtn7dfs40bh" path="res://scenes/player/role/tank/set.tres" id="11"] +[ext_resource type="Resource" uid="uid://beodknb6i1pm4" path="res://scenes/player/role/damage/set.tres" id="12"] +[ext_resource type="Resource" uid="uid://kcwuhnqy34mj" path="res://scenes/player/role/healer/set.tres" id="13"] +[ext_resource type="Resource" path="res://scenes/player/player_stats.tres" id="14"] [sub_resource type="CapsuleShape3D" id="CapsuleShape3D_1"] radius = 0.3 diff --git a/resources/stats/player_stats.gd b/scenes/player/player_stats.gd similarity index 100% rename from resources/stats/player_stats.gd rename to scenes/player/player_stats.gd diff --git a/resources/stats/player_stats.gd.uid b/scenes/player/player_stats.gd.uid similarity index 100% rename from resources/stats/player_stats.gd.uid rename to scenes/player/player_stats.gd.uid diff --git a/resources/stats/player_stats.tres b/scenes/player/player_stats.tres similarity index 84% rename from resources/stats/player_stats.tres rename to scenes/player/player_stats.tres index 0c7a8dd..61822e2 100644 --- a/resources/stats/player_stats.tres +++ b/scenes/player/player_stats.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlayerStats" format=3 uid="uid://btd0g0oiulssq"] -[ext_resource type="Script" uid="uid://ypyntbavbsto" path="res://resources/stats/player_stats.gd" id="1"] +[ext_resource type="Script" uid="uid://ypyntbavbsto" path="res://scenes/player/player_stats.gd" id="1"] [resource] script = ExtResource("1") diff --git a/resources/roles/ability.gd b/scenes/player/role/ability.gd similarity index 100% rename from resources/roles/ability.gd rename to scenes/player/role/ability.gd diff --git a/resources/roles/ability.gd.uid b/scenes/player/role/ability.gd.uid similarity index 100% rename from resources/roles/ability.gd.uid rename to scenes/player/role/ability.gd.uid diff --git a/resources/roles/ability_set.gd b/scenes/player/role/ability_set.gd similarity index 100% rename from resources/roles/ability_set.gd rename to scenes/player/role/ability_set.gd diff --git a/resources/roles/ability_set.gd.uid b/scenes/player/role/ability_set.gd.uid similarity index 100% rename from resources/roles/ability_set.gd.uid rename to scenes/player/role/ability_set.gd.uid diff --git a/resources/roles/damage/abilities/aoe.tres b/scenes/player/role/damage/abilities/aoe.tres similarity index 87% rename from resources/roles/damage/abilities/aoe.tres rename to scenes/player/role/damage/abilities/aoe.tres index 4874e06..860d19f 100644 --- a/resources/roles/damage/abilities/aoe.tres +++ b/scenes/player/role/damage/abilities/aoe.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="Ability" format=3 uid="uid://bpx3l13iuynfv"] -[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://resources/roles/ability.gd" id="1"] +[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://scenes/player/role/ability.gd" id="1"] [resource] script = ExtResource("1") diff --git a/resources/roles/damage/abilities/passive.tres b/scenes/player/role/damage/abilities/passive.tres similarity index 87% rename from resources/roles/damage/abilities/passive.tres rename to scenes/player/role/damage/abilities/passive.tres index f2d9242..19c730b 100644 --- a/resources/roles/damage/abilities/passive.tres +++ b/scenes/player/role/damage/abilities/passive.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="Ability" format=3 uid="uid://dadpl32yujwhe"] -[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://resources/roles/ability.gd" id="1"] +[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://scenes/player/role/ability.gd" id="1"] [resource] script = ExtResource("1") diff --git a/resources/roles/damage/abilities/single.tres b/scenes/player/role/damage/abilities/single.tres similarity index 87% rename from resources/roles/damage/abilities/single.tres rename to scenes/player/role/damage/abilities/single.tres index e037125..b1be495 100644 --- a/resources/roles/damage/abilities/single.tres +++ b/scenes/player/role/damage/abilities/single.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="Ability" format=3 uid="uid://dwvc8b3cmce8l"] -[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://resources/roles/ability.gd" id="1"] +[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://scenes/player/role/ability.gd" id="1"] [resource] script = ExtResource("1") diff --git a/resources/roles/damage/abilities/ult.tres b/scenes/player/role/damage/abilities/ult.tres similarity index 88% rename from resources/roles/damage/abilities/ult.tres rename to scenes/player/role/damage/abilities/ult.tres index 63ada2e..e5e0cc1 100644 --- a/resources/roles/damage/abilities/ult.tres +++ b/scenes/player/role/damage/abilities/ult.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="Ability" format=3 uid="uid://s32wvlww2ls2"] -[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://resources/roles/ability.gd" id="1"] +[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://scenes/player/role/ability.gd" id="1"] [resource] script = ExtResource("1") diff --git a/resources/roles/damage/abilities/utility.tres b/scenes/player/role/damage/abilities/utility.tres similarity index 86% rename from resources/roles/damage/abilities/utility.tres rename to scenes/player/role/damage/abilities/utility.tres index d24156f..d11f2c0 100644 --- a/resources/roles/damage/abilities/utility.tres +++ b/scenes/player/role/damage/abilities/utility.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="Ability" format=3] -[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://resources/roles/ability.gd" id="1"] +[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://scenes/player/role/ability.gd" id="1"] [resource] script = ExtResource("1") diff --git a/resources/roles/damage/set.tres b/scenes/player/role/damage/set.tres similarity index 60% rename from resources/roles/damage/set.tres rename to scenes/player/role/damage/set.tres index 4af239e..06d958d 100644 --- a/resources/roles/damage/set.tres +++ b/scenes/player/role/damage/set.tres @@ -1,12 +1,12 @@ [gd_resource type="Resource" script_class="AbilitySet" format=3 uid="uid://beodknb6i1pm4"] -[ext_resource type="Script" uid="uid://voedgs25cwrb" path="res://resources/roles/ability_set.gd" id="1"] -[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://resources/roles/ability.gd" id="1_ability"] -[ext_resource type="Resource" uid="uid://dwvc8b3cmce8l" path="res://resources/roles/damage/abilities/single.tres" id="2"] -[ext_resource type="Resource" uid="uid://bpx3l13iuynfv" path="res://resources/roles/damage/abilities/aoe.tres" id="3"] -[ext_resource type="Resource" path="res://resources/roles/damage/abilities/utility.tres" id="4"] -[ext_resource type="Resource" uid="uid://s32wvlww2ls2" path="res://resources/roles/damage/abilities/ult.tres" id="5"] -[ext_resource type="Resource" uid="uid://dadpl32yujwhe" path="res://resources/roles/damage/abilities/passive.tres" id="6"] +[ext_resource type="Script" uid="uid://voedgs25cwrb" path="res://scenes/player/role/ability_set.gd" id="1"] +[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://scenes/player/role/ability.gd" id="1_ability"] +[ext_resource type="Resource" uid="uid://dwvc8b3cmce8l" path="res://scenes/player/role/damage/abilities/single.tres" id="2"] +[ext_resource type="Resource" uid="uid://bpx3l13iuynfv" path="res://scenes/player/role/damage/abilities/aoe.tres" id="3"] +[ext_resource type="Resource" path="res://scenes/player/role/damage/abilities/utility.tres" id="4"] +[ext_resource type="Resource" uid="uid://s32wvlww2ls2" path="res://scenes/player/role/damage/abilities/ult.tres" id="5"] +[ext_resource type="Resource" uid="uid://dadpl32yujwhe" path="res://scenes/player/role/damage/abilities/passive.tres" id="6"] [resource] script = ExtResource("1") diff --git a/resources/roles/healer/abilities/aoe.tres b/scenes/player/role/healer/abilities/aoe.tres similarity index 88% rename from resources/roles/healer/abilities/aoe.tres rename to scenes/player/role/healer/abilities/aoe.tres index e7e37e9..3c679fd 100644 --- a/resources/roles/healer/abilities/aoe.tres +++ b/scenes/player/role/healer/abilities/aoe.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="Ability" format=3 uid="uid://m1kgk2uugnex"] -[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://resources/roles/ability.gd" id="1"] +[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://scenes/player/role/ability.gd" id="1"] [resource] script = ExtResource("1") diff --git a/resources/roles/healer/abilities/passive.tres b/scenes/player/role/healer/abilities/passive.tres similarity index 87% rename from resources/roles/healer/abilities/passive.tres rename to scenes/player/role/healer/abilities/passive.tres index c437a58..bb9be18 100644 --- a/resources/roles/healer/abilities/passive.tres +++ b/scenes/player/role/healer/abilities/passive.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="Ability" format=3] -[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://resources/roles/ability.gd" id="1"] +[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://scenes/player/role/ability.gd" id="1"] [resource] script = ExtResource("1") diff --git a/resources/roles/healer/abilities/single.tres b/scenes/player/role/healer/abilities/single.tres similarity index 87% rename from resources/roles/healer/abilities/single.tres rename to scenes/player/role/healer/abilities/single.tres index 0d63029..cd94eba 100644 --- a/resources/roles/healer/abilities/single.tres +++ b/scenes/player/role/healer/abilities/single.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="Ability" format=3 uid="uid://cqw1jy6kqvmnj"] -[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://resources/roles/ability.gd" id="1"] +[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://scenes/player/role/ability.gd" id="1"] [resource] script = ExtResource("1") diff --git a/resources/roles/healer/abilities/ult.tres b/scenes/player/role/healer/abilities/ult.tres similarity index 88% rename from resources/roles/healer/abilities/ult.tres rename to scenes/player/role/healer/abilities/ult.tres index 0fe8b41..32b83cf 100644 --- a/resources/roles/healer/abilities/ult.tres +++ b/scenes/player/role/healer/abilities/ult.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="Ability" format=3 uid="uid://d04nu1leyki16"] -[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://resources/roles/ability.gd" id="1"] +[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://scenes/player/role/ability.gd" id="1"] [resource] script = ExtResource("1") diff --git a/resources/roles/tank/abilities/utility.tres b/scenes/player/role/healer/abilities/utility.tres similarity index 86% rename from resources/roles/tank/abilities/utility.tres rename to scenes/player/role/healer/abilities/utility.tres index d24156f..d11f2c0 100644 --- a/resources/roles/tank/abilities/utility.tres +++ b/scenes/player/role/healer/abilities/utility.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="Ability" format=3] -[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://resources/roles/ability.gd" id="1"] +[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://scenes/player/role/ability.gd" id="1"] [resource] script = ExtResource("1") diff --git a/scenes/player/role/healer/set.tres b/scenes/player/role/healer/set.tres new file mode 100644 index 0000000..cc3eefd --- /dev/null +++ b/scenes/player/role/healer/set.tres @@ -0,0 +1,16 @@ +[gd_resource type="Resource" script_class="AbilitySet" format=3 uid="uid://kcwuhnqy34mj"] + +[ext_resource type="Script" uid="uid://voedgs25cwrb" path="res://scenes/player/role/ability_set.gd" id="1"] +[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://scenes/player/role/ability.gd" id="1_ability"] +[ext_resource type="Resource" path="res://scenes/player/role/healer/abilities/single.tres" id="2"] +[ext_resource type="Resource" path="res://scenes/player/role/healer/abilities/aoe.tres" id="3"] +[ext_resource type="Resource" path="res://scenes/player/role/healer/abilities/utility.tres" id="4"] +[ext_resource type="Resource" path="res://scenes/player/role/healer/abilities/ult.tres" id="5"] +[ext_resource type="Resource" path="res://scenes/player/role/healer/abilities/passive.tres" id="6"] + +[resource] +script = ExtResource("1") +abilities = Array[ExtResource("1_ability")]([ExtResource("2"), ExtResource("3"), ExtResource("4"), ExtResource("5"), ExtResource("6")]) +aa_damage = 1.0 +aa_range = 20.0 +aa_is_heal = true diff --git a/player/role.gd b/scenes/player/role/role.gd similarity index 100% rename from player/role.gd rename to scenes/player/role/role.gd diff --git a/player/role.gd.uid b/scenes/player/role/role.gd.uid similarity index 100% rename from player/role.gd.uid rename to scenes/player/role/role.gd.uid diff --git a/resources/roles/tank/abilities/aoe.tres b/scenes/player/role/tank/abilities/aoe.tres similarity index 86% rename from resources/roles/tank/abilities/aoe.tres rename to scenes/player/role/tank/abilities/aoe.tres index da02330..4472d0c 100644 --- a/resources/roles/tank/abilities/aoe.tres +++ b/scenes/player/role/tank/abilities/aoe.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="Ability" format=3] -[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://resources/roles/ability.gd" id="1"] +[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://scenes/player/role/ability.gd" id="1"] [resource] script = ExtResource("1") diff --git a/resources/roles/tank/abilities/passive.tres b/scenes/player/role/tank/abilities/passive.tres similarity index 87% rename from resources/roles/tank/abilities/passive.tres rename to scenes/player/role/tank/abilities/passive.tres index bb129f8..1babc70 100644 --- a/resources/roles/tank/abilities/passive.tres +++ b/scenes/player/role/tank/abilities/passive.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="Ability" format=3] -[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://resources/roles/ability.gd" id="1"] +[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://scenes/player/role/ability.gd" id="1"] [resource] script = ExtResource("1") diff --git a/resources/roles/tank/abilities/single.tres b/scenes/player/role/tank/abilities/single.tres similarity index 86% rename from resources/roles/tank/abilities/single.tres rename to scenes/player/role/tank/abilities/single.tres index 8c51f6b..749d28e 100644 --- a/resources/roles/tank/abilities/single.tres +++ b/scenes/player/role/tank/abilities/single.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="Ability" format=3] -[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://resources/roles/ability.gd" id="1"] +[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://scenes/player/role/ability.gd" id="1"] [resource] script = ExtResource("1") diff --git a/resources/roles/tank/abilities/ult.tres b/scenes/player/role/tank/abilities/ult.tres similarity index 85% rename from resources/roles/tank/abilities/ult.tres rename to scenes/player/role/tank/abilities/ult.tres index bb1dd82..6e6057e 100644 --- a/resources/roles/tank/abilities/ult.tres +++ b/scenes/player/role/tank/abilities/ult.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="Ability" format=3] -[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://resources/roles/ability.gd" id="1"] +[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://scenes/player/role/ability.gd" id="1"] [resource] script = ExtResource("1") diff --git a/resources/roles/healer/abilities/utility.tres b/scenes/player/role/tank/abilities/utility.tres similarity index 86% rename from resources/roles/healer/abilities/utility.tres rename to scenes/player/role/tank/abilities/utility.tres index d24156f..d11f2c0 100644 --- a/resources/roles/healer/abilities/utility.tres +++ b/scenes/player/role/tank/abilities/utility.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="Ability" format=3] -[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://resources/roles/ability.gd" id="1"] +[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://scenes/player/role/ability.gd" id="1"] [resource] script = ExtResource("1") diff --git a/scenes/player/role/tank/set.tres b/scenes/player/role/tank/set.tres new file mode 100644 index 0000000..3ff166c --- /dev/null +++ b/scenes/player/role/tank/set.tres @@ -0,0 +1,15 @@ +[gd_resource type="Resource" script_class="AbilitySet" format=3 uid="uid://cgxtn7dfs40bh"] + +[ext_resource type="Script" uid="uid://voedgs25cwrb" path="res://scenes/player/role/ability_set.gd" id="1"] +[ext_resource type="Script" uid="uid://c03xbbf3yhfl3" path="res://scenes/player/role/ability.gd" id="1_ability"] +[ext_resource type="Resource" path="res://scenes/player/role/tank/abilities/single.tres" id="2"] +[ext_resource type="Resource" path="res://scenes/player/role/tank/abilities/aoe.tres" id="3"] +[ext_resource type="Resource" path="res://scenes/player/role/tank/abilities/utility.tres" id="4"] +[ext_resource type="Resource" path="res://scenes/player/role/tank/abilities/ult.tres" id="5"] +[ext_resource type="Resource" path="res://scenes/player/role/tank/abilities/passive.tres" id="6"] + +[resource] +script = ExtResource("1") +abilities = Array[ExtResource("1_ability")]([ExtResource("2"), ExtResource("3"), ExtResource("4"), ExtResource("5"), ExtResource("6")]) +aa_damage = 5.0 +aa_range = 3.0 diff --git a/player/targeting.gd b/scenes/player/targeting.gd similarity index 100% rename from player/targeting.gd rename to scenes/player/targeting.gd diff --git a/player/targeting.gd.uid b/scenes/player/targeting.gd.uid similarity index 100% rename from player/targeting.gd.uid rename to scenes/player/targeting.gd.uid diff --git a/portal/gate.gd b/scenes/portal/gate.gd similarity index 92% rename from portal/gate.gd rename to scenes/portal/gate.gd index 590d328..5b0c0dd 100644 --- a/portal/gate.gd +++ b/scenes/portal/gate.gd @@ -1,6 +1,6 @@ extends StaticBody3D -@export var target_scene: String = "res://dungeon/dungeon.tscn" +@export var target_scene: String = "res://scenes/dungeon/dungeon.tscn" @export var is_exit: bool = false var active := false diff --git a/portal/gate.gd.uid b/scenes/portal/gate.gd.uid similarity index 100% rename from portal/gate.gd.uid rename to scenes/portal/gate.gd.uid diff --git a/portal/gate.tscn b/scenes/portal/gate.tscn similarity index 93% rename from portal/gate.tscn rename to scenes/portal/gate.tscn index 12159f1..09d221d 100644 --- a/portal/gate.tscn +++ b/scenes/portal/gate.tscn @@ -1,6 +1,6 @@ [gd_scene format=3] -[ext_resource type="Script" path="res://portal/gate.gd" id="1"] +[ext_resource type="Script" path="res://scenes/portal/gate.gd" id="1"] [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_1"] albedo_color = Color(0.1, 0.9, 0.3, 1) diff --git a/portal/portal.gd b/scenes/portal/portal.gd similarity index 92% rename from portal/portal.gd rename to scenes/portal/portal.gd index 4505000..0b3f1a4 100644 --- a/portal/portal.gd +++ b/scenes/portal/portal.gd @@ -2,7 +2,7 @@ extends StaticBody3D @export var stats: BaseStats -const GATE_SCENE: PackedScene = preload("res://portal/gate.tscn") +const GATE_SCENE: PackedScene = preload("res://scenes/portal/gate.tscn") func _ready() -> void: add_to_group("portals") diff --git a/portal/portal.gd.uid b/scenes/portal/portal.gd.uid similarity index 100% rename from portal/portal.gd.uid rename to scenes/portal/portal.gd.uid diff --git a/portal/portal.tscn b/scenes/portal/portal.tscn similarity index 91% rename from portal/portal.tscn rename to scenes/portal/portal.tscn index c416696..eebed0d 100644 --- a/portal/portal.tscn +++ b/scenes/portal/portal.tscn @@ -1,8 +1,8 @@ [gd_scene format=3] -[ext_resource type="Script" path="res://portal/portal.gd" id="1"] -[ext_resource type="Script" path="res://components/healthbar.gd" id="3"] -[ext_resource type="Resource" path="res://resources/stats/portal_stats.tres" id="6"] +[ext_resource type="Script" path="res://scenes/portal/portal.gd" id="1"] +[ext_resource type="Script" path="res://scenes/healthbar.gd" id="3"] +[ext_resource type="Resource" path="res://scenes/portal/portal_stats.tres" id="6"] [sub_resource type="SphereShape3D" id="SphereShape3D_1"] radius = 10.0 diff --git a/resources/stats/portal_stats.gd b/scenes/portal/portal_stats.gd similarity index 100% rename from resources/stats/portal_stats.gd rename to scenes/portal/portal_stats.gd diff --git a/resources/stats/portal_stats.gd.uid b/scenes/portal/portal_stats.gd.uid similarity index 100% rename from resources/stats/portal_stats.gd.uid rename to scenes/portal/portal_stats.gd.uid diff --git a/resources/stats/portal_stats.tres b/scenes/portal/portal_stats.tres similarity index 83% rename from resources/stats/portal_stats.tres rename to scenes/portal/portal_stats.tres index 7ab989c..24454bf 100644 --- a/resources/stats/portal_stats.tres +++ b/scenes/portal/portal_stats.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PortalStats" format=3 uid="uid://be2vv5u0jw0yw"] -[ext_resource type="Script" uid="uid://bioid3s5oftxs" path="res://resources/stats/portal_stats.gd" id="1"] +[ext_resource type="Script" uid="uid://bioid3s5oftxs" path="res://scenes/portal/portal_stats.gd" id="1"] [resource] script = ExtResource("1") diff --git a/world/portal_spawner.gd b/scenes/world/portal_spawner.gd similarity index 88% rename from world/portal_spawner.gd rename to scenes/world/portal_spawner.gd index a9e105e..94e0095 100644 --- a/world/portal_spawner.gd +++ b/scenes/world/portal_spawner.gd @@ -1,7 +1,7 @@ extends Node -const PORTAL_SCENE: PackedScene = preload("res://portal/portal.tscn") -const GATE_SCENE: PackedScene = preload("res://portal/gate.tscn") +const PORTAL_SCENE: PackedScene = preload("res://scenes/portal/portal.tscn") +const GATE_SCENE: PackedScene = preload("res://scenes/portal/gate.tscn") const SPAWN_INTERVAL := 30.0 const MAX_PORTALS := 3 const MIN_DISTANCE := 20.0 diff --git a/world/portal_spawner.gd.uid b/scenes/world/portal_spawner.gd.uid similarity index 100% rename from world/portal_spawner.gd.uid rename to scenes/world/portal_spawner.gd.uid diff --git a/world/world.tscn b/scenes/world/world.tscn similarity index 97% rename from world/world.tscn rename to scenes/world/world.tscn index d43d2fe..0f88624 100644 --- a/world/world.tscn +++ b/scenes/world/world.tscn @@ -10,9 +10,9 @@ [ext_resource type="Script" uid="uid://cbd1bryh0e2dw" path="res://systems/damage_system.gd" id="damage_system"] [ext_resource type="Script" uid="uid://bwhxu5586lc1l" path="res://systems/enemy_ai_system.gd" id="enemy_ai_system"] [ext_resource type="Script" uid="uid://b3wkn5118dimy" path="res://systems/health_system.gd" id="health_system"] -[ext_resource type="PackedScene" path="res://hud/hud.tscn" id="hud"] -[ext_resource type="PackedScene" uid="uid://cdnkbt1f0db7e" path="res://player/player.tscn" id="player"] -[ext_resource type="Script" uid="uid://cskx6o07iukwh" path="res://world/portal_spawner.gd" id="portal_spawner"] +[ext_resource type="PackedScene" path="res://scenes/hud/hud.tscn" id="hud"] +[ext_resource type="PackedScene" uid="uid://cdnkbt1f0db7e" path="res://scenes/player/player.tscn" id="player"] +[ext_resource type="Script" uid="uid://cskx6o07iukwh" path="res://scenes/world/portal_spawner.gd" id="portal_spawner"] [ext_resource type="Script" uid="uid://b1qkvoqvmd21h" path="res://systems/respawn_system.gd" id="respawn_system"] [ext_resource type="Script" uid="uid://rsnpuf77o0sn" path="res://systems/shield_system.gd" id="shield_system"] [ext_resource type="Script" uid="uid://c84voxmnaifyt" path="res://systems/spawn_system.gd" id="spawn_system"] diff --git a/resources/stats/aggro_config.gd b/systems/aggro/aggro_config.gd similarity index 100% rename from resources/stats/aggro_config.gd rename to systems/aggro/aggro_config.gd diff --git a/resources/stats/aggro_config.gd.uid b/systems/aggro/aggro_config.gd.uid similarity index 100% rename from resources/stats/aggro_config.gd.uid rename to systems/aggro/aggro_config.gd.uid diff --git a/resources/stats/aggro_config.tres b/systems/aggro/aggro_config.tres similarity index 56% rename from resources/stats/aggro_config.tres rename to systems/aggro/aggro_config.tres index c67fa68..bf7380d 100644 --- a/resources/stats/aggro_config.tres +++ b/systems/aggro/aggro_config.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="AggroConfig" format=3] -[ext_resource type="Script" path="res://resources/stats/aggro_config.gd" id="1"] +[ext_resource type="Script" path="res://systems/aggro/aggro_config.gd" id="1"] [resource] script = ExtResource("1") diff --git a/systems/aggro/aggro_system.gd b/systems/aggro/aggro_system.gd index c37e181..cb0fb62 100644 --- a/systems/aggro/aggro_system.gd +++ b/systems/aggro/aggro_system.gd @@ -1,6 +1,6 @@ extends Node -@export var config: AggroConfig = preload("res://resources/stats/aggro_config.tres") +@export var config: AggroConfig = preload("res://systems/aggro/aggro_config.tres") @onready var tracker: Node = $AggroTracker @onready var decay: Node = $AggroDecay diff --git a/systems/spawn_system.gd b/systems/spawn_system.gd index e98ae98..0e244f3 100644 --- a/systems/spawn_system.gd +++ b/systems/spawn_system.gd @@ -1,6 +1,6 @@ extends Node -const ENEMY_SCENE: PackedScene = preload("res://enemy/enemy.tscn") +const ENEMY_SCENE: PackedScene = preload("res://scenes/enemy/enemy.tscn") var portal_data: Dictionary = {}