Keycards and mapping

This commit is contained in:
MaddoScientisto 2025-03-19 22:00:03 +01:00
commit fbe8a52e06
20 changed files with 446 additions and 38 deletions

View file

@ -0,0 +1,23 @@
[gd_resource type="Resource" script_class="LootItem" load_steps=4 format=3 uid="uid://b2vyr1tcm4rc1"]
[ext_resource type="Texture2D" uid="uid://ckpehix3prcx5" path="res://Sprites/Items/YellowKeycard_Small.png" id="2_42j5t"]
[ext_resource type="Script" uid="uid://epnwjptvks3t" path="res://Scripts/Resources/LootItem.cs" id="4_tfyxc"]
[sub_resource type="AtlasTexture" id="AtlasTexture_ew85h"]
atlas = ExtResource("2_42j5t")
region = Rect2(0, 0, 16.0056, 16)
[resource]
script = ExtResource("4_tfyxc")
ItemName = &"Yellow Keycard"
ItemDescription = &"Opens Yellow KeyPads"
ItemKey = &"YELLOW_KEY"
Item = 0
Amount = 1
Max = 1
PickupIfMaxed = false
ConsumeOnUse = false
UiType = 1
Selectable = false
InventorySprite = SubResource("AtlasTexture_ew85h")
DropScenePath = &"res://Scenes/Items/Yellow_Keycard.tscn"

View file

@ -1,19 +1,54 @@
[gd_scene load_steps=5 format=3 uid="uid://byjq8xpx4crfd"]
[gd_scene load_steps=11 format=3 uid="uid://byjq8xpx4crfd"]
[ext_resource type="Script" uid="uid://duhodrhcnoslh" path="res://Scripts/Interactables/Switch.cs" id="1_qh7tc"]
[ext_resource type="Resource" uid="uid://cj5aa7btaw6q0" path="res://Resources/Items/Blue_Keycard.tres" id="2_0wao8"]
[ext_resource type="Texture2D" uid="uid://bc1383k5nnuyy" path="res://Sprites/Actors/Blue_Card_Reader.png" id="3_bdcur"]
[ext_resource type="Script" uid="uid://epnwjptvks3t" path="res://Scripts/Resources/LootItem.cs" id="2_k5c4k"]
[ext_resource type="Texture2D" uid="uid://c1hcyxn2og2kq" path="res://Sprites/Actors/Key_Reader.png" id="4_ma3tr"]
[ext_resource type="Texture2D" uid="uid://dsf7jj36mk0xp" path="res://Sprites/Actors/KeyReaderOverlay.png" id="5_mcwj3"]
[sub_resource type="CircleShape2D" id="CircleShape2D_vvpve"]
[sub_resource type="AtlasTexture" id="AtlasTexture_1r0vh"]
atlas = ExtResource("4_ma3tr")
region = Rect2(0, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_vnkqd"]
atlas = ExtResource("4_ma3tr")
region = Rect2(16, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_330vc"]
atlas = ExtResource("4_ma3tr")
region = Rect2(32, 0, 16, 16)
[sub_resource type="SpriteFrames" id="SpriteFrames_ck7ns"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_1r0vh")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_vnkqd")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_330vc")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[node name="KeycardReaderBlue" type="Area2D" groups=["Interactable"]]
collision_layer = 4
collision_mask = 2
script = ExtResource("1_qh7tc")
Requirements = [ExtResource("2_0wao8")]
Requirements = Array[ExtResource("2_k5c4k")]([ExtResource("2_0wao8")])
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
shape = SubResource("CircleShape2D_vvpve")
[node name="Sprite2D" type="Sprite2D" parent="."]
texture = ExtResource("3_bdcur")
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
sprite_frames = SubResource("SpriteFrames_ck7ns")
[node name="Sprite2D" type="Sprite2D" parent="AnimatedSprite2D"]
modulate = Color(0, 0.329412, 0.984314, 1)
texture = ExtResource("5_mcwj3")

View file

@ -1,19 +1,54 @@
[gd_scene load_steps=5 format=3 uid="uid://drdgcu2r3yrp7"]
[gd_scene load_steps=11 format=3 uid="uid://drdgcu2r3yrp7"]
[ext_resource type="Script" uid="uid://duhodrhcnoslh" path="res://Scripts/Interactables/Switch.cs" id="1_kb2ks"]
[ext_resource type="Resource" uid="uid://cspcgkr0tane2" path="res://Resources/Items/Green_Keycard.tres" id="2_kb2ks"]
[ext_resource type="Texture2D" uid="uid://cpaigf41fqxr5" path="res://Sprites/Actors/Green_Card_Reader.png" id="3_6ogyc"]
[ext_resource type="Script" uid="uid://epnwjptvks3t" path="res://Scripts/Resources/LootItem.cs" id="2_w8j5v"]
[ext_resource type="Texture2D" uid="uid://c1hcyxn2og2kq" path="res://Sprites/Actors/Key_Reader.png" id="4_3x3jg"]
[ext_resource type="Texture2D" uid="uid://dsf7jj36mk0xp" path="res://Sprites/Actors/KeyReaderOverlay.png" id="5_x0ajw"]
[sub_resource type="CircleShape2D" id="CircleShape2D_vvpve"]
[sub_resource type="AtlasTexture" id="AtlasTexture_1r0vh"]
atlas = ExtResource("4_3x3jg")
region = Rect2(0, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_vnkqd"]
atlas = ExtResource("4_3x3jg")
region = Rect2(16, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_330vc"]
atlas = ExtResource("4_3x3jg")
region = Rect2(32, 0, 16, 16)
[sub_resource type="SpriteFrames" id="SpriteFrames_ogukk"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_1r0vh")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_vnkqd")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_330vc")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[node name="KeycardReaderGreen" type="Area2D" groups=["Interactable"]]
collision_layer = 4
collision_mask = 2
script = ExtResource("1_kb2ks")
Requirements = [ExtResource("2_kb2ks")]
Requirements = Array[ExtResource("2_w8j5v")]([ExtResource("2_kb2ks")])
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
shape = SubResource("CircleShape2D_vvpve")
[node name="Sprite2D" type="Sprite2D" parent="."]
texture = ExtResource("3_6ogyc")
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
sprite_frames = SubResource("SpriteFrames_ogukk")
[node name="Sprite2D" type="Sprite2D" parent="AnimatedSprite2D"]
modulate = Color(0, 0.649225, 0.227165, 1)
texture = ExtResource("5_x0ajw")

View file

@ -1,20 +1,36 @@
[gd_scene load_steps=7 format=3 uid="uid://cdr4m7pydqk6u"]
[gd_scene load_steps=11 format=3 uid="uid://cdr4m7pydqk6u"]
[ext_resource type="Script" uid="uid://duhodrhcnoslh" path="res://Scripts/Interactables/Switch.cs" id="1_o8ph7"]
[ext_resource type="Script" uid="uid://epnwjptvks3t" path="res://Scripts/Resources/LootItem.cs" id="2_511l2"]
[ext_resource type="Resource" uid="uid://dibquna7fww7t" path="res://Resources/Items/Red_Keycard.tres" id="2_mv5hn"]
[ext_resource type="Texture2D" uid="uid://ch6nbhxgxxtf" path="res://Sprites/Red_Card_Reader.png" id="3_4xaqn"]
[ext_resource type="Texture2D" uid="uid://c1hcyxn2og2kq" path="res://Sprites/Actors/Key_Reader.png" id="4_im0oo"]
[ext_resource type="Texture2D" uid="uid://dsf7jj36mk0xp" path="res://Sprites/Actors/KeyReaderOverlay.png" id="5_k3f86"]
[sub_resource type="CircleShape2D" id="CircleShape2D_vvpve"]
[sub_resource type="AtlasTexture" id="AtlasTexture_2vwlq"]
atlas = ExtResource("3_4xaqn")
region = Rect2(0, 0, 8, 8)
[sub_resource type="AtlasTexture" id="AtlasTexture_1r0vh"]
atlas = ExtResource("4_im0oo")
region = Rect2(0, 0, 16, 16)
[sub_resource type="SpriteFrames" id="SpriteFrames_jp3ap"]
[sub_resource type="AtlasTexture" id="AtlasTexture_vnkqd"]
atlas = ExtResource("4_im0oo")
region = Rect2(16, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_330vc"]
atlas = ExtResource("4_im0oo")
region = Rect2(32, 0, 16, 16)
[sub_resource type="SpriteFrames" id="SpriteFrames_3pfft"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_2vwlq")
"texture": SubResource("AtlasTexture_1r0vh")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_vnkqd")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_330vc")
}],
"loop": true,
"name": &"default",
@ -25,11 +41,14 @@ animations = [{
collision_layer = 4
collision_mask = 2
script = ExtResource("1_o8ph7")
Requirements = [ExtResource("2_mv5hn")]
Requirements = Array[ExtResource("2_511l2")]([ExtResource("2_mv5hn")])
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
shape = SubResource("CircleShape2D_vvpve")
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
sprite_frames = SubResource("SpriteFrames_jp3ap")
autoplay = "default"
[node name="AnimatedSprite2D2" type="AnimatedSprite2D" parent="."]
sprite_frames = SubResource("SpriteFrames_3pfft")
[node name="Sprite2D" type="Sprite2D" parent="AnimatedSprite2D2"]
modulate = Color(0.988235, 0, 0.0588235, 1)
texture = ExtResource("5_k3f86")

View file

@ -0,0 +1,56 @@
[gd_scene load_steps=11 format=3 uid="uid://ue3i2qyhhtbg"]
[ext_resource type="Script" uid="uid://duhodrhcnoslh" path="res://Scripts/Interactables/Switch.cs" id="1_fef30"]
[ext_resource type="Resource" uid="uid://cspcgkr0tane2" path="res://Resources/Items/Green_Keycard.tres" id="2_05i2o"]
[ext_resource type="Script" uid="uid://epnwjptvks3t" path="res://Scripts/Resources/LootItem.cs" id="2_058fi"]
[ext_resource type="Texture2D" uid="uid://c1hcyxn2og2kq" path="res://Sprites/Actors/Key_Reader.png" id="4_al0cc"]
[ext_resource type="Texture2D" uid="uid://dsf7jj36mk0xp" path="res://Sprites/Actors/KeyReaderOverlay.png" id="5_co1pm"]
[sub_resource type="CircleShape2D" id="CircleShape2D_vvpve"]
[sub_resource type="AtlasTexture" id="AtlasTexture_1r0vh"]
atlas = ExtResource("4_al0cc")
region = Rect2(0, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_vnkqd"]
atlas = ExtResource("4_al0cc")
region = Rect2(16, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_330vc"]
atlas = ExtResource("4_al0cc")
region = Rect2(32, 0, 16, 16)
[sub_resource type="SpriteFrames" id="SpriteFrames_ubfb0"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_1r0vh")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_vnkqd")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_330vc")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[node name="KeycardReaderYellow" type="Area2D" groups=["Interactable"]]
collision_layer = 4
collision_mask = 2
script = ExtResource("1_fef30")
Requirements = Array[ExtResource("2_058fi")]([ExtResource("2_05i2o")])
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
shape = SubResource("CircleShape2D_vvpve")
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
sprite_frames = SubResource("SpriteFrames_ubfb0")
frame = 2
frame_progress = 0.38043
[node name="Sprite2D" type="Sprite2D" parent="AnimatedSprite2D"]
modulate = Color(1, 0.882353, 0, 1)
texture = ExtResource("5_co1pm")

View file

@ -1,6 +1,7 @@
[gd_scene load_steps=7 format=3 uid="uid://d0yes7huiyisw"]
[gd_scene load_steps=8 format=3 uid="uid://d0yes7huiyisw"]
[ext_resource type="PackedScene" uid="uid://dxs3ks2ucaxl4" path="res://Scenes/Items/Red_Keycard.tscn" id="1_8f4hq"]
[ext_resource type="Script" uid="uid://epnwjptvks3t" path="res://Scripts/Resources/LootItem.cs" id="2_as2n7"]
[ext_resource type="Resource" uid="uid://cj5aa7btaw6q0" path="res://Resources/Items/Blue_Keycard.tres" id="2_woclw"]
[ext_resource type="Texture2D" uid="uid://bvybqletsvqgk" path="res://Sprites/Items/BlueKeycard_Small.png" id="3_k20dr"]
@ -27,7 +28,9 @@ animations = [{
}]
[node name="BlueKeycard" instance=ExtResource("1_8f4hq")]
LootTable = [ExtResource("2_woclw")]
LootTable = Array[ExtResource("2_as2n7")]([ExtResource("2_woclw")])
[node name="AnimatedSprite2D" parent="." index="1"]
sprite_frames = SubResource("SpriteFrames_gbw5v")
frame = 0
frame_progress = 0.0

View file

@ -40,3 +40,4 @@ shape = SubResource("CircleShape2D_6vv2s")
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
sprite_frames = SubResource("SpriteFrames_y8q6b")
autoplay = "default"

View file

@ -1,19 +1,45 @@
[gd_scene load_steps=5 format=3 uid="uid://dxs3ks2ucaxl4"]
[gd_scene load_steps=9 format=3 uid="uid://dxs3ks2ucaxl4"]
[ext_resource type="Script" uid="uid://b3h7b30kerf60" path="res://Scripts/Interactables/ItemPickup.cs" id="1_cvvxn"]
[ext_resource type="SpriteFrames" uid="uid://cikw4v6n0folb" path="res://Resources/Sprites/Red_Keycard_Overworld_Sprite.tres" id="3_htu4x"]
[ext_resource type="Script" uid="uid://epnwjptvks3t" path="res://Scripts/Resources/LootItem.cs" id="2_8httw"]
[ext_resource type="Resource" uid="uid://dibquna7fww7t" path="res://Resources/Items/Red_Keycard.tres" id="4_84krq"]
[ext_resource type="Texture2D" uid="uid://bad6gbl2gity3" path="res://Sprites/Items/RedKeycard_Small.png" id="4_qvrcl"]
[sub_resource type="CircleShape2D" id="CircleShape2D_6vv2s"]
[sub_resource type="AtlasTexture" id="AtlasTexture_fs476"]
atlas = ExtResource("4_qvrcl")
region = Rect2(0, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_mf2mr"]
atlas = ExtResource("4_qvrcl")
region = Rect2(16, 0, 16, 16)
[sub_resource type="SpriteFrames" id="SpriteFrames_0lqfr"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_fs476")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_mf2mr")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[node name="RedKeyCard" type="Area2D" groups=["Interactable"]]
collision_layer = 4
collision_mask = 2
script = ExtResource("1_cvvxn")
LootTable = [ExtResource("4_84krq")]
LootTable = Array[ExtResource("2_8httw")]([ExtResource("4_84krq")])
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
shape = SubResource("CircleShape2D_6vv2s")
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
sprite_frames = ExtResource("3_htu4x")
sprite_frames = SubResource("SpriteFrames_0lqfr")
autoplay = "default"
frame = 1
frame_progress = 0.40509

View file

@ -0,0 +1,45 @@
[gd_scene load_steps=9 format=3 uid="uid://8yggb3ay3hr0"]
[ext_resource type="Script" uid="uid://b3h7b30kerf60" path="res://Scripts/Interactables/ItemPickup.cs" id="1_3cfwm"]
[ext_resource type="Script" uid="uid://epnwjptvks3t" path="res://Scripts/Resources/LootItem.cs" id="2_ydogx"]
[ext_resource type="Resource" uid="uid://b2vyr1tcm4rc1" path="res://Resources/Items/Yellow_Keycard.tres" id="3_chik2"]
[ext_resource type="Texture2D" uid="uid://ckpehix3prcx5" path="res://Sprites/Items/YellowKeycard_Small.png" id="4_chik2"]
[sub_resource type="CircleShape2D" id="CircleShape2D_6vv2s"]
[sub_resource type="AtlasTexture" id="AtlasTexture_ydogx"]
atlas = ExtResource("4_chik2")
region = Rect2(0, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_spl5h"]
atlas = ExtResource("4_chik2")
region = Rect2(16, 0, 16, 16)
[sub_resource type="SpriteFrames" id="SpriteFrames_ecs5y"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_ydogx")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_spl5h")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[node name="YellowKeyCard" type="Area2D" groups=["Interactable"]]
collision_layer = 4
collision_mask = 2
script = ExtResource("1_3cfwm")
LootTable = Array[ExtResource("2_ydogx")]([ExtResource("3_chik2")])
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
shape = SubResource("CircleShape2D_6vv2s")
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
sprite_frames = SubResource("SpriteFrames_ecs5y")
autoplay = "default"
frame = 1
frame_progress = 0.173295

File diff suppressed because one or more lines are too long

BIN
Sprites/Actors/KeyReaderOverlay.aseprite (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Sprites/Actors/KeyReaderOverlay.png (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dsf7jj36mk0xp"
path="res://.godot/imported/KeyReaderOverlay.png-5019c9492f47a9209009a3bc135a4eca.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Sprites/Actors/KeyReaderOverlay.png"
dest_files=["res://.godot/imported/KeyReaderOverlay.png-5019c9492f47a9209009a3bc135a4eca.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
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/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
Sprites/Actors/Key_Reader.aseprite (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Sprites/Actors/Key_Reader.png (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c1hcyxn2og2kq"
path="res://.godot/imported/Key_Reader.png-82f7daa7393952595bd6a3567189ace7.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Sprites/Actors/Key_Reader.png"
dest_files=["res://.godot/imported/Key_Reader.png-82f7daa7393952595bd6a3567189ace7.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
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/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
Sprites/Items/YellowKeycard_Small.aseprite (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Sprites/Items/YellowKeycard_Small.png (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ckpehix3prcx5"
path="res://.godot/imported/YellowKeycard_Small.png-070bc4c2d61c321670798f8a625276c3.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Sprites/Items/YellowKeycard_Small.png"
dest_files=["res://.godot/imported/YellowKeycard_Small.png-070bc4c2d61c321670798f8a625276c3.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
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/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
Sprites/Red_Card_Reader.aseprite (Stored with Git LFS)

Binary file not shown.