diff --git a/credits/credit_slot.tscn b/credits/credit_slot.tscn index 61e06fd..634b8bf 100644 --- a/credits/credit_slot.tscn +++ b/credits/credit_slot.tscn @@ -1,4 +1,4 @@ -[gd_scene format=3 uid="uid://bicj8f61mhigk"] +[gd_scene load_steps=5 format=3 uid="uid://bicj8f61mhigk"] [ext_resource type="StyleBox" uid="uid://hgjmkwj0dbqr" path="res://inv_system/item_panels/default.tres" id="1_lpte7"] [ext_resource type="Script" uid="uid://kvxou0qjrhmc" path="res://credits/credit_slot.gd" id="2_katch"] @@ -8,16 +8,14 @@ outline_size = 5 outline_color = Color(0, 0, 0, 1) -[node name="CreditSlot" type="Panel" unique_id=1909031053 node_paths=PackedStringArray("icon", "label", "botnet_icon", "sell_icon")] +[node name="CreditSlot" type="Panel" node_paths=PackedStringArray("icon", "label")] custom_minimum_size = Vector2(50, 50) theme_override_styles/panel = ExtResource("1_lpte7") script = ExtResource("2_katch") icon = NodePath("Icon") label = NodePath("Icon/Label") -botnet_icon = NodePath("dummy") -sell_icon = NodePath("dummy") -[node name="Icon" type="TextureRect" parent="." unique_id=1356127605] +[node name="Icon" type="TextureRect" parent="."] layout_mode = 1 anchors_preset = -1 anchor_left = 0.1 @@ -30,7 +28,7 @@ grow_vertical = 2 texture = ExtResource("3_0u6ut") expand_mode = 3 -[node name="Label" type="Label" parent="Icon" unique_id=1188457195] +[node name="Label" type="Label" parent="Icon"] layout_mode = 1 anchors_preset = 7 anchor_left = 0.5 @@ -47,11 +45,6 @@ text = "meow" label_settings = SubResource("LabelSettings_ab1u2") horizontal_alignment = 2 -[node name="dummy" type="Control" parent="." unique_id=264284925] -anchors_preset = 0 -offset_right = 40.0 -offset_bottom = 40.0 - [connection signal="gui_input" from="." to="." method="_on_gui_input"] [connection signal="mouse_entered" from="." to="." method="_on_mouse_entered"] [connection signal="mouse_exited" from="." to="." method="_on_mouse_exited"] diff --git a/inv_system/player_inventory.tscn b/inv_system/player_inventory.tscn index f507f7c..8c54898 100644 --- a/inv_system/player_inventory.tscn +++ b/inv_system/player_inventory.tscn @@ -125,9 +125,9 @@ anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 offset_left = 241.0 -offset_top = 154.0 +offset_top = 111.0 offset_right = -635.0 -offset_bottom = -136.0 +offset_bottom = -126.0 grow_horizontal = 2 grow_vertical = 2 script = ExtResource("2_hk4hx") @@ -249,6 +249,21 @@ layout_mode = 2 [node name="ItemSlot30" parent="Inventory/MarginContainer/VBoxContainer/ScrollContainer/GridContainer" instance=ExtResource("3_8qgtd")] layout_mode = 2 +[node name="ItemSlot31" parent="Inventory/MarginContainer/VBoxContainer/ScrollContainer/GridContainer" instance=ExtResource("3_8qgtd")] +layout_mode = 2 + +[node name="ItemSlot32" parent="Inventory/MarginContainer/VBoxContainer/ScrollContainer/GridContainer" instance=ExtResource("3_8qgtd")] +layout_mode = 2 + +[node name="ItemSlot33" parent="Inventory/MarginContainer/VBoxContainer/ScrollContainer/GridContainer" instance=ExtResource("3_8qgtd")] +layout_mode = 2 + +[node name="ItemSlot34" parent="Inventory/MarginContainer/VBoxContainer/ScrollContainer/GridContainer" instance=ExtResource("3_8qgtd")] +layout_mode = 2 + +[node name="ItemSlot35" parent="Inventory/MarginContainer/VBoxContainer/ScrollContainer/GridContainer" instance=ExtResource("3_8qgtd")] +layout_mode = 2 + [node name="TabContainer" type="TabContainer" parent="."] layout_mode = 0 offset_left = 1.0 diff --git a/project.godot b/project.godot index d94800e..26ef3c5 100644 --- a/project.godot +++ b/project.godot @@ -8,15 +8,11 @@ config_version=5 -[animation] - -compatibility/default_parent_skeleton_in_mesh_instance_3d=true - [application] config/name="Rust Hacker" run/main_scene="uid://dxr1ergmn3ij7" -config/features=PackedStringArray("4.6", "GL Compatibility") +config/features=PackedStringArray("4.5", "GL Compatibility") config/icon="uid://csov3hvc14ki4" [autoload] @@ -46,7 +42,6 @@ movie_writer/fps=30 quick_move={ "deadzone": 0.2, "events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":true,"ctrl_pressed":false,"meta_pressed":false,"button_mask":1,"position":Vector2(218, 14),"global_position":Vector2(226, 57),"factor":1.0,"button_index":1,"canceled":false,"pressed":true,"double_click":false,"script":null) -, 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":2,"position":Vector2(115, 25),"global_position":Vector2(123, 68),"factor":1.0,"button_index":2,"canceled":false,"pressed":true,"double_click":false,"script":null) ] } diff --git a/scenes/manager/location_manager.gd b/scenes/manager/location_manager.gd index 70da804..13cce5c 100644 --- a/scenes/manager/location_manager.gd +++ b/scenes/manager/location_manager.gd @@ -45,8 +45,8 @@ func _process(delta: float) -> void: func goto_ewaste(): selection_indicator.reparent(ewaste_button) selection_indicator.position = Vector2(0,0) - #if current_location == Location.ewaste: - #return + if current_location == Location.ewaste: + return current_location = Location.ewaste get_tree().change_scene_to_file("res://scenes/ewaste.tscn") @@ -61,7 +61,7 @@ func goto_workshop(): func goto_room(): selection_indicator.reparent(room_button) selection_indicator.position = Vector2(0,0) - #if current_location == Location.room: - #return + if current_location == Location.room: + return current_location = Location.room get_tree().change_scene_to_file("res://scenes/room.tscn") diff --git a/scenes/menu.tscn b/scenes/menu.tscn index 97e397d..46ac23e 100644 --- a/scenes/menu.tscn +++ b/scenes/menu.tscn @@ -1,10 +1,10 @@ -[gd_scene format=3 uid="uid://dxr1ergmn3ij7"] +[gd_scene load_steps=4 format=3 uid="uid://dxr1ergmn3ij7"] [ext_resource type="Script" uid="uid://4c4k3o0jnmdk" path="res://scenes/menu.gd" id="1_vjb58"] [ext_resource type="Texture2D" uid="uid://b1rs6epjar6mj" path="res://assets/menu.png" id="2_con2f"] [ext_resource type="Texture2D" uid="uid://bx7x5ufcp3nmt" path="res://assets/logo/game_name.png" id="3_con2f"] -[node name="Menu" type="Control" unique_id=946585711] +[node name="Menu" type="Control"] layout_mode = 3 anchors_preset = 15 anchor_right = 1.0 @@ -14,7 +14,7 @@ grow_vertical = 2 mouse_filter = 2 script = ExtResource("1_vjb58") -[node name="TextureRect" type="TextureRect" parent="." unique_id=1195571599] +[node name="TextureRect" type="TextureRect" parent="."] z_index = -3 layout_mode = 1 anchors_preset = 15 @@ -26,7 +26,7 @@ mouse_filter = 2 texture = ExtResource("2_con2f") expand_mode = 3 -[node name="MarginContainer" type="MarginContainer" parent="." unique_id=1511744221] +[node name="MarginContainer" type="MarginContainer" parent="."] layout_mode = 1 anchors_preset = 15 anchor_right = 1.0 @@ -39,65 +39,65 @@ theme_override_constants/margin_top = 100 theme_override_constants/margin_right = 250 theme_override_constants/margin_bottom = 100 -[node name="PanelContainer" type="PanelContainer" parent="MarginContainer" unique_id=975250671] +[node name="PanelContainer" type="PanelContainer" parent="MarginContainer"] layout_mode = 2 -[node name="MarginContainer" type="MarginContainer" parent="MarginContainer/PanelContainer" unique_id=855132638] +[node name="MarginContainer" type="MarginContainer" parent="MarginContainer/PanelContainer"] layout_mode = 2 theme_override_constants/margin_left = 5 theme_override_constants/margin_top = 5 theme_override_constants/margin_right = 5 theme_override_constants/margin_bottom = 5 -[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer/PanelContainer/MarginContainer" unique_id=624679420] +[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer/PanelContainer/MarginContainer"] layout_mode = 2 alignment = 1 -[node name="TextureRect" type="TextureRect" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=43948588] +[node name="TextureRect" type="TextureRect" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer"] custom_minimum_size = Vector2(0, 189.09) layout_mode = 2 texture = ExtResource("3_con2f") expand_mode = 1 stretch_mode = 5 -[node name="RichTextLabel" type="RichTextLabel" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=1902968766] +[node name="RichTextLabel" type="RichTextLabel" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer"] visible = false layout_mode = 2 bbcode_enabled = true text = "[center][font_size=50][wave](title pending)" fit_content = true -[node name="RichTextLabel2" type="RichTextLabel" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=944308179] +[node name="RichTextLabel2" type="RichTextLabel" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer"] layout_mode = 2 bbcode_enabled = true text = "[wave][color=orchid][center]Made by Tabby" fit_content = true -[node name="Label" type="Label" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=267810087] +[node name="Label" type="Label" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer"] layout_mode = 2 text = "Your goal is to build a botnet of devices so you can take over the internet with catgirls. You have 7 days to loot the ewaste before building management realises what you're up to and you have to escape" horizontal_alignment = 1 autowrap_mode = 2 -[node name="HSeparator" type="HSeparator" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=1578980899] +[node name="HSeparator" type="HSeparator" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer"] layout_mode = 2 -[node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=1836411650] +[node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer"] layout_mode = 2 -[node name="PlayButton" type="Button" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer" unique_id=457532667] +[node name="PlayButton" type="Button" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer"] modulate = Color(0, 1, 0, 1) layout_mode = 2 size_flags_horizontal = 3 text = "Play!" -[node name="CreditsButton" type="Button" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer" unique_id=877999290] +[node name="CreditsButton" type="Button" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer"] modulate = Color(1, 0.44313726, 1, 1) layout_mode = 2 size_flags_horizontal = 3 text = "View Credits" -[node name="RichTextLabel3" type="RichTextLabel" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=194483359] +[node name="RichTextLabel3" type="RichTextLabel" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer"] visible = false layout_mode = 2 bbcode_enabled = true @@ -108,28 +108,14 @@ Octodemy's Inventory Tutorial Item Icons: (todo)" fit_content = true -[node name="HSeparator2" type="HSeparator" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=1398039320] +[node name="HSeparator2" type="HSeparator" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer"] visible = false layout_mode = 2 -[node name="Label2" type="Label" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=418071822] +[node name="Label2" type="Label" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer"] layout_mode = 2 text = "tip: you can quickly move items between inventories with Shift+Click" horizontal_alignment = 1 -[node name="Label" type="Label" parent="." unique_id=1948987031] -layout_mode = 1 -anchors_preset = 3 -anchor_left = 1.0 -anchor_top = 1.0 -anchor_right = 1.0 -anchor_bottom = 1.0 -offset_left = -40.0 -offset_top = -23.0 -grow_horizontal = 0 -grow_vertical = 0 -text = "v1.1" -horizontal_alignment = 2 - [connection signal="pressed" from="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/PlayButton" to="." method="_on_play_button_pressed"] [connection signal="pressed" from="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/CreditsButton" to="." method="_on_credits_button_pressed"] diff --git a/scenes/room.tscn b/scenes/room.tscn index 018d685..d88c49a 100644 --- a/scenes/room.tscn +++ b/scenes/room.tscn @@ -99,6 +99,7 @@ text = "Cannot buy: Inventory Full!" horizontal_alignment = 1 [node name="BotnetPanel" parent="." instance=ExtResource("5_jxe34")] +visible = false layout_mode = 0 offset_left = 523.0 offset_top = 434.0 diff --git a/time_system/clock.gd b/time_system/clock.gd index b52201f..67758fb 100644 --- a/time_system/clock.gd +++ b/time_system/clock.gd @@ -18,6 +18,8 @@ var ending_text : String var power_vis : float = 0 +@export var accumlate_labebl :Label + # Called when the node enters the scene tree for the first time. func _ready() -> void: pass # Replace with function body. @@ -29,7 +31,7 @@ func _process(delta: float) -> void: timer_text.text = str(time_left) days_text.text = str(days_left) next_button.disabled = time_left > 10 - if days_left == 0: + if days_left <= 0: next_button.text = "End Game" else: next_button.text = "Proceed to next day ->" @@ -48,10 +50,15 @@ func use_time(time : float): func _on_next_day_pressed() -> void: + if days_left >= 1: + accumulate_botnet() days_left -= 1 time_left = 200 new_day.emit() + elif days_left == 0: + accumulate_botnet() + days_left = -1 else: get_tree().change_scene_to_file("res://scenes/ending.tscn") PlayerInventory.hide() @@ -59,7 +66,18 @@ func _on_next_day_pressed() -> void: Locations.hide() pass +func accumulate_botnet(): + for slot in PlayerInventory.inventory_panel.slots: + if slot.item: + PlayerInventory.botnet_servers += slot.item.botnet_power + func update_power(): + var active_power : int = 0 + for slot in PlayerInventory.inventory_panel.slots: + if slot.item: + active_power += slot.item.botnet_power + accumlate_labebl.text = "+" + str(active_power) + " next day" + var current_level : HackLevel var next_level : HackLevel for x in range(levels.size()): diff --git a/time_system/clock.tscn b/time_system/clock.tscn index 0f2b6c9..e823ad9 100644 --- a/time_system/clock.tscn +++ b/time_system/clock.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=15 format=3 uid="uid://dpa3yvdrddtsh"] +[gd_scene load_steps=16 format=3 uid="uid://dpa3yvdrddtsh"] [ext_resource type="Texture2D" uid="uid://cvsibrbtuqfww" path="res://assets/ready_time.png" id="1_chnjs"] [ext_resource type="Script" uid="uid://c4y7w10si2q2p" path="res://time_system/clock.gd" id="1_m6rn1"] @@ -18,7 +18,7 @@ metadata/_custom_type_script = "uid://md6s5hsjvnxc" [sub_resource type="Resource" id="Resource_m763i"] script = ExtResource("2_hjq5n") name = "UTS" -power = 10 +power = 40 color = Color(0.36701235, 0.9999997, 0.3376366, 1) ending_text = "You hack into the UTS administration servers and completely cancel the OSI saving thousands of classes, hundres of staff jobs and many key degrees!" metadata/_custom_type_script = "uid://md6s5hsjvnxc" @@ -26,7 +26,7 @@ metadata/_custom_type_script = "uid://md6s5hsjvnxc" [sub_resource type="Resource" id="Resource_nhhwl"] script = ExtResource("2_hjq5n") name = "Microsoft" -power = 20 +power = 90 color = Color(0.36862746, 1, 1, 1) ending_text = "Your sizable botnet quickly cuts through the defenses of the Microsoft servers eliminating Copilot and stealing their source code so you can run any Windows program on linux " metadata/_custom_type_script = "uid://md6s5hsjvnxc" @@ -34,7 +34,7 @@ metadata/_custom_type_script = "uid://md6s5hsjvnxc" [sub_resource type="Resource" id="Resource_023ps"] script = ExtResource("2_hjq5n") name = "X" -power = 40 +power = 150 color = Color(0.70184636, 0.4491853, 1, 1) ending_text = "You point your powerful botnet towards X (the everything app) and eviscerate the platform along with grok and elon musk, reducing them both to ashes" metadata/_custom_type_script = "uid://md6s5hsjvnxc" @@ -42,7 +42,7 @@ metadata/_custom_type_script = "uid://md6s5hsjvnxc" [sub_resource type="Resource" id="Resource_cb2q0"] script = ExtResource("2_hjq5n") name = "US Goverment" -power = 65 +power = 220 color = Color(0.96814066, 0.8503548, 0, 1) ending_text = "With your mighty botnet you break into the US goverment servers and release every secret file aswell as reverse every transphobic, homophobic or otherwise bad law. Finally you turn all the White House automated defenses against Trump" metadata/_custom_type_script = "uid://md6s5hsjvnxc" @@ -50,7 +50,11 @@ metadata/_custom_type_script = "uid://md6s5hsjvnxc" [sub_resource type="LabelSettings" id="LabelSettings_r3ygl"] font_size = 32 -[node name="Clock" type="Control" node_paths=PackedStringArray("bar", "timer_text", "days_text", "next_button", "current_target_label", "power_bar", "next_target_label")] +[sub_resource type="LabelSettings" id="LabelSettings_hjq5n"] +outline_size = 6 +outline_color = Color(0, 0, 0, 1) + +[node name="Clock" type="Control" node_paths=PackedStringArray("bar", "timer_text", "days_text", "next_button", "current_target_label", "power_bar", "next_target_label", "accumlate_labebl")] z_index = 2 layout_mode = 3 anchors_preset = 15 @@ -68,6 +72,7 @@ current_target_label = NodePath("PanelContainer/HBoxContainer/Hacking/Current Ta power_bar = NodePath("PanelContainer/HBoxContainer/Hacking/Power Bar") next_target_label = NodePath("PanelContainer/HBoxContainer/Hacking/Next Target") levels = Array[ExtResource("2_hjq5n")]([SubResource("Resource_hjq5n"), SubResource("Resource_m763i"), SubResource("Resource_nhhwl"), SubResource("Resource_023ps"), SubResource("Resource_cb2q0")]) +accumlate_labebl = NodePath("PanelContainer/HBoxContainer/Hacking/Power Bar/next day") [node name="PanelContainer" type="PanelContainer" parent="."] layout_mode = 1 @@ -166,6 +171,18 @@ texture_under = ExtResource("5_idmoy") texture_over = ExtResource("6_hjq5n") texture_progress = ExtResource("7_m763i") +[node name="next day" type="Label" parent="PanelContainer/HBoxContainer/Hacking/Power Bar"] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +text = "+123 next day" +label_settings = SubResource("LabelSettings_hjq5n") +horizontal_alignment = 1 +vertical_alignment = 1 + [node name="Next Target" type="Label" parent="PanelContainer/HBoxContainer/Hacking"] layout_mode = 2 text = "10 Power to next target"