Add enemy creation and viewer functionality with filtering options

This commit is contained in:
MaddoScientisto 2026-02-26 21:58:48 +01:00
commit 18683c0680
32 changed files with 1009 additions and 411 deletions

View file

@ -12,28 +12,35 @@ const SETTINGS_PATH = "user://weapon_creator_settings.tres"
@export var items_dir: String = "res://Resources/Items/"
@export var bullets_dir: String = "res://Resources/Bullets/"
@export var bullets_3d_dir: String = "res://Resources/Bullets/3D/"
@export var enemies_dir: String = "res://Resources/Enemies/"
@export var items_database_path: String = "res://Resources/ItemsDatabase.tres"
# Default bullet paths
@export var default_bullet_2d: String = "res://Resources/Bullets/simple_ice_bullet.tres"
@export var default_bullet_3d: String = "res://Resources/Bullets/3D/icicle_repeater_bullets_3D.tres"
# Default enemy paths
@export var default_enemy_prefab_3d: String = "res://Scenes/Actors/Generic_Enemy_FSM_3D.tscn"
# Dialog sizes (saved automatically)
@export var weapon_dialog_size: Vector2i = Vector2i(750, 950)
@export var bullet_dialog_size: Vector2i = Vector2i(750, 850)
@export var item_dialog_size: Vector2i = Vector2i(750, 850)
@export var enemy_dialog_size: Vector2i = Vector2i(750, 950)
@export var settings_dialog_size: Vector2i = Vector2i(600, 600)
# Dialog positions (saved automatically)
@export var weapon_dialog_position: Vector2i = Vector2i.ZERO
@export var bullet_dialog_position: Vector2i = Vector2i.ZERO
@export var item_dialog_position: Vector2i = Vector2i.ZERO
@export var enemy_dialog_position: Vector2i = Vector2i.ZERO
@export var settings_dialog_position: Vector2i = Vector2i.ZERO
# Viewer filters (saved automatically)
@export var weapon_viewer_filter: String = ""
@export var bullet_viewer_filter: String = ""
@export var item_viewer_filter: String = ""
@export var enemy_viewer_filter: String = ""
static func load_settings():
if ResourceLoader.exists(SETTINGS_PATH):
@ -53,20 +60,25 @@ func reset_to_defaults() -> void:
items_dir = "res://Resources/Items/"
bullets_dir = "res://Resources/Bullets/"
bullets_3d_dir = "res://Resources/Bullets/3D/"
enemies_dir = "res://Resources/Enemies/"
items_database_path = "res://Resources/ItemsDatabase.tres"
default_bullet_2d = "res://Resources/Bullets/simple_ice_bullet.tres"
default_bullet_3d = "res://Resources/Bullets/3D/icicle_repeater_bullets_3D.tres"
default_enemy_prefab_3d = "res://Scenes/Actors/Generic_Enemy_FSM_3D.tscn"
weapon_dialog_size = Vector2i(750, 950)
bullet_dialog_size = Vector2i(750, 850)
item_dialog_size = Vector2i(750, 850)
enemy_dialog_size = Vector2i(750, 950)
settings_dialog_size = Vector2i(600, 600)
weapon_dialog_position = Vector2i.ZERO
bullet_dialog_position = Vector2i.ZERO
item_dialog_position = Vector2i.ZERO
enemy_dialog_position = Vector2i.ZERO
settings_dialog_position = Vector2i.ZERO
weapon_viewer_filter = ""
bullet_viewer_filter = ""
item_viewer_filter = ""
enemy_viewer_filter = ""
save_settings()