bunch of changes, about to try somehting funky

This commit is contained in:
Tabby 2026-01-18 20:10:35 +11:00
parent 902024fc3f
commit 0a9a916ee1
32 changed files with 585 additions and 41 deletions

View file

@ -48,6 +48,9 @@ Submission day: Jan 19th 8AM
- [x] trash slto - [x] trash slto
- [x] onyl display sell value if > 0 - [x] onyl display sell value if > 0
- [x] link menu to credits screen - [x] link menu to credits screen
- [x] filling power bar animation
- [x] increase server cash/botnet value
- [ ] scavenge power supply to power cells?
# Maintain motivation by setting milestones and showing progress when you reach them! # Maintain motivation by setting milestones and showing progress when you reach them!
1. [x] Gettign a random assortment of loot from the ewaste bin 1. [x] Gettign a random assortment of loot from the ewaste bin
@ -94,3 +97,14 @@ some sort of acronym - RUST, REDDIT, UTS, CAT, CATGIRL
- Reclaim U System Takeover - Reclaim U System Takeover
https://cooltext.com/Edit-Logo?LogoID=5002855292&5002855292_Gradient2=Frost%20Black%2001 https://cooltext.com/Edit-Logo?LogoID=5002855292&5002855292_Gradient2=Frost%20Black%2001
Hacking targets: Flight logs? bank? google, goverment
- US Goverment
- science lab
- evil websites - google/amazon
- UTS
- Telstra/Optus
- Reddit, google
### Hacking Levels
None/Fail -> UTS -> Reddit -> Google -> US Goverment

BIN
assets/bubble.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

40
assets/bubble.png.import Normal file
View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://v01a44neaam6"
path="res://.godot/imported/bubble.png-dd17930a71c5ad345ddb3eb8ec316790.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/bubble.png"
dest_files=["res://.godot/imported/bubble.png-dd17930a71c5ad345ddb3eb8ec316790.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

BIN
assets/power bar over.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 627 B

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dyd73wec7wfyh"
path="res://.godot/imported/power bar over.png-86195eb961e829c5d20b2d79e9050800.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/power bar over.png"
dest_files=["res://.godot/imported/power bar over.png-86195eb961e829c5d20b2d79e9050800.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 497 B

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://1bn501rcmtlf"
path="res://.godot/imported/power bar progress.png-c3fe82c68bd732f3aad0f7eac3b782bf.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/power bar progress.png"
dest_files=["res://.godot/imported/power bar progress.png-c3fe82c68bd732f3aad0f7eac3b782bf.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

BIN
assets/power bar under.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 504 B

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://h5b7viae7oxt"
path="res://.godot/imported/power bar under.png-a537da68767b03febc54e67ac7939db6.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/power bar under.png"
dest_files=["res://.godot/imported/power bar under.png-a537da68767b03febc54e67ac7939db6.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

BIN
assets/power bar.pdn Normal file

Binary file not shown.

View file

@ -7,12 +7,6 @@
[ext_resource type="Resource" uid="uid://c2wbqelme8vy1" path="res://items/ram_item.tres" id="5_fut73"] [ext_resource type="Resource" uid="uid://c2wbqelme8vy1" path="res://items/ram_item.tres" id="5_fut73"]
[ext_resource type="Resource" uid="uid://bjmledqi51eut" path="res://items/ssd_item.tres" id="6_bmsvv"] [ext_resource type="Resource" uid="uid://bjmledqi51eut" path="res://items/ssd_item.tres" id="6_bmsvv"]
[sub_resource type="Resource" id="Resource_wkxe4"]
script = ExtResource("2_n1ajs")
item = ExtResource("3_t0fjb")
chance = 2
metadata/_custom_type_script = "uid://oa5rlx6ttwuj"
[sub_resource type="Resource" id="Resource_7lonm"] [sub_resource type="Resource" id="Resource_7lonm"]
script = ExtResource("2_n1ajs") script = ExtResource("2_n1ajs")
item = ExtResource("5_fut73") item = ExtResource("5_fut73")
@ -25,8 +19,14 @@ item = ExtResource("6_bmsvv")
chance = 1 chance = 1
metadata/_custom_type_script = "uid://oa5rlx6ttwuj" metadata/_custom_type_script = "uid://oa5rlx6ttwuj"
[sub_resource type="Resource" id="Resource_wkxe4"]
script = ExtResource("2_n1ajs")
item = ExtResource("3_t0fjb")
chance = 1
metadata/_custom_type_script = "uid://oa5rlx6ttwuj"
[resource] [resource]
script = ExtResource("4_bmsvv") script = ExtResource("4_bmsvv")
input = ExtResource("1_t0fjb") input = ExtResource("1_t0fjb")
loot_pool = Array[ExtResource("2_n1ajs")]([SubResource("Resource_wkxe4"), SubResource("Resource_7lonm"), SubResource("Resource_3aoas")]) loot_pool = Array[ExtResource("2_n1ajs")]([SubResource("Resource_7lonm"), SubResource("Resource_3aoas"), SubResource("Resource_wkxe4")])
metadata/_custom_type_script = "uid://boqr1fowaqmt0" metadata/_custom_type_script = "uid://boqr1fowaqmt0"

View file

@ -9,13 +9,13 @@
[sub_resource type="Resource" id="Resource_aq2uy"] [sub_resource type="Resource" id="Resource_aq2uy"]
script = ExtResource("2_hitgd") script = ExtResource("2_hitgd")
item = ExtResource("3_rrf34") item = ExtResource("3_rrf34")
chance = 1 chance = 4
metadata/_custom_type_script = "uid://oa5rlx6ttwuj" metadata/_custom_type_script = "uid://oa5rlx6ttwuj"
[sub_resource type="Resource" id="Resource_7lonm"] [sub_resource type="Resource" id="Resource_7lonm"]
script = ExtResource("2_hitgd") script = ExtResource("2_hitgd")
item = ExtResource("5_4ss58") item = ExtResource("5_4ss58")
chance = 1 chance = 6
metadata/_custom_type_script = "uid://oa5rlx6ttwuj" metadata/_custom_type_script = "uid://oa5rlx6ttwuj"
[resource] [resource]

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cw6ijdxvlrjq2"
path="res://.godot/imported/cookiencream.webp-1c86d1826db8ceb61b8e28107aee25b4.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://credits/people/cookiencream.webp"
dest_files=["res://.godot/imported/cookiencream.webp-1c86d1826db8ceb61b8e28107aee25b4.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

BIN
credits/people/mesmaa.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dyft7abnyeqmi"
path="res://.godot/imported/mesmaa.webp-8cb017c7d5a136c15d726bd8b9a8a939.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://credits/people/mesmaa.webp"
dest_files=["res://.godot/imported/mesmaa.webp-8cb017c7d5a136c15d726bd8b9a8a939.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cgonrrh044pu2"
path="res://.godot/imported/peterfly.webp-271d160ccc3e859f822faf797243b89b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://credits/people/peterfly.webp"
dest_files=["res://.godot/imported/peterfly.webp-271d160ccc3e859f822faf797243b89b.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

BIN
credits/people/skmojo.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://g6xq0gt8dq27"
path="res://.godot/imported/skmojo.webp-4c898317982428ffd6b8c09444d9bcff.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://credits/people/skmojo.webp"
dest_files=["res://.godot/imported/skmojo.webp-4c898317982428ffd6b8c09444d9bcff.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View file

@ -97,7 +97,7 @@ func style_scavenge():
action_button.add_theme_stylebox_override("normal",scavenge_style) action_button.add_theme_stylebox_override("normal",scavenge_style)
action_button.add_theme_stylebox_override("hover",scavenge_style_hover) action_button.add_theme_stylebox_override("hover",scavenge_style_hover)
action_button.add_theme_stylebox_override("pressed",scavenge_style_pressed) action_button.add_theme_stylebox_override("pressed",scavenge_style_pressed)
action_button.text = "Scavenge!" action_button.text = "Salvage!"
action_button.disabled = false action_button.disabled = false
func style_none(): func style_none():

View file

@ -7,6 +7,7 @@ extends Node
@export var botnet_servers : int = 0 @export var botnet_servers : int = 0
@export var botnet : Array[ItemData] = [] @export var botnet : Array[ItemData] = []
#@export var power_values : Dictionary[ItemData,int] #@export var power_values : Dictionary[ItemData,int]
@export var reminder_bubble : Control
# Called when the node enters the scene tree for the first time. # Called when the node enters the scene tree for the first time.
func _ready() -> void: func _ready() -> void:
@ -22,3 +23,8 @@ func _process(delta: float) -> void:
func _on_button_pressed() -> void: func _on_button_pressed() -> void:
inventory_panel.visible = !inventory_panel.visible inventory_panel.visible = !inventory_panel.visible
button.text = "Show Inventory" if !inventory_panel.visible else "Hide Inventory" button.text = "Show Inventory" if !inventory_panel.visible else "Hide Inventory"
func _on_tab_container_tab_selected(tab: int) -> void:
if tab == 1:
reminder_bubble.hide()

View file

@ -1,10 +1,11 @@
[gd_scene load_steps=16 format=3 uid="uid://bkhg56q71vsjv"] [gd_scene load_steps=17 format=3 uid="uid://bkhg56q71vsjv"]
[ext_resource type="Script" uid="uid://jxkjnscuxcyi" path="res://inv_system/player_inventory.gd" id="1_vk2kx"] [ext_resource type="Script" uid="uid://jxkjnscuxcyi" path="res://inv_system/player_inventory.gd" id="1_vk2kx"]
[ext_resource type="Script" uid="uid://c6oycdae5wvjf" path="res://inv_system/inventory.gd" id="2_hk4hx"] [ext_resource type="Script" uid="uid://c6oycdae5wvjf" path="res://inv_system/inventory.gd" id="2_hk4hx"]
[ext_resource type="PackedScene" uid="uid://dgqs20xf7l8c" path="res://inv_system/item_slot.tscn" id="3_8qgtd"] [ext_resource type="PackedScene" uid="uid://dgqs20xf7l8c" path="res://inv_system/item_slot.tscn" id="3_8qgtd"]
[ext_resource type="Script" uid="uid://chxgum3v3d1o7" path="res://crafting/recipe book/recipie_book.gd" id="4_bdgfq"] [ext_resource type="Script" uid="uid://chxgum3v3d1o7" path="res://crafting/recipe book/recipie_book.gd" id="4_bdgfq"]
[ext_resource type="Script" uid="uid://drm5jfhadys7l" path="res://crafting/recipe book/scavengeBook.gd" id="5_bdgfq"] [ext_resource type="Script" uid="uid://drm5jfhadys7l" path="res://crafting/recipe book/scavengeBook.gd" id="5_bdgfq"]
[ext_resource type="Texture2D" uid="uid://v01a44neaam6" path="res://assets/bubble.png" id="8_icm48"]
[ext_resource type="Texture2D" uid="uid://of71gurkt2v2" path="res://assets/glyphs/keyboard_shift.png" id="12_txpda"] [ext_resource type="Texture2D" uid="uid://of71gurkt2v2" path="res://assets/glyphs/keyboard_shift.png" id="12_txpda"]
[ext_resource type="Texture2D" uid="uid://b6pddnr3aascg" path="res://assets/glyphs/mouse_left.png" id="13_klg10"] [ext_resource type="Texture2D" uid="uid://b6pddnr3aascg" path="res://assets/glyphs/mouse_left.png" id="13_klg10"]
@ -92,7 +93,7 @@ font_color = Color(1, 0.7490196, 0, 1)
[sub_resource type="LabelSettings" id="LabelSettings_xr7r7"] [sub_resource type="LabelSettings" id="LabelSettings_xr7r7"]
font_size = 24 font_size = 24
[node name="PlayerInventory" type="Control" node_paths=PackedStringArray("inventory_panel", "button", "money_label")] [node name="PlayerInventory" type="Control" node_paths=PackedStringArray("inventory_panel", "button", "money_label", "reminder_bubble")]
z_index = 2 z_index = 2
layout_mode = 3 layout_mode = 3
anchors_preset = 15 anchors_preset = 15
@ -105,6 +106,7 @@ script = ExtResource("1_vk2kx")
inventory_panel = NodePath("Inventory") inventory_panel = NodePath("Inventory")
button = NodePath("Button") button = NodePath("Button")
money_label = NodePath("PanelContainer/Label") money_label = NodePath("PanelContainer/Label")
reminder_bubble = NodePath("ReminderBuble")
[node name="Button" type="Button" parent="."] [node name="Button" type="Button" parent="."]
visible = false visible = false
@ -285,7 +287,7 @@ size_flags_horizontal = 3
size_flags_vertical = 3 size_flags_vertical = 3
theme_override_constants/separation = 10 theme_override_constants/separation = 10
[node name="Scavenge" type="PanelContainer" parent="TabContainer" node_paths=PackedStringArray("grid")] [node name="Salvage" type="PanelContainer" parent="TabContainer" node_paths=PackedStringArray("grid")]
visible = false visible = false
layout_mode = 2 layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_8qgtd") theme_override_styles/panel = SubResource("StyleBoxFlat_8qgtd")
@ -293,23 +295,23 @@ script = ExtResource("5_bdgfq")
grid = NodePath("MarginContainer/VBoxContainer/GridContainer") grid = NodePath("MarginContainer/VBoxContainer/GridContainer")
metadata/_tab_index = 1 metadata/_tab_index = 1
[node name="MarginContainer" type="MarginContainer" parent="TabContainer/Scavenge"] [node name="MarginContainer" type="MarginContainer" parent="TabContainer/Salvage"]
layout_mode = 2 layout_mode = 2
theme_override_constants/margin_left = 5 theme_override_constants/margin_left = 5
theme_override_constants/margin_top = 5 theme_override_constants/margin_top = 5
theme_override_constants/margin_right = 5 theme_override_constants/margin_right = 5
theme_override_constants/margin_bottom = 5 theme_override_constants/margin_bottom = 5
[node name="VBoxContainer" type="VBoxContainer" parent="TabContainer/Scavenge/MarginContainer"] [node name="VBoxContainer" type="VBoxContainer" parent="TabContainer/Salvage/MarginContainer"]
layout_mode = 2 layout_mode = 2
[node name="Label" type="Label" parent="TabContainer/Scavenge/MarginContainer/VBoxContainer"] [node name="Label" type="Label" parent="TabContainer/Salvage/MarginContainer/VBoxContainer"]
layout_mode = 2 layout_mode = 2
text = "These items can be scavenged into other resources" text = "Hover over an item to see what you can get from salvaging it"
horizontal_alignment = 1 horizontal_alignment = 1
autowrap_mode = 2 autowrap_mode = 2
[node name="GridContainer" type="GridContainer" parent="TabContainer/Scavenge/MarginContainer/VBoxContainer"] [node name="GridContainer" type="GridContainer" parent="TabContainer/Salvage/MarginContainer/VBoxContainer"]
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 4 size_flags_horizontal = 4
columns = 4 columns = 4
@ -361,4 +363,24 @@ layout_mode = 2
texture = ExtResource("13_klg10") texture = ExtResource("13_klg10")
expand_mode = 3 expand_mode = 3
[node name="ReminderBuble" type="TextureRect" parent="."]
self_modulate = Color(1, 0, 0.23137255, 0.6039216)
layout_mode = 0
offset_left = 2.0
offset_top = 31.0
offset_right = 238.0
offset_bottom = 121.0
texture = ExtResource("8_icm48")
[node name="Label" type="Label" parent="ReminderBuble"]
layout_mode = 0
offset_left = 6.0
offset_top = 11.0
offset_right = 230.0
offset_bottom = 60.0
text = "View your salvaging recipes here"
horizontal_alignment = 1
autowrap_mode = 2
[connection signal="pressed" from="Button" to="." method="_on_button_pressed"] [connection signal="pressed" from="Button" to="." method="_on_button_pressed"]
[connection signal="tab_selected" from="TabContainer" to="." method="_on_tab_container_tab_selected"]

View file

@ -10,6 +10,6 @@ item_name = "Server"
icon = ExtResource("2_5q0ct") icon = ExtResource("2_5q0ct")
custom_panel_style = ExtResource("1_70din") custom_panel_style = ExtResource("1_70din")
bin_chance = 0 bin_chance = 0
buy_value = 2000 buy_value = 3000
botnet_power = 10 botnet_power = 11
metadata/_custom_type_script = "uid://dccraom7a7e8d" metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=16 format=3 uid="uid://cix7xfnu1305i"] [gd_scene load_steps=24 format=3 uid="uid://cix7xfnu1305i"]
[ext_resource type="Script" uid="uid://4c4k3o0jnmdk" path="res://scenes/menu.gd" id="1_2ckv8"] [ext_resource type="Script" uid="uid://4c4k3o0jnmdk" path="res://scenes/menu.gd" id="1_2ckv8"]
[ext_resource type="Texture2D" uid="uid://b1rs6epjar6mj" path="res://assets/menu.png" id="2_0ctdu"] [ext_resource type="Texture2D" uid="uid://b1rs6epjar6mj" path="res://assets/menu.png" id="2_0ctdu"]
@ -10,6 +10,10 @@
[ext_resource type="Texture2D" uid="uid://bu3t30sqi3t8t" path="res://credits/people/spantle.webp" id="9_c6kru"] [ext_resource type="Texture2D" uid="uid://bu3t30sqi3t8t" path="res://credits/people/spantle.webp" id="9_c6kru"]
[ext_resource type="PackedScene" uid="uid://bicj8f61mhigk" path="res://credits/credit_slot.tscn" id="9_ih6pn"] [ext_resource type="PackedScene" uid="uid://bicj8f61mhigk" path="res://credits/credit_slot.tscn" id="9_ih6pn"]
[ext_resource type="Texture2D" uid="uid://cmdro72icyith" path="res://credits/people/jessica.webp" id="10_7lgdl"] [ext_resource type="Texture2D" uid="uid://cmdro72icyith" path="res://credits/people/jessica.webp" id="10_7lgdl"]
[ext_resource type="Texture2D" uid="uid://cgonrrh044pu2" path="res://credits/people/peterfly.webp" id="11_c6kru"]
[ext_resource type="Texture2D" uid="uid://dyft7abnyeqmi" path="res://credits/people/mesmaa.webp" id="12_qbfqv"]
[ext_resource type="Texture2D" uid="uid://g6xq0gt8dq27" path="res://credits/people/skmojo.webp" id="13_x5q3x"]
[ext_resource type="Texture2D" uid="uid://cw6ijdxvlrjq2" path="res://credits/people/cookiencream.webp" id="14_nmdnh"]
[sub_resource type="Resource" id="Resource_7lgdl"] [sub_resource type="Resource" id="Resource_7lgdl"]
script = ExtResource("6_7lgdl") script = ExtResource("6_7lgdl")
@ -51,6 +55,38 @@ custom_panel_style = ExtResource("7_ih6pn")
buy_value = 0 buy_value = 0
metadata/_custom_type_script = "uid://dccraom7a7e8d" metadata/_custom_type_script = "uid://dccraom7a7e8d"
[sub_resource type="Resource" id="Resource_83ncp"]
script = ExtResource("6_7lgdl")
item_name = "Peterfly"
icon = ExtResource("11_c6kru")
custom_panel_style = ExtResource("7_ih6pn")
buy_value = 0
metadata/_custom_type_script = "uid://dccraom7a7e8d"
[sub_resource type="Resource" id="Resource_sxold"]
script = ExtResource("6_7lgdl")
item_name = "Mesmaa"
icon = ExtResource("12_qbfqv")
custom_panel_style = ExtResource("7_ih6pn")
buy_value = 0
metadata/_custom_type_script = "uid://dccraom7a7e8d"
[sub_resource type="Resource" id="Resource_olp7g"]
script = ExtResource("6_7lgdl")
item_name = "Skmojo"
icon = ExtResource("13_x5q3x")
custom_panel_style = ExtResource("7_ih6pn")
buy_value = 0
metadata/_custom_type_script = "uid://dccraom7a7e8d"
[sub_resource type="Resource" id="Resource_agqj7"]
script = ExtResource("6_7lgdl")
item_name = "Cookie"
icon = ExtResource("14_nmdnh")
custom_panel_style = ExtResource("7_ih6pn")
buy_value = 0
metadata/_custom_type_script = "uid://dccraom7a7e8d"
[node name="Credits" type="Control"] [node name="Credits" type="Control"]
layout_mode = 3 layout_mode = 3
anchors_preset = 15 anchors_preset = 15
@ -174,10 +210,28 @@ item = SubResource("Resource_nmdnh")
layout_mode = 2 layout_mode = 2
item = SubResource("Resource_c6kru") item = SubResource("Resource_c6kru")
[node name="Peterfly" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScrollContainer/VBoxContainer/HFlowContainer2" instance=ExtResource("9_ih6pn")]
layout_mode = 2
item = SubResource("Resource_83ncp")
[node name="Mesmaa" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScrollContainer/VBoxContainer/HFlowContainer2" instance=ExtResource("9_ih6pn")]
layout_mode = 2
item = SubResource("Resource_sxold")
[node name="skmojo" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScrollContainer/VBoxContainer/HFlowContainer2" instance=ExtResource("9_ih6pn")]
layout_mode = 2
item = SubResource("Resource_olp7g")
[node name="cookiencream" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScrollContainer/VBoxContainer/HFlowContainer2" instance=ExtResource("9_ih6pn")]
layout_mode = 2
item = SubResource("Resource_agqj7")
[node name="other" type="RichTextLabel" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScrollContainer/VBoxContainer"] [node name="other" type="RichTextLabel" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScrollContainer/VBoxContainer"]
layout_mode = 2 layout_mode = 2
bbcode_enabled = true bbcode_enabled = true
text = "[center]Icons[/center][ul] text = "[url=https://www.youtube.com/watch?v=JUR1qQ79eJY]Youtube Tutorial: Making a GOOD Drag and Drop Inventory by Octodemy[/url]
[center]Icons[/center][ul]
[url=https://www.flaticon.com/free-icon/bin_484611]Bin Icon by Freepik[/url] [url=https://www.flaticon.com/free-icon/bin_484611]Bin Icon by Freepik[/url]
[url=https://www.flaticon.com/free-icon/renovation_2825738]Rennovation Icon by Freepik[/url] [url=https://www.flaticon.com/free-icon/renovation_2825738]Rennovation Icon by Freepik[/url]
[url=https://www.flaticon.com/free-icon/home_25694]Home Icon by Dave Gandy[/url] [url=https://www.flaticon.com/free-icon/home_25694]Home Icon by Dave Gandy[/url]

View file

@ -2,6 +2,7 @@ extends Control
@export var server_box : HFlowContainer @export var server_box : HFlowContainer
@export var score_label : Label @export var score_label : Label
@export var ending_text : Label
# Called when the node enters the scene tree for the first time. # Called when the node enters the scene tree for the first time.
func _ready() -> void: func _ready() -> void:
@ -10,6 +11,7 @@ func _ready() -> void:
for slot in PlayerInventory.inventory_panel.slots: for slot in PlayerInventory.inventory_panel.slots:
if slot.item: if slot.item:
inv_sell_value += floori(slot.item.buy_value/float(2)) inv_sell_value += floori(slot.item.buy_value/float(2))
ending_text.text = Clock.ending_text
#var server_item : ItemData = load("res://items/server.tres") #var server_item : ItemData = load("res://items/server.tres")
for device in PlayerInventory.botnet: for device in PlayerInventory.botnet:

View file

@ -3,7 +3,7 @@
[ext_resource type="Script" uid="uid://ekqrygb4eunr" path="res://scenes/ending.gd" id="1_2x1jc"] [ext_resource type="Script" uid="uid://ekqrygb4eunr" path="res://scenes/ending.gd" id="1_2x1jc"]
[ext_resource type="Texture2D" uid="uid://jdfmarm0iilr" path="res://assets/ending.png" id="1_mqjok"] [ext_resource type="Texture2D" uid="uid://jdfmarm0iilr" path="res://assets/ending.png" id="1_mqjok"]
[node name="Ending" type="Control" node_paths=PackedStringArray("server_box", "score_label")] [node name="Ending" type="Control" node_paths=PackedStringArray("server_box", "score_label", "ending_text")]
layout_mode = 3 layout_mode = 3
anchors_preset = 15 anchors_preset = 15
anchor_right = 1.0 anchor_right = 1.0
@ -14,6 +14,7 @@ mouse_filter = 2
script = ExtResource("1_2x1jc") script = ExtResource("1_2x1jc")
server_box = NodePath("MarginContainer/PanelContainer/MarginContainer/VBoxContainer/botnet display") server_box = NodePath("MarginContainer/PanelContainer/MarginContainer/VBoxContainer/botnet display")
score_label = NodePath("MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScoreL") score_label = NodePath("MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScoreL")
ending_text = NodePath("MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ending_text")
[node name="TextureRect" type="TextureRect" parent="."] [node name="TextureRect" type="TextureRect" parent="."]
z_index = -3 z_index = -3
@ -59,10 +60,11 @@ bbcode_enabled = true
text = "[center][font_size=50][wave]meow!!" text = "[center][font_size=50][wave]meow!!"
fit_content = true fit_content = true
[node name="Label" type="Label" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer"] [node name="ending_text" type="Label" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer"]
layout_mode = 2 layout_mode = 2
text = "You launch your botnet filling the internet with catgirls!" text = "You launch your botnet filling the internet with catgirls!"
horizontal_alignment = 1 horizontal_alignment = 1
autowrap_mode = 2
[node name="botnet display" type="HFlowContainer" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer"] [node name="botnet display" type="HFlowContainer" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer"]
layout_mode = 2 layout_mode = 2

View file

@ -10,6 +10,14 @@ var starting_time : int = 200
signal new_day signal new_day
@export var current_target_label : Label
@export var power_bar : TextureProgressBar
@export var next_target_label : Label
@export var levels : Array[HackLevel]
var ending_text : String
var power_vis : float = 0
# Called when the node enters the scene tree for the first time. # Called when the node enters the scene tree for the first time.
func _ready() -> void: func _ready() -> void:
pass # Replace with function body. pass # Replace with function body.
@ -25,6 +33,12 @@ func _process(delta: float) -> void:
next_button.text = "End Game" next_button.text = "End Game"
else: else:
next_button.text = "Proceed to next day ->" next_button.text = "Proceed to next day ->"
update_power()
if PlayerInventory.botnet_servers < power_vis:
power_vis = PlayerInventory.botnet_servers
else:
power_vis = clampf(power_vis + (delta * 5),0,PlayerInventory.botnet_servers)
func has_time(time : float) -> bool: func has_time(time : float) -> bool:
return time_left >= time return time_left >= time
@ -44,3 +58,23 @@ func _on_next_day_pressed() -> void:
Clock.hide() Clock.hide()
Locations.hide() Locations.hide()
pass pass
func update_power():
var current_level : HackLevel
var next_level : HackLevel
for x in range(levels.size()):
if levels[x].power <= power_vis:
current_level = levels[x]
if x < levels.size()-1:
next_level = levels[x+1]
else:
next_level = current_level
power_bar.min_value = current_level.power
power_bar.max_value = next_level.power
power_bar.value = power_vis
power_bar.self_modulate = next_level.color
next_target_label.text = str(round((next_level.power-power_vis)*10)/10) + " to next target"
current_target_label.text = current_level.name
if power_vis >= next_level.power:
next_target_label.text = "Max Hacking Level"
ending_text = current_level.ending_text

View file

@ -1,14 +1,56 @@
[gd_scene load_steps=6 format=3 uid="uid://dpa3yvdrddtsh"] [gd_scene load_steps=15 format=3 uid="uid://dpa3yvdrddtsh"]
[ext_resource type="Texture2D" uid="uid://cvsibrbtuqfww" path="res://assets/ready_time.png" id="1_chnjs"] [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"] [ext_resource type="Script" uid="uid://c4y7w10si2q2p" path="res://time_system/clock.gd" id="1_m6rn1"]
[ext_resource type="Script" uid="uid://md6s5hsjvnxc" path="res://time_system/hack_level.gd" id="2_hjq5n"]
[ext_resource type="Texture2D" uid="uid://bemb2moou1hkj" path="res://assets/timer_over.png" id="2_m6rn1"] [ext_resource type="Texture2D" uid="uid://bemb2moou1hkj" path="res://assets/timer_over.png" id="2_m6rn1"]
[ext_resource type="Texture2D" uid="uid://dvxtm2ahjd55h" path="res://assets/used_time.png" id="3_uyb5s"] [ext_resource type="Texture2D" uid="uid://dvxtm2ahjd55h" path="res://assets/used_time.png" id="3_uyb5s"]
[ext_resource type="Texture2D" uid="uid://h5b7viae7oxt" path="res://assets/power bar under.png" id="5_idmoy"]
[ext_resource type="Texture2D" uid="uid://dyd73wec7wfyh" path="res://assets/power bar over.png" id="6_hjq5n"]
[ext_resource type="Texture2D" uid="uid://1bn501rcmtlf" path="res://assets/power bar progress.png" id="7_m763i"]
[sub_resource type="Resource" id="Resource_hjq5n"]
script = ExtResource("2_hjq5n")
name = "None"
ending_text = "Despite your best efforts, your botnet isn't powerful enough to hack anything this time. You'll have to give it another shot once the security is less suspicious of you"
metadata/_custom_type_script = "uid://md6s5hsjvnxc"
[sub_resource type="Resource" id="Resource_m763i"]
script = ExtResource("2_hjq5n")
name = "UTS"
power = 10
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"
[sub_resource type="Resource" id="Resource_nhhwl"]
script = ExtResource("2_hjq5n")
name = "Microsoft"
power = 20
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"
[sub_resource type="Resource" id="Resource_023ps"]
script = ExtResource("2_hjq5n")
name = "X"
power = 40
color = Color(0.70184636, 0.4491853, 1, 1)
ending_text = "You point your powerful botnet towards X (the everthing app) and eviscerate the platform along with grok and elon musk, reducing them both to ashes"
metadata/_custom_type_script = "uid://md6s5hsjvnxc"
[sub_resource type="Resource" id="Resource_cb2q0"]
script = ExtResource("2_hjq5n")
name = "US Goverment"
power = 65
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"
[sub_resource type="LabelSettings" id="LabelSettings_r3ygl"] [sub_resource type="LabelSettings" id="LabelSettings_r3ygl"]
font_size = 32 font_size = 32
[node name="Clock" type="Control" node_paths=PackedStringArray("bar", "timer_text", "days_text", "next_button")] [node name="Clock" type="Control" node_paths=PackedStringArray("bar", "timer_text", "days_text", "next_button", "current_target_label", "power_bar", "next_target_label")]
z_index = 2 z_index = 2
layout_mode = 3 layout_mode = 3
anchors_preset = 15 anchors_preset = 15
@ -18,10 +60,14 @@ grow_horizontal = 2
grow_vertical = 2 grow_vertical = 2
mouse_filter = 2 mouse_filter = 2
script = ExtResource("1_m6rn1") script = ExtResource("1_m6rn1")
bar = NodePath("PanelContainer/VBoxContainer/HBoxContainer/TextureProgressBar") bar = NodePath("PanelContainer/HBoxContainer/VBoxContainer/HBoxContainer/TextureProgressBar")
timer_text = NodePath("PanelContainer/VBoxContainer/HBoxContainer/TextureProgressBar/PanelContainer/Label") timer_text = NodePath("PanelContainer/HBoxContainer/VBoxContainer/HBoxContainer/TextureProgressBar/PanelContainer/Label")
days_text = NodePath("PanelContainer/VBoxContainer/HBoxContainer/VBoxContainer/Label") days_text = NodePath("PanelContainer/HBoxContainer/VBoxContainer/HBoxContainer/VBoxContainer/Label")
next_button = NodePath("PanelContainer/VBoxContainer/NextDay") next_button = NodePath("PanelContainer/HBoxContainer/VBoxContainer/NextDay")
current_target_label = NodePath("PanelContainer/HBoxContainer/Hacking/Current Target")
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")])
[node name="PanelContainer" type="PanelContainer" parent="."] [node name="PanelContainer" type="PanelContainer" parent="."]
layout_mode = 1 layout_mode = 1
@ -33,27 +79,30 @@ offset_right = 20.0
offset_bottom = 40.0 offset_bottom = 40.0
grow_horizontal = 2 grow_horizontal = 2
[node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer"] [node name="HBoxContainer" type="HBoxContainer" parent="PanelContainer"]
layout_mode = 2 layout_mode = 2
[node name="HBoxContainer" type="HBoxContainer" parent="PanelContainer/VBoxContainer"] [node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer/HBoxContainer"]
layout_mode = 2 layout_mode = 2
[node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer/VBoxContainer/HBoxContainer"] [node name="HBoxContainer" type="HBoxContainer" parent="PanelContainer/HBoxContainer/VBoxContainer"]
layout_mode = 2
[node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer/HBoxContainer/VBoxContainer/HBoxContainer"]
layout_mode = 2 layout_mode = 2
alignment = 1 alignment = 1
[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/HBoxContainer/VBoxContainer"] [node name="Label" type="Label" parent="PanelContainer/HBoxContainer/VBoxContainer/HBoxContainer/VBoxContainer"]
layout_mode = 2 layout_mode = 2
text = "7" text = "7"
label_settings = SubResource("LabelSettings_r3ygl") label_settings = SubResource("LabelSettings_r3ygl")
horizontal_alignment = 1 horizontal_alignment = 1
[node name="Label2" type="Label" parent="PanelContainer/VBoxContainer/HBoxContainer/VBoxContainer"] [node name="Label2" type="Label" parent="PanelContainer/HBoxContainer/VBoxContainer/HBoxContainer/VBoxContainer"]
layout_mode = 2 layout_mode = 2
text = "Days Left" text = "Days Left"
[node name="TextureProgressBar" type="TextureProgressBar" parent="PanelContainer/VBoxContainer/HBoxContainer"] [node name="TextureProgressBar" type="TextureProgressBar" parent="PanelContainer/HBoxContainer/VBoxContainer/HBoxContainer"]
custom_minimum_size = Vector2(150, 73) custom_minimum_size = Vector2(150, 73)
layout_mode = 2 layout_mode = 2
max_value = 1.0 max_value = 1.0
@ -67,7 +116,7 @@ texture_under = ExtResource("1_chnjs")
texture_over = ExtResource("2_m6rn1") texture_over = ExtResource("2_m6rn1")
texture_progress = ExtResource("3_uyb5s") texture_progress = ExtResource("3_uyb5s")
[node name="PanelContainer" type="PanelContainer" parent="PanelContainer/VBoxContainer/HBoxContainer/TextureProgressBar"] [node name="PanelContainer" type="PanelContainer" parent="PanelContainer/HBoxContainer/VBoxContainer/HBoxContainer/TextureProgressBar"]
layout_mode = 1 layout_mode = 1
anchors_preset = 7 anchors_preset = 7
anchor_left = 0.5 anchor_left = 0.5
@ -80,15 +129,46 @@ offset_right = 16.0
grow_horizontal = 2 grow_horizontal = 2
grow_vertical = 0 grow_vertical = 0
[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/HBoxContainer/TextureProgressBar/PanelContainer"] [node name="Label" type="Label" parent="PanelContainer/HBoxContainer/VBoxContainer/HBoxContainer/TextureProgressBar/PanelContainer"]
layout_mode = 2 layout_mode = 2
size_flags_vertical = 8 size_flags_vertical = 8
text = "200" text = "200"
horizontal_alignment = 1 horizontal_alignment = 1
vertical_alignment = 2 vertical_alignment = 2
[node name="NextDay" type="Button" parent="PanelContainer/VBoxContainer"] [node name="NextDay" type="Button" parent="PanelContainer/HBoxContainer/VBoxContainer"]
layout_mode = 2 layout_mode = 2
text = "Proceed to next day ->" text = "Proceed to next day ->"
[connection signal="pressed" from="PanelContainer/VBoxContainer/NextDay" to="." method="_on_next_day_pressed"] [node name="Hacking" type="VBoxContainer" parent="PanelContainer/HBoxContainer"]
custom_minimum_size = Vector2(200, 0)
layout_mode = 2
size_flags_horizontal = 4
alignment = 1
[node name="Label" type="Label" parent="PanelContainer/HBoxContainer/Hacking"]
layout_mode = 2
text = "Current Hacking Target:"
horizontal_alignment = 1
[node name="Current Target" type="Label" parent="PanelContainer/HBoxContainer/Hacking"]
layout_mode = 2
text = "Bank"
horizontal_alignment = 1
[node name="Power Bar" type="TextureProgressBar" parent="PanelContainer/HBoxContainer/Hacking"]
self_modulate = Color(0.36701235, 0.9999997, 0.3376366, 1)
layout_mode = 2
size_flags_vertical = 3
max_value = 1.0
step = 0.0
texture_under = ExtResource("5_idmoy")
texture_over = ExtResource("6_hjq5n")
texture_progress = ExtResource("7_m763i")
[node name="Next Target" type="Label" parent="PanelContainer/HBoxContainer/Hacking"]
layout_mode = 2
text = "10 Power to next target"
horizontal_alignment = 1
[connection signal="pressed" from="PanelContainer/HBoxContainer/VBoxContainer/NextDay" to="." method="_on_next_day_pressed"]

View file

@ -0,0 +1,7 @@
extends Resource
class_name HackLevel
@export var name : String
@export var power : int
@export var color : Color
@export_multiline var ending_text : String

View file

@ -0,0 +1 @@
uid://md6s5hsjvnxc

View file

@ -16,7 +16,9 @@ func _process(delta: float) -> void:
func show_tip(item : ItemData, extra : String = ""): func show_tip(item : ItemData, extra : String = ""):
tooltip_label.text = item.item_name tooltip_label.text = item.item_name
if item.buy_value > 0: if item.buy_value > 200:
tooltip_label.text += "\n[color=gold]Sell Value: $"+str(floori(item.buy_value/float(2))) + "[/color]"
elif item.buy_value > 0:
tooltip_label.text += "\nSell Value: $"+str(floori(item.buy_value/float(2))) tooltip_label.text += "\nSell Value: $"+str(floori(item.buy_value/float(2)))
if item.botnet_power > 0: if item.botnet_power > 0:
tooltip_label.text += "\n[color=orchid]Botnet Power: " + str(item.botnet_power) +"[/color]" tooltip_label.text += "\n[color=orchid]Botnet Power: " + str(item.botnet_power) +"[/color]"