diff --git a/rougelikeaboutmechs/.godot/editor/Machine_Globals.gd-folding-2223b8a3e0ad56f4b3e6558e53d24247.cfg b/rougelikeaboutmechs/.godot/editor/Machine_Globals.gd-folding-2223b8a3e0ad56f4b3e6558e53d24247.cfg new file mode 100644 index 0000000..e860dd4 --- /dev/null +++ b/rougelikeaboutmechs/.godot/editor/Machine_Globals.gd-folding-2223b8a3e0ad56f4b3e6558e53d24247.cfg @@ -0,0 +1,3 @@ +[folding] + +sections_unfolded=PackedStringArray() diff --git a/rougelikeaboutmechs/.godot/editor/create_recent.Resource b/rougelikeaboutmechs/.godot/editor/create_recent.Resource new file mode 100644 index 0000000..553a07f --- /dev/null +++ b/rougelikeaboutmechs/.godot/editor/create_recent.Resource @@ -0,0 +1 @@ +res://Machines/machine_resource.gd diff --git a/rougelikeaboutmechs/.godot/editor/drone_machine.gd-folding-aef00067bed2c816e06b948851a87abb.cfg b/rougelikeaboutmechs/.godot/editor/drone_machine.gd-folding-aef00067bed2c816e06b948851a87abb.cfg new file mode 100644 index 0000000..e860dd4 --- /dev/null +++ b/rougelikeaboutmechs/.godot/editor/drone_machine.gd-folding-aef00067bed2c816e06b948851a87abb.cfg @@ -0,0 +1,3 @@ +[folding] + +sections_unfolded=PackedStringArray() diff --git a/rougelikeaboutmechs/.godot/editor/drone_machine.tres-folding-51d0859a265f939d2bdd230b9b10610a.cfg b/rougelikeaboutmechs/.godot/editor/drone_machine.tres-folding-51d0859a265f939d2bdd230b9b10610a.cfg new file mode 100644 index 0000000..e860dd4 --- /dev/null +++ b/rougelikeaboutmechs/.godot/editor/drone_machine.tres-folding-51d0859a265f939d2bdd230b9b10610a.cfg @@ -0,0 +1,3 @@ +[folding] + +sections_unfolded=PackedStringArray() diff --git a/rougelikeaboutmechs/.godot/editor/editor_layout.cfg b/rougelikeaboutmechs/.godot/editor/editor_layout.cfg index ee051df..99d7b9d 100644 --- a/rougelikeaboutmechs/.godot/editor/editor_layout.cfg +++ b/rougelikeaboutmechs/.godot/editor/editor_layout.cfg @@ -24,7 +24,7 @@ display_mode=0 file_sort=0 file_list_display_mode=1 selected_paths=PackedStringArray("res://Machines/") -uncollapsed_paths=PackedStringArray("Favorites", "res://", "res://ui/screens/", "res://ui/screens/title-screen/") +uncollapsed_paths=PackedStringArray("Favorites", "res://", "res://ui/screens/", "res://ui/screens/title-screen/", "res://Machines/") [docks/History] @@ -36,7 +36,11 @@ include_global=true open_scenes=PackedStringArray("res://core/gamemanager.tscn", "res://levels/main_level.tscn", "res://ui/screens/title-screen/title_screen.tscn") current_scene="res://ui/screens/title-screen/title_screen.tscn" bottom_panel_offsets={ -"Audio": -450 +"Animation": 0, +"Audio": -450, +"Debugger": 0, +"Output": 0, +"Shader Editor": 0 } selected_default_debugger_tab_idx=0 selected_main_editor_idx=2 @@ -49,8 +53,8 @@ position=Vector2i(1986, 69) [ScriptEditor] -open_scripts=["res://Machines/machine_resource.gd"] -selected_script="res://Machines/machine_resource.gd" +open_scripts=["res://Machines/mech_machine.gd", "res://Machines/drone_machine.gd", "res://Machines/suit_machine.gd", "res://Machines/machine_abstract.gd", "res://Machines/Machine_Globals.gd"] +selected_script="res://Machines/machine_abstract.gd" open_help=[] script_split_offset=200 list_split_offset=0 diff --git a/rougelikeaboutmechs/.godot/editor/editor_script_doc_cache.res b/rougelikeaboutmechs/.godot/editor/editor_script_doc_cache.res deleted file mode 100644 index e28cd24..0000000 Binary files a/rougelikeaboutmechs/.godot/editor/editor_script_doc_cache.res and /dev/null differ diff --git a/rougelikeaboutmechs/.godot/editor/favorite_properties b/rougelikeaboutmechs/.godot/editor/favorite_properties new file mode 100644 index 0000000..e69de29 diff --git a/rougelikeaboutmechs/.godot/editor/favorites b/rougelikeaboutmechs/.godot/editor/favorites new file mode 100644 index 0000000..e69de29 diff --git a/rougelikeaboutmechs/.godot/editor/favorites.Resource b/rougelikeaboutmechs/.godot/editor/favorites.Resource new file mode 100644 index 0000000..e69de29 diff --git a/rougelikeaboutmechs/.godot/editor/filesystem_cache10 b/rougelikeaboutmechs/.godot/editor/filesystem_cache10 index 64e975d..c2d3a52 100644 --- a/rougelikeaboutmechs/.godot/editor/filesystem_cache10 +++ b/rougelikeaboutmechs/.godot/editor/filesystem_cache10 @@ -1,7 +1,6 @@ 63f7b34db8d8cdea90c76aacccf841ec -::res://::1771841836 +::res://::1771849389 icon.svg::CompressedTexture2D::7874505655436279264::1771841784::1771841837::1::::<><><>0<>0<>8c6dc71835cb1092831a2181a7cbcbe4<>res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex:: -README.md::TextFile::-1::1771841784::0::1::::<><><>0<>0<><>:: ::res://autoloads/::1771841784 debug_global.gd::GDScript::3519651180120881073::1771841784::0::1::::<>Node<><>0<>0<><>:: global.gd::GDScript::1176894133255043534::1771841784::0::1::::<>Node<><>0<>0<><>:: @@ -9,17 +8,21 @@ input_manager.gd::GDScript::8575146745769188893::1771841784::0::1::::<>Node<><>0 ::res://autoloads/settings/::1771841784 settings.gd::GDScript::1169167139487781899::1771841784::0::1::::<>Node<><>0<>0<><>:: user_defined_settings.gd::GDScript::5353537388395803011::1771841784::0::1::::UserDefinedSettings<>RefCounted<><>0<>0<><>:: -::res://core/::1771841784 +::res://core/::1771843238 default_bus_layout.tres::AudioBusLayout::6406833063048569073::1771841784::0::1::::<><><>0<>0<><>:: gamemanager.gd::GDScript::5587465302030124915::1771841784::0::1::::GameManager<>Node<><>0<>0<><>:: gamemanager.tscn::PackedScene::5236817490969193782::1771841784::0::1::::<><><>0<>0<><>::uid://cluu0cgltsenj::::res://core/gamemanager.gd<>uid://bilai15byqef2::::res://ui/screens/pause-menu/pause_menu.tscn<>uid://bhb4ckqipjvu3::::res://core/main_environment.tres<>uid://cyfvcuxi210mg::::res://levels/main_level.tscn<>uid://hheneshfv1b2::::res://ui/themes/your_theme.tres -main_environment.tres::Environment::2881571881625704016::1771841784::0::1::::<><><>0<>0<><>:: +main_environment.tres::Environment::2881571881625704016::1771843238::0::1::::<><><>0<>0<><>:: ::res://levels/::1771841784 levels_readme.md::TextFile::-1::1771841784::0::1::::<><><>0<>0<><>:: main_level.tscn::PackedScene::6468975218303303874::1771841784::0::1::::<><><>0<>0<><>:: +::res://Machines/::1771847464 +drone_machine.gd::GDScript::6346044854333652239::1771847136::0::1::::drone<>machine<><>1<>0<><>:: +machine_abstract.gd::GDScript::8886170484691869618::1771847102::0::1::::machine<>Node<><>1<>0<><>:: +Machine_Globals.gd::GDScript::2525448592130895831::1771847464::0::1::::<>RefCounted<><>0<>0<><>:: ::res://ui/::1771841784 ::res://ui/components/::1771841784 -::res://ui/components/settings-menu/::1771841784 +::res://ui/components/settings-menu/::1771841837 Revert.svg::CompressedTexture2D::4339617245426587863::1771841784::1771841837::1::::<><><>0<>0<>297dc219980ee096674b7de235f79953<>res://.godot/imported/Revert.svg-83732f7446608123e95cc2f2a2cf35c6.ctex:: settings_menu.gd::GDScript::582134994019510841::1771841784::0::1::::<>TabContainer<><>0<>0<><>:: settings_menu.tscn::PackedScene::6304534932307647668::1771841784::0::1::::<><><>0<>0<><>::uid://ij8xcd6np4vt::::res://ui/components/settings-menu/settings_menu.gd<>uid://hheneshfv1b2::::res://ui/themes/your_theme.tres @@ -48,11 +51,11 @@ pause_menu.tscn::PackedScene::2970655286472634229::1771841784::0::1::::<><><>0<> ::res://ui/screens/settings-screen/::1771841784 settings_screen.gd::GDScript::1222641183840346394::1771841784::0::1::::<>MarginContainer<><>0<>0<><>:: settings_screen.tscn::PackedScene::1731407975515257069::1771841784::0::1::::<><><>0<>0<><>::uid://hheneshfv1b2::::res://ui/themes/your_theme.tres<>uid://roiysiotwsbq::::res://ui/screens/settings-screen/settings_screen.gd<>uid://cv271fh4d2p13::::res://ui/components/settings-menu/settings_menu.tscn -::res://ui/screens/title-screen/::1771841784 +::res://ui/screens/title-screen/::1771847464 title_screen.gd::GDScript::1850264627441223832::1771841784::0::1::::<>Control<><>0<>0<><>:: -title_screen.tscn::PackedScene::7375686277331198226::1771841784::0::1::::<><><>0<>0<><>::uid://hheneshfv1b2::::res://ui/themes/your_theme.tres<>uid://1mjt83fygiua::::res://ui/screens/title-screen/title_screen.gd +title_screen.tscn::PackedScene::7375686277331198226::1771847464::0::1::::<><><>0<>0<><>::uid://hheneshfv1b2::::res://ui/themes/your_theme.tres<>uid://1mjt83fygiua::::res://ui/screens/title-screen/title_screen.gd ::res://ui/screens/win-screen/::1771841784 win_screen.gd::GDScript::7620355351831359998::1771841784::0::1::::<>Control<><>0<>0<><>:: win_screen.tscn::PackedScene::477294899242648607::1771841784::0::1::::<><><>0<>0<><>::uid://dgtme0a6lym5c::::res://ui/screens/win-screen/win_screen.gd -::res://ui/themes/::1771841784 -your_theme.tres::Theme::506038871261939837::1771841784::0::1::::<><><>0<>0<><>::uid://b23e4kqj4o6dv::::res://ui/components/settings-menu/Revert.svg +::res://ui/themes/::1771843238 +your_theme.tres::Theme::506038871261939837::1771843238::0::1::::<><><>0<>0<><>::uid://b23e4kqj4o6dv::::res://ui/components/settings-menu/Revert.svg diff --git a/rougelikeaboutmechs/.godot/editor/filesystem_update4 b/rougelikeaboutmechs/.godot/editor/filesystem_update4 index fc80a6e..7be9e1f 100644 --- a/rougelikeaboutmechs/.godot/editor/filesystem_update4 +++ b/rougelikeaboutmechs/.godot/editor/filesystem_update4 @@ -1,4 +1,8 @@ res://ui/screens/title-screen/title_screen.tscn res://ui/themes/your_theme.tres res://core/main_environment.tres -res://Machines/machine_resource.gd +res://Machines/Machine_Globals.gd +res://Machines/drone_machine.gd +res://Machines/machine_abstract.gd +res://Machines/suit_machine.gd +res://Machines/mech_machine.gd diff --git a/rougelikeaboutmechs/.godot/editor/machine_abstract.gd-folding-9982b421a8d0138a723b591bd643dd22.cfg b/rougelikeaboutmechs/.godot/editor/machine_abstract.gd-folding-9982b421a8d0138a723b591bd643dd22.cfg new file mode 100644 index 0000000..e860dd4 --- /dev/null +++ b/rougelikeaboutmechs/.godot/editor/machine_abstract.gd-folding-9982b421a8d0138a723b591bd643dd22.cfg @@ -0,0 +1,3 @@ +[folding] + +sections_unfolded=PackedStringArray() diff --git a/rougelikeaboutmechs/.godot/editor/mech_machine.gd-folding-5cf347423ad41678269d12de5a73532f.cfg b/rougelikeaboutmechs/.godot/editor/mech_machine.gd-folding-5cf347423ad41678269d12de5a73532f.cfg new file mode 100644 index 0000000..e860dd4 --- /dev/null +++ b/rougelikeaboutmechs/.godot/editor/mech_machine.gd-folding-5cf347423ad41678269d12de5a73532f.cfg @@ -0,0 +1,3 @@ +[folding] + +sections_unfolded=PackedStringArray() diff --git a/rougelikeaboutmechs/.godot/editor/project_metadata.cfg b/rougelikeaboutmechs/.godot/editor/project_metadata.cfg index 2e61486..eaa0bbe 100644 --- a/rougelikeaboutmechs/.godot/editor/project_metadata.cfg +++ b/rougelikeaboutmechs/.godot/editor/project_metadata.cfg @@ -9,8 +9,17 @@ executable_path="/home/emily/Desktop/Godot_v4.5.1-stable_mono_linux_x86_64/Godot [recent_files] scenes=["res://ui/screens/title-screen/title_screen.tscn", "res://levels/main_level.tscn", "res://core/gamemanager.tscn"] -scripts=["res://Machines/machine_resource.gd"] +scripts=["res://Machines/mech_machine.gd", "res://Machines/suit_machine.gd", "res://Machines/Machine_Globals.gd", "res://Machines/drone_machine.gd", "res://Machines/machine_resource.gd"] [script_setup] last_selected_language="GDScript" + +[dialog_bounds] + +create_new_node=Rect2(2750, 370, 900, 700) +project_settings=Rect2(3004, 350, 1200, 700) + +[quick_open_dialog] + +last_mode=1 diff --git a/rougelikeaboutmechs/.godot/editor/recent_dirs b/rougelikeaboutmechs/.godot/editor/recent_dirs new file mode 100644 index 0000000..c939c39 --- /dev/null +++ b/rougelikeaboutmechs/.godot/editor/recent_dirs @@ -0,0 +1 @@ +res://Machines/ diff --git a/rougelikeaboutmechs/.godot/editor/script_editor_cache.cfg b/rougelikeaboutmechs/.godot/editor/script_editor_cache.cfg index 6df5176..3c6ce10 100644 --- a/rougelikeaboutmechs/.godot/editor/script_editor_cache.cfg +++ b/rougelikeaboutmechs/.godot/editor/script_editor_cache.cfg @@ -1,4 +1,4 @@ -[res://Machines/machine_resource.gd] +[res://Machines/drone_machine.gd] state={ "bookmarks": PackedInt32Array(), @@ -6,12 +6,64 @@ state={ "column": 0, "folded_lines": PackedInt32Array(), "h_scroll_position": 0, -"row": 0, +"row": 3, "scroll_position": 0.0, -"selection": true, -"selection_from_column": 0, -"selection_from_line": 0, -"selection_to_column": 0, -"selection_to_line": 10, +"selection": false, +"syntax_highlighter": "GDScript" +} + +[res://Machines/machine_abstract.gd] + +state={ +"bookmarks": PackedInt32Array(), +"breakpoints": PackedInt32Array(), +"column": 17, +"folded_lines": PackedInt32Array(), +"h_scroll_position": 0, +"row": 25, +"scroll_position": 1.6000000000000014, +"selection": false, +"syntax_highlighter": "GDScript" +} + +[res://Machines/Machine_Globals.gd] + +state={ +"bookmarks": PackedInt32Array(), +"breakpoints": PackedInt32Array(), +"column": 6, +"folded_lines": PackedInt32Array(), +"h_scroll_position": 0, +"row": 26, +"scroll_position": 0.0, +"selection": false, +"syntax_highlighter": "GDScript" +} + +[res://Machines/suit_machine.gd] + +state={ +"bookmarks": PackedInt32Array(), +"breakpoints": PackedInt32Array(), +"column": 0, +"folded_lines": PackedInt32Array(), +"h_scroll_position": 0, +"row": 9, +"scroll_position": 0.0, +"selection": false, +"syntax_highlighter": "GDScript" +} + +[res://Machines/mech_machine.gd] + +state={ +"bookmarks": PackedInt32Array(), +"breakpoints": PackedInt32Array(), +"column": 22, +"folded_lines": PackedInt32Array(), +"h_scroll_position": 0, +"row": 16, +"scroll_position": 0.0, +"selection": false, "syntax_highlighter": "GDScript" } diff --git a/rougelikeaboutmechs/.godot/editor/suit_machine.gd-folding-870d5282ae5629833661132a5daa2aae.cfg b/rougelikeaboutmechs/.godot/editor/suit_machine.gd-folding-870d5282ae5629833661132a5daa2aae.cfg new file mode 100644 index 0000000..e860dd4 --- /dev/null +++ b/rougelikeaboutmechs/.godot/editor/suit_machine.gd-folding-870d5282ae5629833661132a5daa2aae.cfg @@ -0,0 +1,3 @@ +[folding] + +sections_unfolded=PackedStringArray() diff --git a/rougelikeaboutmechs/.godot/global_script_class_cache.cfg b/rougelikeaboutmechs/.godot/global_script_class_cache.cfg index 71a3d3c..195e5f0 100644 --- a/rougelikeaboutmechs/.godot/global_script_class_cache.cfg +++ b/rougelikeaboutmechs/.godot/global_script_class_cache.cfg @@ -1,12 +1,4 @@ list=[{ -"base": &"Resource", -"class": &"machine", -"icon": "", -"is_abstract": false, -"is_tool": false, -"language": &"GDScript", -"path": "res://Machines/machine_resource.gd" -}, { "base": &"Button", "class": &"LevelButton", "icon": "", @@ -46,4 +38,36 @@ list=[{ "is_tool": false, "language": &"GDScript", "path": "res://autoloads/settings/user_defined_settings.gd" +}, { +"base": &"Machine", +"class": &"Suit", +"icon": "", +"is_abstract": true, +"is_tool": false, +"language": &"GDScript", +"path": "res://Machines/suit_machine.gd" +}, { +"base": &"Node", +"class": &"Machine", +"icon": "", +"is_abstract": true, +"is_tool": false, +"language": &"GDScript", +"path": "res://Machines/machine_abstract.gd" +}, { +"base": &"Machine", +"class": &"Drone", +"icon": "", +"is_abstract": true, +"is_tool": false, +"language": &"GDScript", +"path": "res://Machines/drone_machine.gd" +}, { +"base": &"Machine", +"class": &"Mech", +"icon": "", +"is_abstract": true, +"is_tool": false, +"language": &"GDScript", +"path": "res://Machines/mech_machine.gd" }] diff --git a/rougelikeaboutmechs/.godot/uid_cache.bin b/rougelikeaboutmechs/.godot/uid_cache.bin index 5f480d4..c88daca 100644 Binary files a/rougelikeaboutmechs/.godot/uid_cache.bin and b/rougelikeaboutmechs/.godot/uid_cache.bin differ diff --git a/rougelikeaboutmechs/Machines/Machine_Globals.gd b/rougelikeaboutmechs/Machines/Machine_Globals.gd new file mode 100644 index 0000000..88c8f34 --- /dev/null +++ b/rougelikeaboutmechs/Machines/Machine_Globals.gd @@ -0,0 +1,42 @@ +enum drone_body_slots{ + BRAIN, + LEGS, + BODY, + FUELTANK, + HEAD +} + +enum suit_body_slots{ + ARMS, + LEGS, + BODY, + HELMET, + FUELTANK, + BACKPACK +} + +enum mech_body_slots{ + COCKPIT, + LEFT_ARM, + RIGHT_ARM, + RIGHT_LEG, + LEFT_LEG, + CHEST, + BACK, + FUELTANK, + TRUNK +} + +enum regular_states{ + IDLING, + WALKING, + DASHING, + INTERACTING +} + +enum irregular_states{ + INVULNERABLE, + OVERCLOCKED, + STUNNED, + SNARRED +} diff --git a/rougelikeaboutmechs/Machines/Machine_Globals.gd.uid b/rougelikeaboutmechs/Machines/Machine_Globals.gd.uid new file mode 100644 index 0000000..17bb28c --- /dev/null +++ b/rougelikeaboutmechs/Machines/Machine_Globals.gd.uid @@ -0,0 +1 @@ +uid://bb8l1fmenh8j0 diff --git a/rougelikeaboutmechs/Machines/drone_machine.gd b/rougelikeaboutmechs/Machines/drone_machine.gd new file mode 100644 index 0000000..cfcd794 --- /dev/null +++ b/rougelikeaboutmechs/Machines/drone_machine.gd @@ -0,0 +1,15 @@ +@abstract +extends Machine +class_name Drone + +@export_category("Dash") +@export var dodge_cd : float + +func _ready() -> void: + add_on_slots = 1 + for a in MachineGlobals.drone_body_slots : + machine_upgrades.set(a,null) + +func class_ability() -> float: + #do dash + return dodge_cd diff --git a/rougelikeaboutmechs/Machines/drone_machine.gd.uid b/rougelikeaboutmechs/Machines/drone_machine.gd.uid new file mode 100644 index 0000000..76807bf --- /dev/null +++ b/rougelikeaboutmechs/Machines/drone_machine.gd.uid @@ -0,0 +1 @@ +uid://cwocow55yssst diff --git a/rougelikeaboutmechs/Machines/machine_abstract.gd b/rougelikeaboutmechs/Machines/machine_abstract.gd new file mode 100644 index 0000000..08bc310 --- /dev/null +++ b/rougelikeaboutmechs/Machines/machine_abstract.gd @@ -0,0 +1,47 @@ +@abstract +class_name Machine +extends Node + +@export var model_name : StringName +@export var carry_capacity : float +@export var hit_points : float +@export var fuel_tank_capacity : float +@export var movement_speed : float +var states : Array +var add_on_slots : int +var machine_upgrades : Dictionary +var ability_timer : Timer +var action_timer : Timer +var self_body : CharacterBody2D +var current_fuel_in_tank : float + + +@abstract func primary_action() -> float +@abstract func secondary_action() -> float + +@abstract func model_ability() -> float +@abstract func class_ability() -> float + +func _physics_process(delta: float) -> void: + _movement(delta) + _ability_process(delta) + _action_process(delta) + self_body.move_and_slide() + +func _movement(delta: float) -> void : + var input_direction = Input.get_vector("move_left", "move_right", "move_up", "move_down") + self.velocity = input_direction * movement_speed + +func _action_process(delta:float) -> void : + if action_timer.time_left > 0 : + if Input.is_action_just_pressed("primary_action") : + action_timer.start(primary_action()) + elif Input.is_action_just_pressed("secondary_action") : + action_timer.start(secondary_action()) + +func _ability_process(delta:float) -> void : + if ability_timer.time_left > 0 : + if Input.is_action_just_pressed("class_ability") : + ability_timer.start(class_ability()) + elif Input.is_action_just_pressed("model_ability") : + ability_timer.start(model_ability()) diff --git a/rougelikeaboutmechs/Machines/machine_resource.gd.uid b/rougelikeaboutmechs/Machines/machine_abstract.gd.uid similarity index 100% rename from rougelikeaboutmechs/Machines/machine_resource.gd.uid rename to rougelikeaboutmechs/Machines/machine_abstract.gd.uid diff --git a/rougelikeaboutmechs/Machines/machine_resource.gd b/rougelikeaboutmechs/Machines/machine_resource.gd deleted file mode 100644 index e51f6a8..0000000 --- a/rougelikeaboutmechs/Machines/machine_resource.gd +++ /dev/null @@ -1,10 +0,0 @@ -extends Resource -class_name machine - -@export var modell_name : StringName -@export var carry_capacity : float -@export var hit_points : float -@export var fuel_tank_capacity : float -@export var weapon_slots : Array -@export var machine_upgrades : Array -var current_fuel_in_tank : float diff --git a/rougelikeaboutmechs/Machines/mech_machine.gd b/rougelikeaboutmechs/Machines/mech_machine.gd new file mode 100644 index 0000000..429381c --- /dev/null +++ b/rougelikeaboutmechs/Machines/mech_machine.gd @@ -0,0 +1,17 @@ +@abstract +extends Machine +class_name Mech + +@export_category("Perry") +@export var perry_cooldown : float +@export var perry_damage_reduction : float + + +func _ready() -> void: + add_on_slots = 1 + for a in MachineGlobals.mech_body_slots : + machine_upgrades.set(a,null) + +func class_ability() -> float: + #do perry + return perry_cooldown diff --git a/rougelikeaboutmechs/Machines/mech_machine.gd.uid b/rougelikeaboutmechs/Machines/mech_machine.gd.uid new file mode 100644 index 0000000..9a99c69 --- /dev/null +++ b/rougelikeaboutmechs/Machines/mech_machine.gd.uid @@ -0,0 +1 @@ +uid://db7ysbxl5n433 diff --git a/rougelikeaboutmechs/Machines/suit_machine.gd b/rougelikeaboutmechs/Machines/suit_machine.gd new file mode 100644 index 0000000..3f62c43 --- /dev/null +++ b/rougelikeaboutmechs/Machines/suit_machine.gd @@ -0,0 +1,18 @@ +@abstract +extends Machine +class_name Suit + +@export_category("Overclock") +@export_range(1,5,0.01) var overclock_fuel_mult : float +@export var overclock_damage_mult : float +@export var overclock_speed_mult : float +@export var overclock_vulnerability_mult : float + +func _ready() -> void: + add_on_slots = 2 + for a in MachineGlobals.suit_body_slots : + machine_upgrades.set(a,null) + +func class_ability() -> float: + #enter overclocked mode + return 0 diff --git a/rougelikeaboutmechs/Machines/suit_machine.gd.uid b/rougelikeaboutmechs/Machines/suit_machine.gd.uid new file mode 100644 index 0000000..497559c --- /dev/null +++ b/rougelikeaboutmechs/Machines/suit_machine.gd.uid @@ -0,0 +1 @@ +uid://dundnjnepv3e7 diff --git a/rougelikeaboutmechs/project.godot b/rougelikeaboutmechs/project.godot index 7a82565..605750f 100644 --- a/rougelikeaboutmechs/project.godot +++ b/rougelikeaboutmechs/project.godot @@ -10,7 +10,7 @@ config_version=5 [application] -config/name="Godot Game Template" +config/name="rougelikeaboutmechs" run/main_scene="res://core/gamemanager.tscn" config/features=PackedStringArray("4.6", "GL Compatibility") config/icon="res://icon.svg" @@ -25,6 +25,7 @@ InputManager="*res://autoloads/input_manager.gd" DebugGlobal="*res://autoloads/debug_global.gd" Global="*res://autoloads/global.gd" Settings="*res://autoloads/settings/settings.gd" +MachineGlobals="*uid://bb8l1fmenh8j0" [display] @@ -71,6 +72,31 @@ move_right={ "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":68,"key_label":0,"unicode":100,"location":0,"echo":false,"script":null) ] } +class_ability={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":32,"key_label":0,"unicode":32,"location":0,"echo":false,"script":null) +] +} +model_ability={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194325,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) +] +} +primary_action={ +"deadzone": 0.5, +"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":1,"canceled":false,"pressed":false,"double_click":false,"script":null) +] +} +secondary_action={ +"deadzone": 0.5, +"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":2,"canceled":false,"pressed":false,"double_click":false,"script":null) +] +} +add_on_ability_1={ +"deadzone": 0.2, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":49,"key_label":0,"unicode":49,"location":0,"echo":false,"script":null) +] +} [rendering]