Compare commits

..

15 commits

Author SHA1 Message Date
Tabby
c711ed4aa9 4.6 upgrade, right click quick move, fixed credits, fixed play again 2026-01-28 15:27:00 +11:00
Tabby
cc57d2904b added version label 2026-01-27 00:02:23 +11:00
Tabby
93ab8ecedf fixed travel blocker 2026-01-23 16:52:07 +11:00
Tabby
e2f6584aaa botnet and sell icons 2026-01-23 16:31:03 +11:00
Tabby
dae8a0d5b1 reordered recipes 2026-01-23 16:15:15 +11:00
Tabby
f92e1344fa rarity tags 2026-01-23 16:12:01 +11:00
Tabby
b1a57b7290 fixed credits link 2026-01-23 15:54:06 +11:00
Tabby
a48d4f15c0 tavel location labels, botne tplanel change, ewaste loot bubble 2026-01-23 15:51:36 +11:00
Tabby
d0d1ccdf50 start on ewaste screen 2026-01-23 15:40:25 +11:00
Tabby
fbadd98025 sell cost 10 2026-01-23 15:39:27 +11:00
Tabby
69f6544545 full height book 2026-01-23 14:53:40 +11:00
Tabby
284c4e84bf updaeted credits 2026-01-23 14:48:51 +11:00
Tabby
217efd9f9f trash slot blocks travel 2026-01-23 14:33:24 +11:00
Tabby
866d869756 exporting stuff 2026-01-18 21:44:09 +11:00
Tabby
7f4b9b939b game finished i think :3 2026-01-18 21:06:22 +11:00
84 changed files with 1200 additions and 283 deletions

BIN
assets/blankIcon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 447 B

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bbu7dofi4u038"
path="res://.godot/imported/blankIcon.png-8fc835676acf830316155cd070dc4a11.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/blankIcon.png"
dest_files=["res://.godot/imported/blankIcon.png-8fc835676acf830316155cd070dc4a11.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/new bubble.pdn Normal file

Binary file not shown.

BIN
assets/new bubble.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 936 B

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cuftm024jj0o2"
path="res://.godot/imported/new bubble.png-7abd5fe95f20bd41915f193a094eba68.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/new bubble.png"
dest_files=["res://.godot/imported/new bubble.png-7abd5fe95f20bd41915f193a094eba68.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/sellIcon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 445 B

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dokuqh6jq4eti"
path="res://.godot/imported/sellIcon.png-bbb1034de3ddd6ea52c144d6369cc78c.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/sellIcon.png"
dest_files=["res://.godot/imported/sellIcon.png-bbb1034de3ddd6ea52c144d6369cc78c.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

@ -1,4 +1,4 @@
[gd_scene load_steps=5 format=3 uid="uid://bicj8f61mhigk"]
[gd_scene 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,14 +8,16 @@
outline_size = 5
outline_color = Color(0, 0, 0, 1)
[node name="CreditSlot" type="Panel" node_paths=PackedStringArray("icon", "label")]
[node name="CreditSlot" type="Panel" unique_id=1909031053 node_paths=PackedStringArray("icon", "label", "botnet_icon", "sell_icon")]
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="."]
[node name="Icon" type="TextureRect" parent="." unique_id=1356127605]
layout_mode = 1
anchors_preset = -1
anchor_left = 0.1
@ -28,7 +30,7 @@ grow_vertical = 2
texture = ExtResource("3_0u6ut")
expand_mode = 3
[node name="Label" type="Label" parent="Icon"]
[node name="Label" type="Label" parent="Icon" unique_id=1188457195]
layout_mode = 1
anchors_preset = 7
anchor_left = 0.5
@ -45,6 +47,11 @@ 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"]

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bp123ijmb0vhp"
path="res://.godot/imported/DefectiveDev.png-1e893f00906bd0864f3e96a65ef09ffb.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://credits/people/DefectiveDev.png"
dest_files=["res://.godot/imported/DefectiveDev.png-1e893f00906bd0864f3e96a65ef09ffb.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: 11 KiB

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://xtku1tcmtpgd"
path="res://.godot/imported/Dragon's Isle Software.png-5d2fe90a3ddc360ef07929069d0e1b40.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://credits/people/Dragon's Isle Software.png"
dest_files=["res://.godot/imported/Dragon's Isle Software.png-5d2fe90a3ddc360ef07929069d0e1b40.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: 4.7 KiB

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cl7kv08matr2o"
path="res://.godot/imported/Playful Crow.png-1f661845ba84628a322d93f28342e819.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://credits/people/Playful Crow.png"
dest_files=["res://.godot/imported/Playful Crow.png-1f661845ba84628a322d93f28342e819.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: 13 KiB

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://0rbtmfc2gnk1"
path="res://.godot/imported/codesilver.webp-7cee230aac7477e83201be6f5180161a.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://credits/people/codesilver.webp"
dest_files=["res://.godot/imported/codesilver.webp-7cee230aac7477e83201be6f5180161a.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/cookie2.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cnvy2ke5e3o10"
path="res://.godot/imported/cookie2.webp-92bd00b10a2081f33c8521667cf2f333.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://credits/people/cookie2.webp"
dest_files=["res://.godot/imported/cookie2.webp-92bd00b10a2081f33c8521667cf2f333.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/eevee.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ew8luvkit28c"
path="res://.godot/imported/eevee.webp-e7789161fdb75f5c0c71a39b310b3781.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://credits/people/eevee.webp"
dest_files=["res://.godot/imported/eevee.webp-e7789161fdb75f5c0c71a39b310b3781.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/eleanor.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ca6q21e5hpqw3"
path="res://.godot/imported/eleanor.webp-4d42c51b7d859094c8db345c4ef30dd6.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://credits/people/eleanor.webp"
dest_files=["res://.godot/imported/eleanor.webp-4d42c51b7d859094c8db345c4ef30dd6.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: 3.2 KiB

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://br7h5684ckr8o"
path="res://.godot/imported/offbytwodev.png-8a4da819a46b3311ae332a63e47c2765.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://credits/people/offbytwodev.png"
dest_files=["res://.godot/imported/offbytwodev.png-8a4da819a46b3311ae332a63e47c2765.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: 3.3 KiB

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bho0qkoyms5tt"
path="res://.godot/imported/pixel-robert.png-2bf2a22f38105cb81a02ccafb5cc5e94.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://credits/people/pixel-robert.png"
dest_files=["res://.godot/imported/pixel-robert.png-2bf2a22f38105cb81a02ccafb5cc5e94.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/zobzi.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bc1iy6oyxud2r"
path="res://.godot/imported/zobzi.png-1318f4daa8f33c241cba2f6d1a69a0dd.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://credits/people/zobzi.png"
dest_files=["res://.godot/imported/zobzi.png-1318f4daa8f33c241cba2f6d1a69a0dd.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

@ -2,11 +2,13 @@ extends Control
@export var bin_inventory : Inventory
@export var loot_button : Button
@export var loot_bubble : Control
#@export var loot_pool : Array[ItemData]
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
bin_inventory._ready()
if Clock.time_left < 200 or Clock.days_left < 6:
loot_bubble.hide()
pass # Replace with function body.
@ -17,6 +19,7 @@ func _process(delta: float) -> void:
func _on_loot_button_pressed() -> void:
loot_bubble.hide()
if Clock.has_time(10):
if bin_inventory.add_item(pick_random_item()):
Clock.use_time(10)

View file

@ -9,7 +9,7 @@ custom_features=""
export_filter="all_resources"
include_filter=""
exclude_filter=""
export_path="../../Exports/Repurposed/Windows/RepurposedJam.exe"
export_path="../../Exports/Repurposed/Windows/Rust Hacker.exe"
patches=PackedStringArray()
encryption_include_filters=""
encryption_exclude_filters=""
@ -111,3 +111,301 @@ progressive_web_app/icon_512x512=""
progressive_web_app/background_color=Color(0, 0, 0, 1)
threads/emscripten_pool_size=8
threads/godot_pool_size=4
[preset.2]
name="macOS"
platform="macOS"
runnable=true
advanced_options=true
dedicated_server=false
custom_features=""
export_filter="all_resources"
include_filter=""
exclude_filter=""
export_path="../../Exports/Repurposed/Mac/Rust Hacker.zip"
patches=PackedStringArray()
encryption_include_filters=""
encryption_exclude_filters=""
seed=0
encrypt_pck=false
encrypt_directory=false
script_export_mode=2
[preset.2.options]
export/distribution_type=1
binary_format/architecture="universal"
custom_template/debug=""
custom_template/release=""
debug/export_console_wrapper=1
application/icon=""
application/icon_interpolation=4
application/bundle_identifier="dev.tabbycat.rusthacker"
application/signature=""
application/app_category="Games"
application/short_version=""
application/version=""
application/copyright=""
application/copyright_localized={}
application/min_macos_version_x86_64="10.12"
application/min_macos_version_arm64="11.00"
application/export_angle=0
display/high_res=true
shader_baker/enabled=false
application/additional_plist_content=""
xcode/platform_build="14C18"
xcode/sdk_version="13.1"
xcode/sdk_build="22C55"
xcode/sdk_name="macosx13.1"
xcode/xcode_version="1420"
xcode/xcode_build="14C18"
codesign/codesign=1
codesign/installer_identity=""
codesign/apple_team_id=""
codesign/identity=""
codesign/entitlements/custom_file=""
codesign/entitlements/allow_jit_code_execution=false
codesign/entitlements/allow_unsigned_executable_memory=false
codesign/entitlements/allow_dyld_environment_variables=false
codesign/entitlements/disable_library_validation=false
codesign/entitlements/audio_input=false
codesign/entitlements/camera=false
codesign/entitlements/location=false
codesign/entitlements/address_book=false
codesign/entitlements/calendars=false
codesign/entitlements/photos_library=false
codesign/entitlements/apple_events=false
codesign/entitlements/debugging=false
codesign/entitlements/app_sandbox/enabled=false
codesign/entitlements/app_sandbox/network_server=false
codesign/entitlements/app_sandbox/network_client=false
codesign/entitlements/app_sandbox/device_usb=false
codesign/entitlements/app_sandbox/device_bluetooth=false
codesign/entitlements/app_sandbox/files_downloads=0
codesign/entitlements/app_sandbox/files_pictures=0
codesign/entitlements/app_sandbox/files_music=0
codesign/entitlements/app_sandbox/files_movies=0
codesign/entitlements/app_sandbox/files_user_selected=0
codesign/entitlements/app_sandbox/helper_executables=[]
codesign/entitlements/additional=""
codesign/custom_options=PackedStringArray()
notarization/notarization=0
privacy/microphone_usage_description=""
privacy/microphone_usage_description_localized={}
privacy/camera_usage_description=""
privacy/camera_usage_description_localized={}
privacy/location_usage_description=""
privacy/location_usage_description_localized={}
privacy/address_book_usage_description=""
privacy/address_book_usage_description_localized={}
privacy/calendar_usage_description=""
privacy/calendar_usage_description_localized={}
privacy/photos_library_usage_description=""
privacy/photos_library_usage_description_localized={}
privacy/desktop_folder_usage_description=""
privacy/desktop_folder_usage_description_localized={}
privacy/documents_folder_usage_description=""
privacy/documents_folder_usage_description_localized={}
privacy/downloads_folder_usage_description=""
privacy/downloads_folder_usage_description_localized={}
privacy/network_volumes_usage_description=""
privacy/network_volumes_usage_description_localized={}
privacy/removable_volumes_usage_description=""
privacy/removable_volumes_usage_description_localized={}
privacy/tracking_enabled=false
privacy/tracking_domains=PackedStringArray()
privacy/collected_data/name/collected=false
privacy/collected_data/name/linked_to_user=false
privacy/collected_data/name/used_for_tracking=false
privacy/collected_data/name/collection_purposes=0
privacy/collected_data/email_address/collected=false
privacy/collected_data/email_address/linked_to_user=false
privacy/collected_data/email_address/used_for_tracking=false
privacy/collected_data/email_address/collection_purposes=0
privacy/collected_data/phone_number/collected=false
privacy/collected_data/phone_number/linked_to_user=false
privacy/collected_data/phone_number/used_for_tracking=false
privacy/collected_data/phone_number/collection_purposes=0
privacy/collected_data/physical_address/collected=false
privacy/collected_data/physical_address/linked_to_user=false
privacy/collected_data/physical_address/used_for_tracking=false
privacy/collected_data/physical_address/collection_purposes=0
privacy/collected_data/other_contact_info/collected=false
privacy/collected_data/other_contact_info/linked_to_user=false
privacy/collected_data/other_contact_info/used_for_tracking=false
privacy/collected_data/other_contact_info/collection_purposes=0
privacy/collected_data/health/collected=false
privacy/collected_data/health/linked_to_user=false
privacy/collected_data/health/used_for_tracking=false
privacy/collected_data/health/collection_purposes=0
privacy/collected_data/fitness/collected=false
privacy/collected_data/fitness/linked_to_user=false
privacy/collected_data/fitness/used_for_tracking=false
privacy/collected_data/fitness/collection_purposes=0
privacy/collected_data/payment_info/collected=false
privacy/collected_data/payment_info/linked_to_user=false
privacy/collected_data/payment_info/used_for_tracking=false
privacy/collected_data/payment_info/collection_purposes=0
privacy/collected_data/credit_info/collected=false
privacy/collected_data/credit_info/linked_to_user=false
privacy/collected_data/credit_info/used_for_tracking=false
privacy/collected_data/credit_info/collection_purposes=0
privacy/collected_data/other_financial_info/collected=false
privacy/collected_data/other_financial_info/linked_to_user=false
privacy/collected_data/other_financial_info/used_for_tracking=false
privacy/collected_data/other_financial_info/collection_purposes=0
privacy/collected_data/precise_location/collected=false
privacy/collected_data/precise_location/linked_to_user=false
privacy/collected_data/precise_location/used_for_tracking=false
privacy/collected_data/precise_location/collection_purposes=0
privacy/collected_data/coarse_location/collected=false
privacy/collected_data/coarse_location/linked_to_user=false
privacy/collected_data/coarse_location/used_for_tracking=false
privacy/collected_data/coarse_location/collection_purposes=0
privacy/collected_data/sensitive_info/collected=false
privacy/collected_data/sensitive_info/linked_to_user=false
privacy/collected_data/sensitive_info/used_for_tracking=false
privacy/collected_data/sensitive_info/collection_purposes=0
privacy/collected_data/contacts/collected=false
privacy/collected_data/contacts/linked_to_user=false
privacy/collected_data/contacts/used_for_tracking=false
privacy/collected_data/contacts/collection_purposes=0
privacy/collected_data/emails_or_text_messages/collected=false
privacy/collected_data/emails_or_text_messages/linked_to_user=false
privacy/collected_data/emails_or_text_messages/used_for_tracking=false
privacy/collected_data/emails_or_text_messages/collection_purposes=0
privacy/collected_data/photos_or_videos/collected=false
privacy/collected_data/photos_or_videos/linked_to_user=false
privacy/collected_data/photos_or_videos/used_for_tracking=false
privacy/collected_data/photos_or_videos/collection_purposes=0
privacy/collected_data/audio_data/collected=false
privacy/collected_data/audio_data/linked_to_user=false
privacy/collected_data/audio_data/used_for_tracking=false
privacy/collected_data/audio_data/collection_purposes=0
privacy/collected_data/gameplay_content/collected=false
privacy/collected_data/gameplay_content/linked_to_user=false
privacy/collected_data/gameplay_content/used_for_tracking=false
privacy/collected_data/gameplay_content/collection_purposes=0
privacy/collected_data/customer_support/collected=false
privacy/collected_data/customer_support/linked_to_user=false
privacy/collected_data/customer_support/used_for_tracking=false
privacy/collected_data/customer_support/collection_purposes=0
privacy/collected_data/other_user_content/collected=false
privacy/collected_data/other_user_content/linked_to_user=false
privacy/collected_data/other_user_content/used_for_tracking=false
privacy/collected_data/other_user_content/collection_purposes=0
privacy/collected_data/browsing_history/collected=false
privacy/collected_data/browsing_history/linked_to_user=false
privacy/collected_data/browsing_history/used_for_tracking=false
privacy/collected_data/browsing_history/collection_purposes=0
privacy/collected_data/search_hhistory/collected=false
privacy/collected_data/search_hhistory/linked_to_user=false
privacy/collected_data/search_hhistory/used_for_tracking=false
privacy/collected_data/search_hhistory/collection_purposes=0
privacy/collected_data/user_id/collected=false
privacy/collected_data/user_id/linked_to_user=false
privacy/collected_data/user_id/used_for_tracking=false
privacy/collected_data/user_id/collection_purposes=0
privacy/collected_data/device_id/collected=false
privacy/collected_data/device_id/linked_to_user=false
privacy/collected_data/device_id/used_for_tracking=false
privacy/collected_data/device_id/collection_purposes=0
privacy/collected_data/purchase_history/collected=false
privacy/collected_data/purchase_history/linked_to_user=false
privacy/collected_data/purchase_history/used_for_tracking=false
privacy/collected_data/purchase_history/collection_purposes=0
privacy/collected_data/product_interaction/collected=false
privacy/collected_data/product_interaction/linked_to_user=false
privacy/collected_data/product_interaction/used_for_tracking=false
privacy/collected_data/product_interaction/collection_purposes=0
privacy/collected_data/advertising_data/collected=false
privacy/collected_data/advertising_data/linked_to_user=false
privacy/collected_data/advertising_data/used_for_tracking=false
privacy/collected_data/advertising_data/collection_purposes=0
privacy/collected_data/other_usage_data/collected=false
privacy/collected_data/other_usage_data/linked_to_user=false
privacy/collected_data/other_usage_data/used_for_tracking=false
privacy/collected_data/other_usage_data/collection_purposes=0
privacy/collected_data/crash_data/collected=false
privacy/collected_data/crash_data/linked_to_user=false
privacy/collected_data/crash_data/used_for_tracking=false
privacy/collected_data/crash_data/collection_purposes=0
privacy/collected_data/performance_data/collected=false
privacy/collected_data/performance_data/linked_to_user=false
privacy/collected_data/performance_data/used_for_tracking=false
privacy/collected_data/performance_data/collection_purposes=0
privacy/collected_data/other_diagnostic_data/collected=false
privacy/collected_data/other_diagnostic_data/linked_to_user=false
privacy/collected_data/other_diagnostic_data/used_for_tracking=false
privacy/collected_data/other_diagnostic_data/collection_purposes=0
privacy/collected_data/environment_scanning/collected=false
privacy/collected_data/environment_scanning/linked_to_user=false
privacy/collected_data/environment_scanning/used_for_tracking=false
privacy/collected_data/environment_scanning/collection_purposes=0
privacy/collected_data/hands/collected=false
privacy/collected_data/hands/linked_to_user=false
privacy/collected_data/hands/used_for_tracking=false
privacy/collected_data/hands/collection_purposes=0
privacy/collected_data/head/collected=false
privacy/collected_data/head/linked_to_user=false
privacy/collected_data/head/used_for_tracking=false
privacy/collected_data/head/collection_purposes=0
privacy/collected_data/other_data_types/collected=false
privacy/collected_data/other_data_types/linked_to_user=false
privacy/collected_data/other_data_types/used_for_tracking=false
privacy/collected_data/other_data_types/collection_purposes=0
ssh_remote_deploy/enabled=false
ssh_remote_deploy/host="user@host_ip"
ssh_remote_deploy/port="22"
ssh_remote_deploy/extra_args_ssh=""
ssh_remote_deploy/extra_args_scp=""
ssh_remote_deploy/run_script="#!/usr/bin/env bash
unzip -o -q \"{temp_dir}/{archive_name}\" -d \"{temp_dir}\"
open \"{temp_dir}/{exe_name}.app\" --args {cmd_args}"
ssh_remote_deploy/cleanup_script="#!/usr/bin/env bash
kill $(pgrep -x -f \"{temp_dir}/{exe_name}.app/Contents/MacOS/{exe_name} {cmd_args}\")
rm -rf \"{temp_dir}\""
[preset.3]
name="Linux"
platform="Linux"
runnable=true
advanced_options=false
dedicated_server=false
custom_features=""
export_filter="all_resources"
include_filter=""
exclude_filter=""
export_path="../../Exports/Repurposed/Linux/RustHacker.x86_64"
patches=PackedStringArray()
encryption_include_filters=""
encryption_exclude_filters=""
seed=0
encrypt_pck=false
encrypt_directory=false
script_export_mode=2
[preset.3.options]
custom_template/debug=""
custom_template/release=""
debug/export_console_wrapper=1
binary_format/embed_pck=true
texture_format/s3tc_bptc=true
texture_format/etc2_astc=false
shader_baker/enabled=false
binary_format/architecture="x86_64"
ssh_remote_deploy/enabled=false
ssh_remote_deploy/host="user@host_ip"
ssh_remote_deploy/port="22"
ssh_remote_deploy/extra_args_ssh=""
ssh_remote_deploy/extra_args_scp=""
ssh_remote_deploy/run_script="#!/usr/bin/env bash
export DISPLAY=:0
unzip -o -q \"{temp_dir}/{archive_name}\" -d \"{temp_dir}\"
\"{temp_dir}/{exe_name}\" {cmd_args}"
ssh_remote_deploy/cleanup_script="#!/usr/bin/env bash
kill $(pgrep -x -f \"{temp_dir}/{exe_name} {cmd_args}\")
rm -rf \"{temp_dir}\""

View file

@ -60,7 +60,7 @@ horizontal_alignment = 1
[node name="Button" type="Button" parent="MarginContainer/VBoxContainer"]
layout_mode = 2
text = "Install Device"
text = "Install Device (cannot return)"
[node name="HBoxContainer2" type="HBoxContainer" parent="MarginContainer/VBoxContainer"]
layout_mode = 2

View file

@ -11,14 +11,13 @@ class_name Inventory
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
Locations.update_bubbles(type, filled_slots())
slots.assign(grid.get_children())
inv_label.text = inventory_name
for slot in slots:
slot.type = type
if type == "Inventory":
MouseTweaks.player_inventory = self
elif type != "Install":
elif type != "Install" and type != "Trash":
MouseTweaks.other_inventory = self
pass # Replace with function body.
@ -37,7 +36,6 @@ func _notification(what: int) -> void:
if data_bk:
data_bk.icon.show()
data_bk = null
Locations.update_bubbles(type, filled_slots())
#attempts to add the provided item to the inventory, returns true on success
func add_item(item : ItemData) -> bool:
@ -45,7 +43,6 @@ func add_item(item : ItemData) -> bool:
if slot.item == null:
slot.item = item
slot.update_ui()
Locations.update_bubbles(type, filled_slots())
return true # item placed successfully
return false # theres no space to add the item

View file

@ -10,3 +10,5 @@ class_name ItemData
@export var botnet_power : int = 0
@export var can_buy : bool = false
@export var description : String = ""
@export var rarity : String = ""
@export var sell_icon : bool = false

View file

@ -4,6 +4,8 @@ class_name ItemSlot
@export var icon : TextureRect
@export var item: ItemData
@export var label : Label
@export var botnet_icon : Control
@export var sell_icon : Control
var type : String
var block_taking : bool = false
const DEFAULT = preload("uid://hgjmkwj0dbqr")
@ -17,6 +19,8 @@ func update_ui():
if not item:
icon.texture = null
label.text = ""
sell_icon.visible = false
botnet_icon.visible = false
add_theme_stylebox_override("panel",DEFAULT)
return
@ -28,6 +32,8 @@ func update_ui():
icon.texture = item.icon
#tooltip_text = item.item_name
label.text = item.value
botnet_icon.visible = item.botnet_power > 0
sell_icon.visible = item.sell_icon

View file

@ -1,19 +1,23 @@
[gd_scene load_steps=5 format=3 uid="uid://dgqs20xf7l8c"]
[gd_scene load_steps=7 format=3 uid="uid://dgqs20xf7l8c"]
[ext_resource type="Script" uid="uid://cpd04flfh5nlc" path="res://inv_system/item_slot.gd" id="1_m11ft"]
[ext_resource type="StyleBox" uid="uid://hgjmkwj0dbqr" path="res://inv_system/item_panels/default.tres" id="1_mkcpq"]
[ext_resource type="Texture2D" uid="uid://b7jp850fqpa0j" path="res://icon.svg" id="3_0tnt0"]
[ext_resource type="Texture2D" uid="uid://bbu7dofi4u038" path="res://assets/blankIcon.png" id="4_0tnt0"]
[ext_resource type="Texture2D" uid="uid://dokuqh6jq4eti" path="res://assets/sellIcon.png" id="5_eh2fu"]
[sub_resource type="LabelSettings" id="LabelSettings_ab1u2"]
outline_size = 5
outline_color = Color(0, 0, 0, 1)
[node name="ItemSlot" type="Panel" node_paths=PackedStringArray("icon", "label")]
[node name="ItemSlot" type="Panel" node_paths=PackedStringArray("icon", "label", "botnet_icon", "sell_icon")]
custom_minimum_size = Vector2(50, 50)
theme_override_styles/panel = ExtResource("1_mkcpq")
script = ExtResource("1_m11ft")
icon = NodePath("Icon")
label = NodePath("Icon/Label")
botnet_icon = NodePath("icons/botnet_power")
sell_icon = NodePath("icons/sell_only")
[node name="Icon" type="TextureRect" parent="."]
layout_mode = 1
@ -46,5 +50,31 @@ text = "120 GB"
label_settings = SubResource("LabelSettings_ab1u2")
horizontal_alignment = 2
[node name="icons" type="HBoxContainer" parent="."]
layout_mode = 1
anchors_preset = 1
anchor_left = 1.0
anchor_right = 1.0
offset_left = -24.0
offset_bottom = 10.0
grow_horizontal = 0
alignment = 2
[node name="botnet_power" type="TextureRect" parent="icons"]
texture_filter = 1
custom_minimum_size = Vector2(16, 16)
layout_mode = 2
texture = ExtResource("4_0tnt0")
expand_mode = 1
stretch_mode = 4
[node name="sell_only" type="TextureRect" parent="icons"]
texture_filter = 1
custom_minimum_size = Vector2(16, 16)
layout_mode = 2
texture = ExtResource("5_eh2fu")
expand_mode = 1
stretch_mode = 4
[connection signal="mouse_entered" from="." to="." method="_on_mouse_entered"]
[connection signal="mouse_exited" from="." to="." method="_on_mouse_exited"]

View file

@ -5,7 +5,7 @@
[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://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://cuftm024jj0o2" path="res://assets/new 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://b6pddnr3aascg" path="res://assets/glyphs/mouse_left.png" id="13_klg10"]
@ -252,9 +252,9 @@ layout_mode = 2
[node name="TabContainer" type="TabContainer" parent="."]
layout_mode = 0
offset_left = 1.0
offset_top = 126.0
offset_top = 2.0
offset_right = 237.0
offset_bottom = 603.0
offset_bottom = 646.0
theme_override_colors/font_selected_color = Color(0.9490196, 0.9490196, 0, 1)
theme_override_colors/font_unselected_color = Color(0.99637884, 0.99637896, 0.99637896, 1)
theme_override_styles/tab_unselected = SubResource("StyleBoxFlat_txpda")
@ -366,20 +366,22 @@ 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
offset_left = 207.0
offset_right = 363.0
offset_bottom = 141.0
mouse_filter = 2
texture = ExtResource("8_icm48")
expand_mode = 1
[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
offset_left = 39.0
offset_top = 10.0
offset_right = 144.0
offset_bottom = 129.0
text = "View your salvaging recipes here"
horizontal_alignment = 1
vertical_alignment = 1
autowrap_mode = 2
[connection signal="pressed" from="Button" to="." method="_on_button_pressed"]

View file

@ -24,21 +24,21 @@ func _notification(what: int) -> void:
func calculate_sell_value():
if slots[0].item:
sell_label.text = str(floori(slots[0].item.buy_value / float(2)))
sell_label.text = "$" + str(floori(slots[0].item.buy_value / float(2)))
sell_button.disabled = false
else:
sell_label.text = "Place an item"
sell_button.disabled = true
if not Clock.has_time(15):
if not Clock.has_time(10):
sell_button.disabled = true
func _on_sell_button_pressed() -> void:
if slots[0].item and Clock.has_time(15):
if slots[0].item and Clock.has_time(10):
var sell_value : int = floori(slots[0].item.buy_value / float(2))
slots[0].item = null
slots[0].update_ui()
PlayerInventory.money += sell_value
Clock.use_time(15)
Clock.use_time(10)
calculate_sell_value()

View file

@ -55,6 +55,6 @@ text = "1234"
[node name="SellButton" type="Button" parent="MarginContainer/VBoxContainer"]
layout_mode = 2
text = "Sell! (Uses 15 time)"
text = "Sell! (Uses 10 time)"
[connection signal="pressed" from="MarginContainer/VBoxContainer/SellButton" to="." method="_on_sell_button_pressed"]

View file

@ -1,17 +1,10 @@
extends Inventory
@export var slot : ItemSlot
#@export var slot : ItemSlot
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
pass # Replace with function body.
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
pass
func _on_button_pressed() -> void:
slot.item = null
slot.update_ui()
empty_grid()
#slot.item = null
#slot.update_ui()

View file

@ -10,4 +10,5 @@ icon = ExtResource("1_i7fpe")
bin_chance = 2
buy_value = 50
can_buy = true
rarity = "Common"
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -11,4 +11,5 @@ icon = ExtResource("1_k071h")
custom_panel_style = ExtResource("1_8brb6")
bin_chance = 7
buy_value = 2
rarity = "Broken"
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -12,4 +12,5 @@ custom_panel_style = ExtResource("1_x7wm3")
bin_chance = 0
buy_value = 500
botnet_power = 2
rarity = "Rare"
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -9,4 +9,5 @@ item_name = "CPU"
icon = ExtResource("1_mh86d")
buy_value = 80
can_buy = true
rarity = "Common"
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -11,4 +11,6 @@ icon = ExtResource("2_v2wmo")
custom_panel_style = ExtResource("1_lhfs3")
bin_chance = 0
buy_value = 600
rarity = "Epic"
sell_icon = true
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -9,4 +9,5 @@ item_name = "Optical Drive"
icon = ExtResource("1_kdwp1")
buy_value = 35
can_buy = true
rarity = "Common"
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -12,4 +12,5 @@ custom_panel_style = ExtResource("1_j1gmi")
bin_chance = 0
buy_value = 1500
botnet_power = 4
rarity = "Epic"
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -12,4 +12,5 @@ custom_panel_style = ExtResource("1_jiyv5")
bin_chance = 3
buy_value = 500
can_buy = true
rarity = "Epic"
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -9,4 +9,5 @@ item_name = "Hard Disk Drive"
icon = ExtResource("1_8xwf0")
buy_value = 60
can_buy = true
rarity = "Common"
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -12,4 +12,5 @@ custom_panel_style = ExtResource("1_xyf87")
bin_chance = 0
buy_value = 850
botnet_power = 3
rarity = "Rare"
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -9,4 +9,5 @@ item_name = "Large Power Supply Unit"
icon = ExtResource("1_rjw1c")
buy_value = 80
can_buy = true
rarity = "Common"
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -12,4 +12,5 @@ custom_panel_style = ExtResource("1_wtpx3")
bin_chance = 0
buy_value = 600
botnet_power = 2
rarity = "Rare"
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -8,4 +8,5 @@ script = ExtResource("2_31pxd")
item_name = "Plastic Scrap"
icon = ExtResource("1_2haha")
can_buy = true
rarity = "Common"
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -11,4 +11,5 @@ icon = ExtResource("1_ad3tn")
custom_panel_style = ExtResource("1_ecsjn")
bin_chance = 0
buy_value = 60
rarity = "Uncommon"
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -7,4 +7,5 @@
script = ExtResource("2_4u113")
item_name = "Power Cell"
icon = ExtResource("1_lh7dq")
rarity = "Common"
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -9,4 +9,5 @@ item_name = "Ram Stick"
icon = ExtResource("1_bfuag")
buy_value = 80
can_buy = true
rarity = "Common"
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -12,4 +12,5 @@ custom_panel_style = ExtResource("1_70din")
bin_chance = 0
buy_value = 3000
botnet_power = 11
rarity = "Legendary"
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -9,4 +9,5 @@ item_name = "Small Power Supply Unit"
icon = ExtResource("1_62foo")
buy_value = 20
can_buy = true
rarity = "Common"
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -12,4 +12,5 @@ custom_panel_style = ExtResource("1_kwg8r")
bin_chance = 3
buy_value = 140
can_buy = true
rarity = "Rare"
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -11,4 +11,6 @@ icon = ExtResource("2_pugmu")
custom_panel_style = ExtResource("1_pugmu")
bin_chance = 0
buy_value = 400
rarity = "Rare"
sell_icon = true
metadata/_custom_type_script = "uid://dccraom7a7e8d"

View file

@ -8,12 +8,16 @@
config_version=5
[animation]
compatibility/default_parent_skeleton_in_mesh_instance_3d=true
[application]
config/name="Repurposed Jam"
config/name="Rust Hacker"
run/main_scene="uid://dxr1ergmn3ij7"
config/features=PackedStringArray("4.5", "GL Compatibility")
config/icon="res://icon.svg"
config/features=PackedStringArray("4.6", "GL Compatibility")
config/icon="uid://csov3hvc14ki4"
[autoload]
@ -42,6 +46,7 @@ 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)
]
}
@ -49,3 +54,4 @@ quick_move={
renderer/rendering_method="gl_compatibility"
renderer/rendering_method.mobile="gl_compatibility"
textures/vram_compression/import_etc2_astc=true

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=24 format=3 uid="uid://cix7xfnu1305i"]
[gd_scene load_steps=44 format=3 uid="uid://cix7xfnu1305i"]
[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"]
@ -14,6 +14,16 @@
[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"]
[ext_resource type="Texture2D" uid="uid://0rbtmfc2gnk1" path="res://credits/people/codesilver.webp" id="15_sxold"]
[ext_resource type="Texture2D" uid="uid://cnvy2ke5e3o10" path="res://credits/people/cookie2.webp" id="16_olp7g"]
[ext_resource type="Texture2D" uid="uid://ew8luvkit28c" path="res://credits/people/eevee.webp" id="17_olp7g"]
[ext_resource type="Texture2D" uid="uid://ca6q21e5hpqw3" path="res://credits/people/eleanor.webp" id="18_agqj7"]
[ext_resource type="Texture2D" uid="uid://br7h5684ckr8o" path="res://credits/people/offbytwodev.png" id="19_f3h2w"]
[ext_resource type="Texture2D" uid="uid://bc1iy6oyxud2r" path="res://credits/people/zobzi.png" id="20_e4uir"]
[ext_resource type="Texture2D" uid="uid://bho0qkoyms5tt" path="res://credits/people/pixel-robert.png" id="21_4t8yx"]
[ext_resource type="Texture2D" uid="uid://xtku1tcmtpgd" path="res://credits/people/Dragon's Isle Software.png" id="22_5hxgf"]
[ext_resource type="Texture2D" uid="uid://bp123ijmb0vhp" path="res://credits/people/DefectiveDev.png" id="23_8t73l"]
[ext_resource type="Texture2D" uid="uid://cl7kv08matr2o" path="res://credits/people/Playful Crow.png" id="24_u62as"]
[sub_resource type="Resource" id="Resource_7lgdl"]
script = ExtResource("6_7lgdl")
@ -87,6 +97,86 @@ custom_panel_style = ExtResource("7_ih6pn")
buy_value = 0
metadata/_custom_type_script = "uid://dccraom7a7e8d"
[sub_resource type="Resource" id="Resource_f3h2w"]
script = ExtResource("6_7lgdl")
item_name = "CodeSilver"
icon = ExtResource("15_sxold")
custom_panel_style = ExtResource("7_ih6pn")
buy_value = 0
metadata/_custom_type_script = "uid://dccraom7a7e8d"
[sub_resource type="Resource" id="Resource_e4uir"]
script = ExtResource("6_7lgdl")
item_name = "Cookie 2 Electric Boogaloo#0969"
icon = ExtResource("16_olp7g")
custom_panel_style = ExtResource("7_ih6pn")
buy_value = 0
metadata/_custom_type_script = "uid://dccraom7a7e8d"
[sub_resource type="Resource" id="Resource_g801i"]
script = ExtResource("6_7lgdl")
item_name = "EeveeningRain"
icon = ExtResource("17_olp7g")
custom_panel_style = ExtResource("7_ih6pn")
buy_value = 0
metadata/_custom_type_script = "uid://dccraom7a7e8d"
[sub_resource type="Resource" id="Resource_4t8yx"]
script = ExtResource("6_7lgdl")
item_name = "Eleanor <3"
icon = ExtResource("18_agqj7")
custom_panel_style = ExtResource("7_ih6pn")
buy_value = 0
metadata/_custom_type_script = "uid://dccraom7a7e8d"
[sub_resource type="Resource" id="Resource_5hxgf"]
script = ExtResource("6_7lgdl")
item_name = "OffByTwoDev"
icon = ExtResource("19_f3h2w")
custom_panel_style = ExtResource("7_ih6pn")
buy_value = 0
metadata/_custom_type_script = "uid://dccraom7a7e8d"
[sub_resource type="Resource" id="Resource_8t73l"]
script = ExtResource("6_7lgdl")
item_name = "zobzi"
icon = ExtResource("20_e4uir")
custom_panel_style = ExtResource("7_ih6pn")
buy_value = 0
metadata/_custom_type_script = "uid://dccraom7a7e8d"
[sub_resource type="Resource" id="Resource_u62as"]
script = ExtResource("6_7lgdl")
item_name = "pixel-robert"
icon = ExtResource("21_4t8yx")
custom_panel_style = ExtResource("7_ih6pn")
buy_value = 0
metadata/_custom_type_script = "uid://dccraom7a7e8d"
[sub_resource type="Resource" id="Resource_gyrtj"]
script = ExtResource("6_7lgdl")
item_name = "Dragon's Isle Software"
icon = ExtResource("22_5hxgf")
custom_panel_style = ExtResource("7_ih6pn")
buy_value = 0
metadata/_custom_type_script = "uid://dccraom7a7e8d"
[sub_resource type="Resource" id="Resource_aqilg"]
script = ExtResource("6_7lgdl")
item_name = "DefectiveDev"
icon = ExtResource("23_8t73l")
custom_panel_style = ExtResource("7_ih6pn")
buy_value = 0
metadata/_custom_type_script = "uid://dccraom7a7e8d"
[sub_resource type="Resource" id="Resource_ect1l"]
script = ExtResource("6_7lgdl")
item_name = "Playful Crow"
icon = ExtResource("24_u62as")
custom_panel_style = ExtResource("7_ih6pn")
buy_value = 0
metadata/_custom_type_script = "uid://dccraom7a7e8d"
[node name="Credits" type="Control"]
layout_mode = 3
anchors_preset = 15
@ -226,6 +316,46 @@ item = SubResource("Resource_olp7g")
layout_mode = 2
item = SubResource("Resource_agqj7")
[node name="codesilver" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScrollContainer/VBoxContainer/HFlowContainer2" instance=ExtResource("9_ih6pn")]
layout_mode = 2
item = SubResource("Resource_f3h2w")
[node name="cookie2" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScrollContainer/VBoxContainer/HFlowContainer2" instance=ExtResource("9_ih6pn")]
layout_mode = 2
item = SubResource("Resource_e4uir")
[node name="eevee" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScrollContainer/VBoxContainer/HFlowContainer2" instance=ExtResource("9_ih6pn")]
layout_mode = 2
item = SubResource("Resource_g801i")
[node name="eleanor" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScrollContainer/VBoxContainer/HFlowContainer2" instance=ExtResource("9_ih6pn")]
layout_mode = 2
item = SubResource("Resource_4t8yx")
[node name="offbytwodev" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScrollContainer/VBoxContainer/HFlowContainer2" instance=ExtResource("9_ih6pn")]
layout_mode = 2
item = SubResource("Resource_5hxgf")
[node name="zobzi" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScrollContainer/VBoxContainer/HFlowContainer2" instance=ExtResource("9_ih6pn")]
layout_mode = 2
item = SubResource("Resource_8t73l")
[node name="pixel-robert" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScrollContainer/VBoxContainer/HFlowContainer2" instance=ExtResource("9_ih6pn")]
layout_mode = 2
item = SubResource("Resource_u62as")
[node name="Dragon\'s Isle Software" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScrollContainer/VBoxContainer/HFlowContainer2" instance=ExtResource("9_ih6pn")]
layout_mode = 2
item = SubResource("Resource_gyrtj")
[node name="DefectiveDev" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScrollContainer/VBoxContainer/HFlowContainer2" instance=ExtResource("9_ih6pn")]
layout_mode = 2
item = SubResource("Resource_aqilg")
[node name="Playful Crow" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScrollContainer/VBoxContainer/HFlowContainer2" instance=ExtResource("9_ih6pn")]
layout_mode = 2
item = SubResource("Resource_ect1l")
[node name="other" type="RichTextLabel" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScrollContainer/VBoxContainer"]
layout_mode = 2
bbcode_enabled = true
@ -264,4 +394,5 @@ fit_content = true
layout_mode = 2
text = "Back to Menu"
[connection signal="meta_clicked" from="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/ScrollContainer/VBoxContainer/other" to="." method="_on_other_meta_clicked"]
[connection signal="pressed" from="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/MenuButton" to="." method="_on_menu_button_pressed"]

View file

@ -1,28 +0,0 @@
[gd_scene load_steps=5 format=3 uid="uid://b5p6vsbegoe4y"]
[ext_resource type="Script" uid="uid://beop315mc4qii" path="res://scenes/everywhere_controller.gd" id="1_mois3"]
[ext_resource type="PackedScene" uid="uid://dsfal3m4siap2" path="res://scenes/ewaste.tscn" id="2_5hq0i"]
[ext_resource type="PackedScene" uid="uid://dbxymsdyvbe2p" path="res://scenes/workshop.tscn" id="3_1kk7g"]
[ext_resource type="PackedScene" uid="uid://cu2yyw3f2avub" path="res://scenes/room.tscn" id="4_j0itd"]
[node name="Everywhere" type="Control" node_paths=PackedStringArray("node_ewaste", "node_workshop", "node_room")]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
script = ExtResource("1_mois3")
node_ewaste = NodePath("ewaste")
node_workshop = NodePath("Workshop")
node_room = NodePath("room")
[node name="ewaste" parent="." instance=ExtResource("2_5hq0i")]
layout_mode = 1
[node name="Workshop" parent="." instance=ExtResource("3_1kk7g")]
layout_mode = 1
[node name="room" parent="." instance=ExtResource("4_j0itd")]
layout_mode = 1

View file

@ -1,25 +0,0 @@
extends Control
@export var node_ewaste : Control
@export var node_workshop : Control
@export var node_room : Control
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
Locations.moved.connect(move_detected)
pass # Replace with function body.
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
node_ewaste.visible = Locations.current_location == Locations.Location.ewaste
node_workshop.visible = Locations.current_location == Locations.Location.workshop
node_room.visible = Locations.current_location == Locations.Location.room
func move_detected():
if Locations.current_location == Locations.Location.ewaste:
node_ewaste._ready()
elif Locations.current_location == Locations.Location.workshop:
node_workshop._ready()
elif Locations.current_location == Locations.Location.room:
node_room._ready()

View file

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

View file

@ -1,11 +1,12 @@
[gd_scene load_steps=5 format=3 uid="uid://dsfal3m4siap2"]
[gd_scene load_steps=6 format=3 uid="uid://dsfal3m4siap2"]
[ext_resource type="Script" uid="uid://c6oycdae5wvjf" path="res://inv_system/inventory.gd" id="1_6uqi0"]
[ext_resource type="Texture2D" uid="uid://dj487wauiay6i" path="res://assets/ewase bins.png" id="1_g14j6"]
[ext_resource type="Script" uid="uid://dal8g1ce37r3w" path="res://demo_scene.gd" id="1_vbegm"]
[ext_resource type="Texture2D" uid="uid://v01a44neaam6" path="res://assets/bubble.png" id="5_k36n4"]
[ext_resource type="PackedScene" uid="uid://dgqs20xf7l8c" path="res://inv_system/item_slot.tscn" id="7_xersf"]
[node name="ewaste" type="Control" node_paths=PackedStringArray("bin_inventory", "loot_button")]
[node name="ewaste" type="Control" node_paths=PackedStringArray("bin_inventory", "loot_button", "loot_bubble")]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
@ -16,6 +17,7 @@ mouse_filter = 2
script = ExtResource("1_vbegm")
bin_inventory = NodePath("BinPanel")
loot_button = NodePath("LootButton")
loot_bubble = NodePath("lootBubble")
[node name="TextureRect" type="TextureRect" parent="."]
z_index = -3
@ -136,6 +138,29 @@ grow_horizontal = 2
grow_vertical = 2
text = "Return to workshop"
[node name="lootBubble" type="TextureRect" parent="."]
self_modulate = Color(1, 0, 0.23137255, 0.6039216)
layout_mode = 0
offset_left = 762.0
offset_top = 196.0
offset_right = 998.0
offset_bottom = 286.0
mouse_filter = 2
texture = ExtResource("5_k36n4")
[node name="Label" type="Label" parent="lootBubble"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
offset_top = 7.0
offset_bottom = -26.0
grow_horizontal = 2
grow_vertical = 2
text = "Click to get items!"
horizontal_alignment = 1
vertical_alignment = 1
[connection signal="pressed" from="BinPanel/MarginContainer/VBoxContainer/Delete" to="." method="_on_delete_pressed"]
[connection signal="pressed" from="LootButton" to="." method="_on_loot_button_pressed"]
[connection signal="pressed" from="ReturnButton" to="." method="_on_return_button_pressed"]

View file

@ -10,11 +10,6 @@ var current_location : Location
@export var move_blocker_panel : PanelContainer
@export var selection_indicator : Panel
signal moved
@export var ewaste_bubble : Label
@export var workshop_bubble : Label
@export var room_bubble : Label
enum Location{
ewaste,
workshop,
@ -23,7 +18,6 @@ enum Location{
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
hide()
current_location = Location.workshop
pass # Replace with function body.
@ -31,7 +25,7 @@ func _ready() -> void:
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
#move_blocker_panel.visible = block_moving
move_blocker_panel.visible = block_moving
if current_location == Location.ewaste:
ewaste_button.self_modulate = selected_color
@ -51,11 +45,10 @@ 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
moved.emit()
#get_tree().change_scene_to_file("res://scenes/ewaste.tscn")
get_tree().change_scene_to_file("res://scenes/ewaste.tscn")
func goto_workshop():
selection_indicator.reparent(workshop_button)
@ -63,49 +56,12 @@ func goto_workshop():
#if current_location == Location.workshop:
#return
current_location = Location.workshop
moved.emit()
#get_tree().change_scene_to_file("res://scenes/workshop.tscn")
get_tree().change_scene_to_file("res://scenes/workshop.tscn")
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
moved.emit()
#get_tree().change_scene_to_file("res://scenes/room.tscn")
var filled_loot : int = 0
var filled_crafting : int = 0
var filled_trash : int = 0
var filled_sell : int = 0
var filled_install : int = 0
func reset_bubbles():
filled_loot = 0
filled_crafting = 0
filled_trash = 0
filled_sell = 0
filled_install = 0
func update_bubbles(inventory : String, slots_filled : int):
match inventory:
"Loot":
filled_loot = slots_filled
"Crafting":
filled_crafting = slots_filled
"Trash":
filled_trash = slots_filled
"Sell":
filled_sell = slots_filled
"Install":
filled_install = slots_filled
ewaste_bubble.text = str(filled_loot)
workshop_bubble.text = str(filled_crafting + filled_trash)
room_bubble.text = str(filled_sell + filled_install)
ewaste_bubble.get_parent().visible = filled_loot > 0
workshop_bubble.get_parent().visible = filled_crafting + filled_trash > 0
room_bubble.get_parent().visible = filled_sell + filled_install > 0
pass
get_tree().change_scene_to_file("res://scenes/room.tscn")

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=9 format=3 uid="uid://b5dh55o5mgima"]
[gd_scene load_steps=8 format=3 uid="uid://b5dh55o5mgima"]
[ext_resource type="Script" uid="uid://bxymsudka4nnb" path="res://scenes/manager/location_manager.gd" id="1_o5d0c"]
[ext_resource type="Texture2D" uid="uid://m10v3leibbil" path="res://assets/icons/bin.png" id="2_qjxm7"]
@ -18,13 +18,6 @@ corner_radius_bottom_right = 3
corner_radius_bottom_left = 3
corner_detail = 5
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_1ogtx"]
bg_color = Color(0.86303645, 0, 0.34692708, 1)
corner_radius_top_left = 50
corner_radius_top_right = 50
corner_radius_bottom_right = 50
corner_radius_bottom_left = 50
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_qjxm7"]
content_margin_left = 0.0
content_margin_top = 0.0
@ -42,7 +35,7 @@ corner_radius_bottom_right = 3
corner_radius_bottom_left = 3
corner_detail = 5
[node name="LocationManager" type="Control" node_paths=PackedStringArray("ewaste_button", "workshop_button", "room_button", "move_blocker_panel", "selection_indicator", "ewaste_bubble", "workshop_bubble", "room_bubble")]
[node name="LocationManager" type="Control" node_paths=PackedStringArray("ewaste_button", "workshop_button", "room_button", "move_blocker_panel", "selection_indicator")]
z_index = 3
layout_mode = 3
anchors_preset = 15
@ -59,55 +52,36 @@ workshop_button = NodePath("PanelContainer/VBoxContainer/MoveWorkshop")
room_button = NodePath("PanelContainer/VBoxContainer/MoveHome")
move_blocker_panel = NodePath("Move blocker")
selection_indicator = NodePath("PanelContainer/VBoxContainer/MoveWorkshop/Selected")
ewaste_bubble = NodePath("PanelContainer/VBoxContainer/MoveEwaste/Bubble/ewasteBubble")
workshop_bubble = NodePath("PanelContainer/VBoxContainer/MoveWorkshop/Bubble2/workshopBubble")
room_bubble = NodePath("PanelContainer/VBoxContainer/MoveHome/Bubble3/roomBubble")
[node name="PanelContainer" type="PanelContainer" parent="."]
layout_mode = 0
offset_left = 615.0
offset_top = 175.0
offset_right = 687.0
offset_bottom = 399.0
offset_left = 608.0
offset_top = 120.0
offset_right = 693.0
offset_bottom = 419.0
theme_override_styles/panel = SubResource("StyleBoxFlat_dc45l")
[node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer"]
layout_mode = 2
[node name="MoveEwaste" type="Button" parent="PanelContainer/VBoxContainer"]
custom_minimum_size = Vector2(74, 97)
layout_mode = 2
theme_override_constants/h_separation = 194
text = "ewaste"
icon = ExtResource("2_qjxm7")
[node name="Bubble" type="Panel" parent="PanelContainer/VBoxContainer/MoveEwaste"]
z_index = 4
layout_mode = 1
anchors_preset = 6
anchor_left = 1.0
anchor_top = 0.5
anchor_right = 1.0
anchor_bottom = 0.5
offset_left = -14.0
offset_top = -13.0
offset_right = 13.0
offset_bottom = 14.0
grow_horizontal = 0
grow_vertical = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_1ogtx")
[node name="ewasteBubble" type="Label" parent="PanelContainer/VBoxContainer/MoveEwaste/Bubble"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
text = "10"
horizontal_alignment = 1
vertical_alignment = 1
icon_alignment = 1
vertical_icon_alignment = 0
expand_icon = true
[node name="MoveWorkshop" type="Button" parent="PanelContainer/VBoxContainer"]
custom_minimum_size = Vector2(0, 97)
layout_mode = 2
text = "workshop"
icon = ExtResource("3_1ogtx")
icon_alignment = 1
vertical_icon_alignment = 0
expand_icon = true
[node name="Selected" type="Panel" parent="PanelContainer/VBoxContainer/MoveWorkshop"]
layout_mode = 1
@ -119,71 +93,21 @@ grow_vertical = 2
mouse_filter = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_qjxm7")
[node name="Bubble2" type="Panel" parent="PanelContainer/VBoxContainer/MoveWorkshop"]
z_index = 4
layout_mode = 1
anchors_preset = 6
anchor_left = 1.0
anchor_top = 0.5
anchor_right = 1.0
anchor_bottom = 0.5
offset_left = -14.0
offset_top = -13.0
offset_right = 13.0
offset_bottom = 14.0
grow_horizontal = 0
grow_vertical = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_1ogtx")
[node name="workshopBubble" type="Label" parent="PanelContainer/VBoxContainer/MoveWorkshop/Bubble2"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
text = "10"
horizontal_alignment = 1
vertical_alignment = 1
[node name="MoveHome" type="Button" parent="PanelContainer/VBoxContainer"]
custom_minimum_size = Vector2(0, 97)
layout_mode = 2
text = "home"
icon = ExtResource("4_5p1uq")
[node name="Bubble3" type="Panel" parent="PanelContainer/VBoxContainer/MoveHome"]
z_index = 4
layout_mode = 1
anchors_preset = 6
anchor_left = 1.0
anchor_top = 0.5
anchor_right = 1.0
anchor_bottom = 0.5
offset_left = -14.0
offset_top = -13.0
offset_right = 13.0
offset_bottom = 14.0
grow_horizontal = 0
grow_vertical = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_1ogtx")
[node name="roomBubble" type="Label" parent="PanelContainer/VBoxContainer/MoveHome/Bubble3"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
text = "10"
horizontal_alignment = 1
vertical_alignment = 1
icon_alignment = 1
vertical_icon_alignment = 0
expand_icon = true
[node name="Move blocker" type="PanelContainer" parent="."]
visible = false
layout_mode = 0
offset_left = 603.0
offset_top = 165.0
offset_top = 113.0
offset_right = 699.0
offset_bottom = 409.0
offset_bottom = 426.0
theme_override_styles/panel = ExtResource("5_qjxm7")
[node name="Label" type="Label" parent="Move blocker"]

View file

@ -23,8 +23,7 @@ func _on_play_button_pressed() -> void:
PlayerInventory.show()
Clock.show()
Locations.show()
Locations.goto_workshop()
get_tree().change_scene_to_file("res://scenes/everywhere.tscn")
Locations.goto_ewaste()
#Locations.current_location = Locations.Location.workshop
#get_tree().change_scene_to_file("res://scenes/workshop.tscn")
@ -35,3 +34,7 @@ func _on_credits_button_pressed() -> void:
func _on_menu_button_pressed() -> void:
get_tree().change_scene_to_file("res://scenes/menu.tscn")
func _on_other_meta_clicked(meta: Variant) -> void:
OS.shell_open(str(meta))

View file

@ -1,10 +1,10 @@
[gd_scene load_steps=4 format=3 uid="uid://dxr1ergmn3ij7"]
[gd_scene 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"]
[node name="Menu" type="Control" unique_id=946585711]
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="."]
[node name="TextureRect" type="TextureRect" parent="." unique_id=1195571599]
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="."]
[node name="MarginContainer" type="MarginContainer" parent="." unique_id=1511744221]
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"]
[node name="PanelContainer" type="PanelContainer" parent="MarginContainer" unique_id=975250671]
layout_mode = 2
[node name="MarginContainer" type="MarginContainer" parent="MarginContainer/PanelContainer"]
[node name="MarginContainer" type="MarginContainer" parent="MarginContainer/PanelContainer" unique_id=855132638]
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"]
[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer/PanelContainer/MarginContainer" unique_id=624679420]
layout_mode = 2
alignment = 1
[node name="TextureRect" type="TextureRect" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer"]
[node name="TextureRect" type="TextureRect" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=43948588]
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"]
[node name="RichTextLabel" type="RichTextLabel" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=1902968766]
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"]
[node name="RichTextLabel2" type="RichTextLabel" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=944308179]
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"]
[node name="Label" type="Label" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=267810087]
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"]
[node name="HSeparator" type="HSeparator" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=1578980899]
layout_mode = 2
[node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer"]
[node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=1836411650]
layout_mode = 2
[node name="PlayButton" type="Button" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer"]
[node name="PlayButton" type="Button" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer" unique_id=457532667]
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"]
[node name="CreditsButton" type="Button" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer" unique_id=877999290]
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"]
[node name="RichTextLabel3" type="RichTextLabel" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=194483359]
visible = false
layout_mode = 2
bbcode_enabled = true
@ -108,14 +108,28 @@ Octodemy's Inventory Tutorial
Item Icons: (todo)"
fit_content = true
[node name="HSeparator2" type="HSeparator" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer"]
[node name="HSeparator2" type="HSeparator" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=1398039320]
visible = false
layout_mode = 2
[node name="Label2" type="Label" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer"]
[node name="Label2" type="Label" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=418071822]
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"]

View file

@ -6,7 +6,6 @@ extends Control
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
sell_panel._ready()
pass # Replace with function body.

View file

@ -3,16 +3,17 @@ extends Control
@export var ewaste_button : Button
@export var computer_button : Button
@export var crafting_inv : Inventory
@export var trash_inv : Inventory
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
crafting_inv._ready()
pass # Replace with function body.
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
Locations.block_moving = crafting_inv.filled_slots() > 0
Locations.block_moving = crafting_inv.filled_slots() > 0 or trash_inv.filled_slots() > 0
#if crafting_inv.filled_slots() > 0:
#ewaste_button.disabled = true
#computer_button.disabled = true

View file

@ -6,7 +6,7 @@
[ext_resource type="Script" uid="uid://dm7x3etlucffq" path="res://inv_system/trash_slot.gd" id="4_0t7iv"]
[ext_resource type="PackedScene" uid="uid://dgqs20xf7l8c" path="res://inv_system/item_slot.tscn" id="4_4103c"]
[node name="Workshop" type="Control" node_paths=PackedStringArray("ewaste_button", "computer_button", "crafting_inv")]
[node name="Workshop" type="Control" node_paths=PackedStringArray("ewaste_button", "computer_button", "crafting_inv", "trash_inv")]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
@ -18,6 +18,7 @@ script = ExtResource("1_g1tdj")
ewaste_button = NodePath("GotoEwaste")
computer_button = NodePath("GotoComputer")
crafting_inv = NodePath("CraftingPanel")
trash_inv = NodePath("TrashSlot")
[node name="TextureRect" type="TextureRect" parent="."]
layout_mode = 1
@ -62,7 +63,7 @@ offset_top = 189.0
offset_right = 1039.0
offset_bottom = 444.0
[node name="TrashSlot" type="PanelContainer" parent="." node_paths=PackedStringArray("slot", "slots", "grid", "inv_label")]
[node name="TrashSlot" type="PanelContainer" parent="." node_paths=PackedStringArray("slots", "grid", "inv_label")]
modulate = Color(1, 0.31965953, 0.2533799, 1)
layout_mode = 0
offset_left = 893.0
@ -70,13 +71,11 @@ offset_top = 486.0
offset_right = 1026.0
offset_bottom = 573.0
script = ExtResource("4_0t7iv")
slot = NodePath("MarginContainer/VBoxContainer/HBoxContainer/GridContainer/ItemSlot")
inventory_name = "Trash Slot"
slots = [NodePath("MarginContainer/VBoxContainer/HBoxContainer/GridContainer/ItemSlot")]
type = "Trash"
grid = NodePath("MarginContainer/VBoxContainer/HBoxContainer/GridContainer")
inv_label = NodePath("MarginContainer/VBoxContainer/Label")
metadata/_custom_type_script = "uid://c6oycdae5wvjf"
[node name="MarginContainer" type="MarginContainer" parent="TrashSlot"]
layout_mode = 2

View file

@ -36,7 +36,7 @@ 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"
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"
[sub_resource type="Resource" id="Resource_cb2q0"]

View file

@ -3,6 +3,8 @@ extends PanelContainer
@export var tooltip_label : RichTextLabel
@export var exdata_box : VBoxContainer
@export var exdata_label : Label
@export var rarity_label : Label
@export var rarity_colors : Dictionary[String,Color]
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
@ -22,6 +24,13 @@ func show_tip(item : ItemData, extra : String = ""):
tooltip_label.text += "\nSell Value: $"+str(floori(item.buy_value/float(2)))
if item.botnet_power > 0:
tooltip_label.text += "\n[color=orchid]Botnet Power: " + str(item.botnet_power) +"[/color]"
if item.rarity != "":
rarity_label.show()
rarity_label.text = item.rarity
if rarity_colors.has(item.rarity):
rarity_label.self_modulate = rarity_colors.get(item.rarity)
else:
rarity_label.hide()
if extra != "":
exdata_box.show()
exdata_label.text = extra

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=3 format=3 uid="uid://sb2wq874p37j"]
[gd_scene load_steps=6 format=3 uid="uid://sb2wq874p37j"]
[ext_resource type="Script" uid="uid://cbta38dhunndc" path="res://tooltip.gd" id="1_gwequ"]
@ -17,8 +17,17 @@ corner_radius_top_right = 3
corner_radius_bottom_right = 3
corner_radius_bottom_left = 3
[node name="Tooltip" type="PanelContainer" node_paths=PackedStringArray("tooltip_label", "exdata_box", "exdata_label")]
z_index = 3
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_gwequ"]
content_margin_right = 5.0
[sub_resource type="FontVariation" id="FontVariation_gwequ"]
variation_transform = Transform2D(1, 0.35, 0, 1, 0, 0)
[sub_resource type="LabelSettings" id="LabelSettings_oxk8h"]
font = SubResource("FontVariation_gwequ")
[node name="Tooltip" type="PanelContainer" node_paths=PackedStringArray("tooltip_label", "exdata_box", "exdata_label", "rarity_label")]
z_index = 7
offset_right = 95.0
offset_bottom = 31.0
size_flags_horizontal = 2
@ -29,6 +38,14 @@ script = ExtResource("1_gwequ")
tooltip_label = NodePath("VBoxContainer/Label")
exdata_box = NodePath("VBoxContainer/Extradata")
exdata_label = NodePath("VBoxContainer/Extradata/Label")
rarity_label = NodePath("VBoxContainer/rarity")
rarity_colors = Dictionary[String, Color]({
"Common": Color(1, 1, 1, 1),
"Epic": Color(0.8087111, 0.40824994, 0.9999972, 1),
"Legendary": Color(1, 0.7529412, 0, 1),
"Rare": Color(0.38142374, 0.9132181, 0.9999998, 1),
"Uncommon": Color(0.59956974, 1, 0.59689647, 1)
})
[node name="VBoxContainer" type="VBoxContainer" parent="."]
layout_mode = 2
@ -52,3 +69,10 @@ layout_mode = 2
[node name="Label" type="Label" parent="VBoxContainer/Extradata"]
layout_mode = 2
text = "Extra data does here"
[node name="rarity" type="Label" parent="VBoxContainer"]
layout_mode = 2
theme_override_styles/normal = SubResource("StyleBoxEmpty_gwequ")
text = "fdsfdsf"
label_settings = SubResource("LabelSettings_oxk8h")
horizontal_alignment = 2