FINAL JAM COMMIT
This commit is contained in:
Binary file not shown.
@@ -0,0 +1,36 @@
|
||||
[remap]
|
||||
|
||||
importer="font_data_dynamic"
|
||||
type="FontFile"
|
||||
uid="uid://2ojf62uk562d"
|
||||
path="res://.godot/imported/DotGothic16-Regular.ttf-92ac4d0db6d294ec4cf5b81c268c64a1.fontdata"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Assets/Fonts/DotGothic16-Regular.ttf"
|
||||
dest_files=["res://.godot/imported/DotGothic16-Regular.ttf-92ac4d0db6d294ec4cf5b81c268c64a1.fontdata"]
|
||||
|
||||
[params]
|
||||
|
||||
Rendering=null
|
||||
antialiasing=1
|
||||
generate_mipmaps=false
|
||||
disable_embedded_bitmaps=true
|
||||
multichannel_signed_distance_field=false
|
||||
msdf_pixel_range=8
|
||||
msdf_size=48
|
||||
allow_system_fallback=true
|
||||
force_autohinter=false
|
||||
modulate_color_glyphs=false
|
||||
hinting=1
|
||||
subpixel_positioning=4
|
||||
keep_rounding_remainders=true
|
||||
oversampling=0.0
|
||||
Fallbacks=null
|
||||
fallbacks=[]
|
||||
Compress=null
|
||||
compress=true
|
||||
preload=[]
|
||||
language_support={}
|
||||
script_support={}
|
||||
opentype_features={}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 681 B |
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://hf1ut501rt4v"
|
||||
path="res://.godot/imported/broken_altar.png-ac1e9a4b12f5fd9cb18c47dbc3f28b59.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Assets/Sprites/Environments/broken_altar.png"
|
||||
dest_files=["res://.godot/imported/broken_altar.png-ac1e9a4b12f5fd9cb18c47dbc3f28b59.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: 2.7 KiB |
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://ck5ielqswiswh"
|
||||
path="res://.godot/imported/fallen_sakura.png-49dd82ec9ef0f5015b6af3d21426b290.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Assets/Sprites/Environments/fallen_sakura.png"
|
||||
dest_files=["res://.godot/imported/fallen_sakura.png-49dd82ec9ef0f5015b6af3d21426b290.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: 261 B |
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cdaoxfxcl87xq"
|
||||
path="res://.godot/imported/Score.png-4b6ce1605dd92d5517aea3e710ce9d87.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Assets/Sprites/UI/Score.png"
|
||||
dest_files=["res://.godot/imported/Score.png-4b6ce1605dd92d5517aea3e710ce9d87.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: 184 B |
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dudgvn6o3ex"
|
||||
path="res://.godot/imported/button.png-f5f55c2001b987774ec6d685edf0f92a.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Assets/Sprites/UI/button.png"
|
||||
dest_files=["res://.godot/imported/button.png-f5f55c2001b987774ec6d685edf0f92a.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: 1.2 KiB |
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bb6vffiwr24cs"
|
||||
path="res://.godot/imported/logokg.png-bc4c8e63d119897cd743f8183203506c.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Assets/Sprites/UI/logokg.png"
|
||||
dest_files=["res://.godot/imported/logokg.png-bc4c8e63d119897cd743f8183203506c.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: 152 B |
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cd08robnbvjxx"
|
||||
path="res://.godot/imported/panel.png-8a90e05fb516d863b9a2b3cfffa3ac71.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Assets/Sprites/UI/panel.png"
|
||||
dest_files=["res://.godot/imported/panel.png-8a90e05fb516d863b9a2b3cfffa3ac71.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
|
||||
@@ -1,11 +1,16 @@
|
||||
[gd_scene load_steps=18 format=3 uid="uid://cx7gr555b1gov"]
|
||||
[gd_scene load_steps=26 format=3 uid="uid://cx7gr555b1gov"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://be7hl01iuo5af" path="res://Assets/Sprites/Characters/Player/kitsune-Sheet.png" id="1_0bpay"]
|
||||
[ext_resource type="Script" uid="uid://cxrhl65cjw4yr" path="res://Scripts/Turrets/Turret.cs" id="2_jjtgc"]
|
||||
[ext_resource type="Script" uid="uid://cy00plvsi6vkn" path="res://Scripts/Projectiles/ProjectilePool.cs" id="3_d0rgn"]
|
||||
[ext_resource type="PackedScene" uid="uid://wucwxtp1w12q" path="res://Prefabs/Projectiles/Blueflame.tscn" id="4_jjtgc"]
|
||||
[ext_resource type="Script" uid="uid://bpqof3jshxnug" path="res://Scripts/Turrets/DragMover.cs" id="5_d0rgn"]
|
||||
[ext_resource type="Script" uid="uid://qf0qrqg0l7np" path="res://Scripts/Turrets/TurretUpgrader.cs" id="6_0ocyc"]
|
||||
[ext_resource type="AudioStream" uid="uid://dt18fd3icyuxu" path="res://Assets/Sounds/Sfx/kitsune.wav" id="6_cnydl"]
|
||||
[ext_resource type="Texture2D" uid="uid://b2wa0rqssefiy" path="res://Assets/Sprites/UI/soul.png" id="8_ftmsq"]
|
||||
[ext_resource type="FontFile" uid="uid://b8lsp07ucxq6p" path="res://Assets/Fonts/MintsodaLimeGreen13X16Regular-KVvzA.ttf" id="9_kt03c"]
|
||||
[ext_resource type="Texture2D" uid="uid://bfclgdy7dusmg" path="res://Assets/Sprites/Projectiles/projectile_green-Sheet.png" id="10_c1di4"]
|
||||
[ext_resource type="Texture2D" uid="uid://m77l7ej5ojn0" path="res://Assets/Sprites/Projectiles/flame_attack.png" id="11_odfq6"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_3dryh"]
|
||||
atlas = ExtResource("1_0bpay")
|
||||
@@ -69,6 +74,20 @@ size = Vector2(32, 16)
|
||||
[sub_resource type="QuadMesh" id="QuadMesh_5wxv7"]
|
||||
size = Vector2(100, 100)
|
||||
|
||||
[sub_resource type="LabelSettings" id="LabelSettings_s4ciy"]
|
||||
font = ExtResource("9_kt03c")
|
||||
font_size = 22
|
||||
outline_size = 6
|
||||
outline_color = Color(0, 0, 0, 1)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_vail8"]
|
||||
atlas = ExtResource("10_c1di4")
|
||||
region = Rect2(0, 0, 16, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_45wqr"]
|
||||
atlas = ExtResource("11_odfq6")
|
||||
region = Rect2(0, 0, 16, 32)
|
||||
|
||||
[node name="Turret" type="Node2D"]
|
||||
y_sort_enabled = true
|
||||
texture_filter = 1
|
||||
@@ -103,6 +122,15 @@ DragArea = NodePath("../../DragCollider")
|
||||
CheckArea = NodePath("../../PlacementCollider")
|
||||
ShootArea = NodePath("../../ShootArea")
|
||||
|
||||
[node name="TurretUpgrader" type="Node" parent="Scripts" node_paths=PackedStringArray("_turret", "_clickArea", "_ui", "_costLabel", "_damageLabel", "_fireRateLabel")]
|
||||
script = ExtResource("6_0ocyc")
|
||||
_turret = NodePath("../Turret")
|
||||
_clickArea = NodePath("../../DragCollider")
|
||||
_ui = NodePath("../../Control")
|
||||
_costLabel = NodePath("../../Control/TextureRect/Cost")
|
||||
_damageLabel = NodePath("../../Control/TextureRect2/Dmg")
|
||||
_fireRateLabel = NodePath("../../Control/TextureRect3/Rps")
|
||||
|
||||
[node name="ShootArea" type="Area2D" parent="."]
|
||||
collision_layer = 0
|
||||
collision_mask = 4
|
||||
@@ -136,3 +164,92 @@ mesh = SubResource("QuadMesh_5wxv7")
|
||||
[node name="AudioStreamPlayer2D" type="AudioStreamPlayer2D" parent="."]
|
||||
stream = ExtResource("6_cnydl")
|
||||
volume_db = -20.0
|
||||
|
||||
[node name="Control" type="Control" parent="."]
|
||||
visible = false
|
||||
layout_mode = 3
|
||||
anchors_preset = 0
|
||||
offset_left = -64.0
|
||||
offset_top = -56.0
|
||||
offset_right = -24.0
|
||||
offset_bottom = -16.0
|
||||
scale = Vector2(0.5, 0.5)
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="Control"]
|
||||
layout_mode = 0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
texture = ExtResource("8_ftmsq")
|
||||
|
||||
[node name="Cost" type="Label" parent="Control/TextureRect"]
|
||||
layout_mode = 0
|
||||
offset_left = 40.0
|
||||
offset_top = 12.0
|
||||
offset_right = 81.0
|
||||
offset_bottom = 38.0
|
||||
text = "999"
|
||||
label_settings = SubResource("LabelSettings_s4ciy")
|
||||
|
||||
[node name="Label2" type="Label" parent="Control/TextureRect"]
|
||||
layout_mode = 0
|
||||
offset_left = 4.0
|
||||
offset_top = 20.0
|
||||
offset_right = 58.0
|
||||
offset_bottom = 46.0
|
||||
scale = Vector2(0.56, 0.56)
|
||||
text = "Cost"
|
||||
label_settings = SubResource("LabelSettings_s4ciy")
|
||||
|
||||
[node name="TextureRect2" type="TextureRect" parent="Control"]
|
||||
layout_mode = 0
|
||||
offset_left = 80.0
|
||||
offset_right = 120.0
|
||||
offset_bottom = 40.0
|
||||
texture = SubResource("AtlasTexture_vail8")
|
||||
stretch_mode = 5
|
||||
|
||||
[node name="Dmg" type="Label" parent="Control/TextureRect2"]
|
||||
layout_mode = 0
|
||||
offset_left = 40.0
|
||||
offset_top = 12.0
|
||||
offset_right = 81.0
|
||||
offset_bottom = 38.0
|
||||
text = "999"
|
||||
label_settings = SubResource("LabelSettings_s4ciy")
|
||||
|
||||
[node name="Label2" type="Label" parent="Control/TextureRect2"]
|
||||
layout_mode = 0
|
||||
offset_left = 4.0
|
||||
offset_top = 20.0
|
||||
offset_right = 58.0
|
||||
offset_bottom = 46.0
|
||||
scale = Vector2(0.56, 0.56)
|
||||
text = "DMG"
|
||||
label_settings = SubResource("LabelSettings_s4ciy")
|
||||
|
||||
[node name="TextureRect3" type="TextureRect" parent="Control"]
|
||||
layout_mode = 0
|
||||
offset_left = 160.0
|
||||
offset_right = 200.0
|
||||
offset_bottom = 40.0
|
||||
texture = SubResource("AtlasTexture_45wqr")
|
||||
stretch_mode = 5
|
||||
|
||||
[node name="Rps" type="Label" parent="Control/TextureRect3"]
|
||||
layout_mode = 0
|
||||
offset_left = 40.0
|
||||
offset_top = 12.0
|
||||
offset_right = 81.0
|
||||
offset_bottom = 38.0
|
||||
text = "999"
|
||||
label_settings = SubResource("LabelSettings_s4ciy")
|
||||
|
||||
[node name="Label2" type="Label" parent="Control/TextureRect3"]
|
||||
layout_mode = 0
|
||||
offset_left = 8.0
|
||||
offset_top = 20.0
|
||||
offset_right = 62.0
|
||||
offset_bottom = 46.0
|
||||
scale = Vector2(0.56, 0.56)
|
||||
text = "RPS"
|
||||
label_settings = SubResource("LabelSettings_s4ciy")
|
||||
|
||||
+118
-1
@@ -1,11 +1,16 @@
|
||||
[gd_scene load_steps=18 format=3 uid="uid://8fsvnmto0ckj"]
|
||||
[gd_scene load_steps=26 format=3 uid="uid://8fsvnmto0ckj"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://c6dl0tlkdtis1" path="res://Assets/Sprites/Characters/Player/oniSheet.png" id="1_rg6xk"]
|
||||
[ext_resource type="Script" uid="uid://cxrhl65cjw4yr" path="res://Scripts/Turrets/Turret.cs" id="2_hi1ge"]
|
||||
[ext_resource type="Script" uid="uid://cy00plvsi6vkn" path="res://Scripts/Projectiles/ProjectilePool.cs" id="3_if52b"]
|
||||
[ext_resource type="PackedScene" uid="uid://deud430j2w18n" path="res://Prefabs/Projectiles/GreenFist.tscn" id="4_rg6xk"]
|
||||
[ext_resource type="Script" uid="uid://bpqof3jshxnug" path="res://Scripts/Turrets/DragMover.cs" id="5_hi1ge"]
|
||||
[ext_resource type="Script" uid="uid://qf0qrqg0l7np" path="res://Scripts/Turrets/TurretUpgrader.cs" id="6_6qlhu"]
|
||||
[ext_resource type="AudioStream" uid="uid://ce5vqm3tts58o" path="res://Assets/Sounds/Sfx/oni.wav" id="6_if52b"]
|
||||
[ext_resource type="Texture2D" uid="uid://b2wa0rqssefiy" path="res://Assets/Sprites/UI/soul.png" id="7_ahiq0"]
|
||||
[ext_resource type="FontFile" uid="uid://b8lsp07ucxq6p" path="res://Assets/Fonts/MintsodaLimeGreen13X16Regular-KVvzA.ttf" id="8_6qlhu"]
|
||||
[ext_resource type="Texture2D" uid="uid://bfclgdy7dusmg" path="res://Assets/Sprites/Projectiles/projectile_green-Sheet.png" id="9_kidxu"]
|
||||
[ext_resource type="Texture2D" uid="uid://m77l7ej5ojn0" path="res://Assets/Sprites/Projectiles/flame_attack.png" id="10_v2c4g"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_hi1ge"]
|
||||
atlas = ExtResource("1_rg6xk")
|
||||
@@ -69,6 +74,20 @@ size = Vector2(100, 100)
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_rg6xk"]
|
||||
size = Vector2(32, 16)
|
||||
|
||||
[sub_resource type="LabelSettings" id="LabelSettings_nmwuw"]
|
||||
font = ExtResource("8_6qlhu")
|
||||
font_size = 22
|
||||
outline_size = 6
|
||||
outline_color = Color(0, 0, 0, 1)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_70y4k"]
|
||||
atlas = ExtResource("9_kidxu")
|
||||
region = Rect2(0, 0, 16, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_n6aa7"]
|
||||
atlas = ExtResource("10_v2c4g")
|
||||
region = Rect2(0, 0, 16, 32)
|
||||
|
||||
[node name="Turret" type="Node2D"]
|
||||
y_sort_enabled = true
|
||||
texture_filter = 1
|
||||
@@ -103,6 +122,15 @@ DragArea = NodePath("../../DragCollider")
|
||||
CheckArea = NodePath("../../PlacementCollider")
|
||||
ShootArea = NodePath("../../ShootArea")
|
||||
|
||||
[node name="TurretUpgrader" type="Node" parent="Scripts" node_paths=PackedStringArray("_turret", "_clickArea", "_ui", "_costLabel", "_damageLabel", "_fireRateLabel")]
|
||||
script = ExtResource("6_6qlhu")
|
||||
_turret = NodePath("../Turret")
|
||||
_clickArea = NodePath("../../DragCollider")
|
||||
_ui = NodePath("../../Control")
|
||||
_costLabel = NodePath("../../Control/TextureRect/Cost")
|
||||
_damageLabel = NodePath("../../Control/TextureRect2/Dmg")
|
||||
_fireRateLabel = NodePath("../../Control/TextureRect3/Rps")
|
||||
|
||||
[node name="ShootArea" type="Area2D" parent="."]
|
||||
collision_layer = 0
|
||||
collision_mask = 4
|
||||
@@ -134,3 +162,92 @@ shape = SubResource("RectangleShape2D_rg6xk")
|
||||
[node name="AudioStreamPlayer2D" type="AudioStreamPlayer2D" parent="."]
|
||||
stream = ExtResource("6_if52b")
|
||||
volume_db = -20.0
|
||||
|
||||
[node name="Control" type="Control" parent="."]
|
||||
visible = false
|
||||
layout_mode = 3
|
||||
anchors_preset = 0
|
||||
offset_left = -64.0
|
||||
offset_top = -56.0
|
||||
offset_right = -24.0
|
||||
offset_bottom = -16.0
|
||||
scale = Vector2(0.5, 0.5)
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="Control"]
|
||||
layout_mode = 0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
texture = ExtResource("7_ahiq0")
|
||||
|
||||
[node name="Cost" type="Label" parent="Control/TextureRect"]
|
||||
layout_mode = 0
|
||||
offset_left = 40.0
|
||||
offset_top = 12.0
|
||||
offset_right = 81.0
|
||||
offset_bottom = 38.0
|
||||
text = "999"
|
||||
label_settings = SubResource("LabelSettings_nmwuw")
|
||||
|
||||
[node name="Label2" type="Label" parent="Control/TextureRect"]
|
||||
layout_mode = 0
|
||||
offset_left = 4.0
|
||||
offset_top = 20.0
|
||||
offset_right = 58.0
|
||||
offset_bottom = 46.0
|
||||
scale = Vector2(0.56, 0.56)
|
||||
text = "Cost"
|
||||
label_settings = SubResource("LabelSettings_nmwuw")
|
||||
|
||||
[node name="TextureRect2" type="TextureRect" parent="Control"]
|
||||
layout_mode = 0
|
||||
offset_left = 80.0
|
||||
offset_right = 120.0
|
||||
offset_bottom = 40.0
|
||||
texture = SubResource("AtlasTexture_70y4k")
|
||||
stretch_mode = 5
|
||||
|
||||
[node name="Dmg" type="Label" parent="Control/TextureRect2"]
|
||||
layout_mode = 0
|
||||
offset_left = 40.0
|
||||
offset_top = 12.0
|
||||
offset_right = 81.0
|
||||
offset_bottom = 38.0
|
||||
text = "999"
|
||||
label_settings = SubResource("LabelSettings_nmwuw")
|
||||
|
||||
[node name="Label2" type="Label" parent="Control/TextureRect2"]
|
||||
layout_mode = 0
|
||||
offset_left = 4.0
|
||||
offset_top = 20.0
|
||||
offset_right = 58.0
|
||||
offset_bottom = 46.0
|
||||
scale = Vector2(0.56, 0.56)
|
||||
text = "DMG"
|
||||
label_settings = SubResource("LabelSettings_nmwuw")
|
||||
|
||||
[node name="TextureRect3" type="TextureRect" parent="Control"]
|
||||
layout_mode = 0
|
||||
offset_left = 160.0
|
||||
offset_right = 200.0
|
||||
offset_bottom = 40.0
|
||||
texture = SubResource("AtlasTexture_n6aa7")
|
||||
stretch_mode = 5
|
||||
|
||||
[node name="Rps" type="Label" parent="Control/TextureRect3"]
|
||||
layout_mode = 0
|
||||
offset_left = 40.0
|
||||
offset_top = 12.0
|
||||
offset_right = 81.0
|
||||
offset_bottom = 38.0
|
||||
text = "999"
|
||||
label_settings = SubResource("LabelSettings_nmwuw")
|
||||
|
||||
[node name="Label2" type="Label" parent="Control/TextureRect3"]
|
||||
layout_mode = 0
|
||||
offset_left = 8.0
|
||||
offset_top = 20.0
|
||||
offset_right = 62.0
|
||||
offset_bottom = 46.0
|
||||
scale = Vector2(0.56, 0.56)
|
||||
text = "RPS"
|
||||
label_settings = SubResource("LabelSettings_nmwuw")
|
||||
|
||||
+118
-1
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=18 format=3 uid="uid://cthdcnxhbyad2"]
|
||||
[gd_scene load_steps=26 format=3 uid="uid://cthdcnxhbyad2"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://codbtra5i6ara" path="res://Assets/Sprites/Characters/Player/tengu-Sheet.png" id="1_3e4v5"]
|
||||
[ext_resource type="Script" uid="uid://cxrhl65cjw4yr" path="res://Scripts/Turrets/Turret.cs" id="2_ahbvo"]
|
||||
@@ -6,6 +6,11 @@
|
||||
[ext_resource type="PackedScene" uid="uid://cr6shokga0dy6" path="res://Prefabs/Projectiles/Fireball.tscn" id="4_mtyrr"]
|
||||
[ext_resource type="Script" uid="uid://bpqof3jshxnug" path="res://Scripts/Turrets/DragMover.cs" id="5_ahbvo"]
|
||||
[ext_resource type="AudioStream" uid="uid://wvrhsssfi7w3" path="res://Assets/Sounds/Sfx/tengu.wav" id="6_466qr"]
|
||||
[ext_resource type="Script" uid="uid://qf0qrqg0l7np" path="res://Scripts/Turrets/TurretUpgrader.cs" id="6_i8ey8"]
|
||||
[ext_resource type="Texture2D" uid="uid://b2wa0rqssefiy" path="res://Assets/Sprites/UI/soul.png" id="7_u8dw0"]
|
||||
[ext_resource type="FontFile" uid="uid://b8lsp07ucxq6p" path="res://Assets/Fonts/MintsodaLimeGreen13X16Regular-KVvzA.ttf" id="8_i8ey8"]
|
||||
[ext_resource type="Texture2D" uid="uid://bfclgdy7dusmg" path="res://Assets/Sprites/Projectiles/projectile_green-Sheet.png" id="9_sh1pr"]
|
||||
[ext_resource type="Texture2D" uid="uid://m77l7ej5ojn0" path="res://Assets/Sprites/Projectiles/flame_attack.png" id="10_2yn51"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_ahbvo"]
|
||||
atlas = ExtResource("1_3e4v5")
|
||||
@@ -69,6 +74,20 @@ size = Vector2(100, 100)
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_3e4v5"]
|
||||
size = Vector2(32, 16)
|
||||
|
||||
[sub_resource type="LabelSettings" id="LabelSettings_ubruh"]
|
||||
font = ExtResource("8_i8ey8")
|
||||
font_size = 22
|
||||
outline_size = 6
|
||||
outline_color = Color(0, 0, 0, 1)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_viipx"]
|
||||
atlas = ExtResource("9_sh1pr")
|
||||
region = Rect2(0, 0, 16, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_0dq80"]
|
||||
atlas = ExtResource("10_2yn51")
|
||||
region = Rect2(0, 0, 16, 32)
|
||||
|
||||
[node name="Turret" type="Node2D"]
|
||||
y_sort_enabled = true
|
||||
texture_filter = 1
|
||||
@@ -103,6 +122,15 @@ DragArea = NodePath("../../DragCollider")
|
||||
CheckArea = NodePath("../../PlacementCollider")
|
||||
ShootArea = NodePath("../../ShootArea")
|
||||
|
||||
[node name="TurretUpgrader" type="Node" parent="Scripts" node_paths=PackedStringArray("_turret", "_clickArea", "_ui", "_costLabel", "_damageLabel", "_fireRateLabel")]
|
||||
script = ExtResource("6_i8ey8")
|
||||
_turret = NodePath("../Turret")
|
||||
_clickArea = NodePath("../../DragCollider")
|
||||
_ui = NodePath("../../Control")
|
||||
_costLabel = NodePath("../../Control/TextureRect/Cost")
|
||||
_damageLabel = NodePath("../../Control/TextureRect2/Dmg")
|
||||
_fireRateLabel = NodePath("../../Control/TextureRect3/Rps")
|
||||
|
||||
[node name="ShootArea" type="Area2D" parent="."]
|
||||
collision_layer = 0
|
||||
collision_mask = 4
|
||||
@@ -134,3 +162,92 @@ shape = SubResource("RectangleShape2D_3e4v5")
|
||||
[node name="AudioStreamPlayer2D" type="AudioStreamPlayer2D" parent="."]
|
||||
stream = ExtResource("6_466qr")
|
||||
volume_db = -20.0
|
||||
|
||||
[node name="Control" type="Control" parent="."]
|
||||
visible = false
|
||||
layout_mode = 3
|
||||
anchors_preset = 0
|
||||
offset_left = -64.0
|
||||
offset_top = -56.0
|
||||
offset_right = -24.0
|
||||
offset_bottom = -16.0
|
||||
scale = Vector2(0.5, 0.5)
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="Control"]
|
||||
layout_mode = 0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
texture = ExtResource("7_u8dw0")
|
||||
|
||||
[node name="Cost" type="Label" parent="Control/TextureRect"]
|
||||
layout_mode = 0
|
||||
offset_left = 40.0
|
||||
offset_top = 12.0
|
||||
offset_right = 81.0
|
||||
offset_bottom = 38.0
|
||||
text = "999"
|
||||
label_settings = SubResource("LabelSettings_ubruh")
|
||||
|
||||
[node name="Label2" type="Label" parent="Control/TextureRect"]
|
||||
layout_mode = 0
|
||||
offset_left = 4.0
|
||||
offset_top = 20.0
|
||||
offset_right = 58.0
|
||||
offset_bottom = 46.0
|
||||
scale = Vector2(0.56, 0.56)
|
||||
text = "Cost"
|
||||
label_settings = SubResource("LabelSettings_ubruh")
|
||||
|
||||
[node name="TextureRect2" type="TextureRect" parent="Control"]
|
||||
layout_mode = 0
|
||||
offset_left = 80.0
|
||||
offset_right = 120.0
|
||||
offset_bottom = 40.0
|
||||
texture = SubResource("AtlasTexture_viipx")
|
||||
stretch_mode = 5
|
||||
|
||||
[node name="Dmg" type="Label" parent="Control/TextureRect2"]
|
||||
layout_mode = 0
|
||||
offset_left = 40.0
|
||||
offset_top = 12.0
|
||||
offset_right = 81.0
|
||||
offset_bottom = 38.0
|
||||
text = "999"
|
||||
label_settings = SubResource("LabelSettings_ubruh")
|
||||
|
||||
[node name="Label2" type="Label" parent="Control/TextureRect2"]
|
||||
layout_mode = 0
|
||||
offset_left = 4.0
|
||||
offset_top = 20.0
|
||||
offset_right = 58.0
|
||||
offset_bottom = 46.0
|
||||
scale = Vector2(0.56, 0.56)
|
||||
text = "DMG"
|
||||
label_settings = SubResource("LabelSettings_ubruh")
|
||||
|
||||
[node name="TextureRect3" type="TextureRect" parent="Control"]
|
||||
layout_mode = 0
|
||||
offset_left = 160.0
|
||||
offset_right = 200.0
|
||||
offset_bottom = 40.0
|
||||
texture = SubResource("AtlasTexture_0dq80")
|
||||
stretch_mode = 5
|
||||
|
||||
[node name="Rps" type="Label" parent="Control/TextureRect3"]
|
||||
layout_mode = 0
|
||||
offset_left = 40.0
|
||||
offset_top = 12.0
|
||||
offset_right = 81.0
|
||||
offset_bottom = 38.0
|
||||
text = "999"
|
||||
label_settings = SubResource("LabelSettings_ubruh")
|
||||
|
||||
[node name="Label2" type="Label" parent="Control/TextureRect3"]
|
||||
layout_mode = 0
|
||||
offset_left = 8.0
|
||||
offset_top = 20.0
|
||||
offset_right = 62.0
|
||||
offset_bottom = 46.0
|
||||
scale = Vector2(0.56, 0.56)
|
||||
text = "RPS"
|
||||
label_settings = SubResource("LabelSettings_ubruh")
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
[gd_resource type="Environment" format=3 uid="uid://8npqvmcbfysk"]
|
||||
|
||||
[resource]
|
||||
background_mode = 3
|
||||
background_color = Color(0.1254902, 0.1254902, 0.1254902, 1)
|
||||
ambient_light_color = Color(0.1254902, 0.1254902, 0.1254902, 1)
|
||||
glow_enabled = true
|
||||
glow_blend_mode = 1
|
||||
@@ -0,0 +1,44 @@
|
||||
[gd_scene load_steps=6 format=3 uid="uid://ddoe833kg11n5"]
|
||||
|
||||
[ext_resource type="AudioStream" uid="uid://dbsuw8omrcx1d" path="res://Assets/Sounds/Music/8bit-mysterious-kyouto_reverb_Loop.ogg" id="1_5ast2"]
|
||||
[ext_resource type="Script" uid="uid://bmdb22du7uvr1" path="res://Scripts/Common/SceneManager.cs" id="2_uy6xw"]
|
||||
[ext_resource type="PackedScene" uid="uid://csyk43kt3xbyx" path="res://Scenes/game.tscn" id="3_4cwpi"]
|
||||
[ext_resource type="PackedScene" uid="uid://cof1iapx258cw" path="res://Scenes/menu.tscn" id="4_a4hfx"]
|
||||
[ext_resource type="PackedScene" uid="uid://c1n63k05rq5g4" path="res://Scenes/endscreen.tscn" id="5_6st05"]
|
||||
|
||||
[node name="Root" type="Node2D"]
|
||||
|
||||
[node name="MusicPLayer" type="AudioStreamPlayer" parent="."]
|
||||
process_mode = 3
|
||||
stream = ExtResource("1_5ast2")
|
||||
volume_db = -30.0
|
||||
autoplay = true
|
||||
parameters/looping = true
|
||||
|
||||
[node name="SceneManager" type="Node" parent="." node_paths=PackedStringArray("_root")]
|
||||
process_mode = 3
|
||||
script = ExtResource("2_uy6xw")
|
||||
_root = NodePath("..")
|
||||
_gameScene = ExtResource("3_4cwpi")
|
||||
_menuScene = ExtResource("4_a4hfx")
|
||||
_endScene = ExtResource("5_6st05")
|
||||
|
||||
[node name="CanvasLayer" type="CanvasLayer" parent="."]
|
||||
process_mode = 3
|
||||
layer = 6767
|
||||
visible = false
|
||||
|
||||
[node name="ColorRect" type="ColorRect" parent="CanvasLayer"]
|
||||
custom_minimum_size = Vector2(1, 1)
|
||||
anchors_preset = 8
|
||||
anchor_left = 0.5
|
||||
anchor_top = 0.5
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = -4999.5
|
||||
offset_top = -4999.5
|
||||
offset_right = 4999.5
|
||||
offset_bottom = 4999.5
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
color = Color(0, 0, 0, 1)
|
||||
File diff suppressed because one or more lines are too long
+233
-26
@@ -1,8 +1,9 @@
|
||||
[gd_scene load_steps=45 format=4 uid="uid://csyk43kt3xbyx"]
|
||||
[gd_scene load_steps=54 format=4 uid="uid://csyk43kt3xbyx"]
|
||||
|
||||
[ext_resource type="TileSet" uid="uid://b15j7vhkfu415" path="res://Resources/environmentTileMap.tres" id="1_ebmjs"]
|
||||
[ext_resource type="Script" uid="uid://djp8dmixf6sq2" path="res://Scripts/Common/GameController.cs" id="1_i6g32"]
|
||||
[ext_resource type="Script" uid="uid://b0uosq6r5dbqa" path="res://Scripts/Turrets/TurretController.cs" id="1_nb51f"]
|
||||
[ext_resource type="Script" uid="uid://ch2o7voah6o3o" path="res://Scripts/Common/PauseManager.cs" id="1_tgy6u"]
|
||||
[ext_resource type="Script" uid="uid://bhxyvnirfeipr" path="res://Scripts/Enemies/EnemyPool.cs" id="2_i6g32"]
|
||||
[ext_resource type="Script" uid="uid://cds2rrl4yjexf" path="res://Scripts/Enemies/EnemySpawner.cs" id="3_1l0tm"]
|
||||
[ext_resource type="PackedScene" uid="uid://8230dpmp7mic" path="res://Prefabs/Turrets/Placeholders/kitsune_ph.tscn" id="3_ewbju"]
|
||||
@@ -25,7 +26,11 @@
|
||||
[ext_resource type="Shader" uid="uid://8dk8mi2w1xl6" path="res://Scenes/game.tres" id="14_1phco"]
|
||||
[ext_resource type="Texture2D" uid="uid://2x62ipg12256" path="res://Assets/Sprites/Vfx/particle.png" id="16_22asu"]
|
||||
[ext_resource type="Script" uid="uid://dxcke7geb20dm" path="res://Scripts/Misc/Floating.gd" id="19_fkdbe"]
|
||||
[ext_resource type="AudioStream" uid="uid://dbsuw8omrcx1d" path="res://Assets/Sounds/Music/8bit-mysterious-kyouto_reverb_Loop.ogg" id="26_fkdbe"]
|
||||
[ext_resource type="Script" uid="uid://fxb27qlab5nb" path="res://Scripts/UI/PriceUpdater.cs" id="25_mucmn"]
|
||||
[ext_resource type="FontFile" uid="uid://2ojf62uk562d" path="res://Assets/Fonts/DotGothic16-Regular.ttf" id="26_81klo"]
|
||||
[ext_resource type="Texture2D" uid="uid://cdaoxfxcl87xq" path="res://Assets/Sprites/UI/Score.png" id="27_8m3t6"]
|
||||
[ext_resource type="Texture2D" uid="uid://dudgvn6o3ex" path="res://Assets/Sprites/UI/button.png" id="27_tgy6u"]
|
||||
[ext_resource type="Script" uid="uid://bsmpt1ig823du" path="res://Scripts/UI/SceneChangerBtn.cs" id="29_cwurv"]
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_1l0tm"]
|
||||
size = Vector2(19, 11)
|
||||
@@ -119,6 +124,9 @@ adjustment_contrast = 1.1
|
||||
atlas = ExtResource("11_o5yvi")
|
||||
region = Rect2(0, 0, 16, 16)
|
||||
|
||||
[sub_resource type="LabelSettings" id="LabelSettings_ese38"]
|
||||
font = ExtResource("12_rfjv2")
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_nnt18"]
|
||||
atlas = ExtResource("11_o5yvi")
|
||||
region = Rect2(0, 16, 16, 15)
|
||||
@@ -137,9 +145,31 @@ shadow_size = 0
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_nb51f"]
|
||||
shader = ExtResource("14_1phco")
|
||||
|
||||
[node name="Root" type="Node2D"]
|
||||
[sub_resource type="LabelSettings" id="LabelSettings_cwurv"]
|
||||
font = ExtResource("26_81klo")
|
||||
font_size = 128
|
||||
outline_size = 12
|
||||
outline_color = Color(0, 0, 0, 1)
|
||||
|
||||
[sub_resource type="LabelSettings" id="LabelSettings_mucmn"]
|
||||
font = ExtResource("12_rfjv2")
|
||||
font_size = 18
|
||||
outline_size = 2
|
||||
outline_color = Color(0, 0, 0, 1)
|
||||
|
||||
[sub_resource type="LabelSettings" id="LabelSettings_8m3t6"]
|
||||
font = ExtResource("26_81klo")
|
||||
font_size = 36
|
||||
|
||||
[node name="Game" type="Node2D"]
|
||||
texture_filter = 1
|
||||
|
||||
[node name="PauseManager" type="Node" parent="." node_paths=PackedStringArray("_hud", "_pauseMenu")]
|
||||
process_mode = 3
|
||||
script = ExtResource("1_tgy6u")
|
||||
_hud = NodePath("../Hud")
|
||||
_pauseMenu = NodePath("../PauseMenu")
|
||||
|
||||
[node name="TurretController" type="Node2D" parent="." node_paths=PackedStringArray("_turretParent")]
|
||||
script = ExtResource("1_nb51f")
|
||||
_typeToPrefab = Dictionary[int, PackedScene]({
|
||||
@@ -153,12 +183,14 @@ _typeToPlaceholder = Dictionary[int, PackedScene]({
|
||||
2: ExtResource("5_7nbq1")
|
||||
})
|
||||
_turretParent = NodePath("../Level/YSorted/Turrets")
|
||||
BasePrice = 125
|
||||
|
||||
[node name="GameController" type="Node" parent="." node_paths=PackedStringArray("_CurrencyLabel", "_ShrineHealthLabel")]
|
||||
[node name="GameController" type="Node" parent="." node_paths=PackedStringArray("_CurrencyLabel", "_ShrineHealthLabel", "_scoreLabel")]
|
||||
script = ExtResource("1_i6g32")
|
||||
_ShrineStartHP = 100.0
|
||||
_CurrencyLabel = NodePath("../CanvasLayer/UIRoot/CurrencyImg/CurrencyLabel")
|
||||
_ShrineHealthLabel = NodePath("../CanvasLayer/UIRoot/ShrineHealthImg/ShrineHealthLabel")
|
||||
_CurrencyLabel = NodePath("../Hud/UIRoot/CurrencyImg/CurrencyLabel")
|
||||
_ShrineHealthLabel = NodePath("../Hud/UIRoot/ShrineHealthImg/ShrineHealthLabel")
|
||||
_scoreLabel = NodePath("../Hud/UIRoot/Score/ScoreLabel")
|
||||
|
||||
[node name="EnemyController" type="Node" parent="."]
|
||||
|
||||
@@ -395,9 +427,9 @@ current = true
|
||||
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
||||
environment = SubResource("Environment_h4fw4")
|
||||
|
||||
[node name="CanvasLayer" type="CanvasLayer" parent="."]
|
||||
[node name="Hud" type="CanvasLayer" parent="."]
|
||||
|
||||
[node name="UIRoot" type="Control" parent="CanvasLayer"]
|
||||
[node name="UIRoot" type="Control" parent="Hud"]
|
||||
texture_filter = 1
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
@@ -407,7 +439,7 @@ grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
mouse_filter = 1
|
||||
|
||||
[node name="GridContainer" type="GridContainer" parent="CanvasLayer/UIRoot"]
|
||||
[node name="GridContainer" type="GridContainer" parent="Hud/UIRoot"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
@@ -423,28 +455,90 @@ grow_vertical = 0
|
||||
scale = Vector2(2, 2)
|
||||
columns = 3
|
||||
|
||||
[node name="Oni" type="Button" parent="CanvasLayer/UIRoot/GridContainer"]
|
||||
[node name="Oni" type="Button" parent="Hud/UIRoot/GridContainer"]
|
||||
custom_minimum_size = Vector2(42, 42)
|
||||
layout_mode = 2
|
||||
icon = SubResource("AtlasTexture_nb51f")
|
||||
icon_alignment = 1
|
||||
expand_icon = true
|
||||
|
||||
[node name="Kitsune" type="Button" parent="CanvasLayer/UIRoot/GridContainer"]
|
||||
[node name="Price" type="Label" parent="Hud/UIRoot/GridContainer/Oni"]
|
||||
visible = false
|
||||
layout_mode = 0
|
||||
offset_left = 20.0
|
||||
offset_top = -20.0
|
||||
offset_right = 60.0
|
||||
offset_bottom = 3.0
|
||||
text = "999"
|
||||
label_settings = SubResource("LabelSettings_ese38")
|
||||
vertical_alignment = 1
|
||||
script = ExtResource("25_mucmn")
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="Hud/UIRoot/GridContainer/Oni/Price"]
|
||||
layout_mode = 0
|
||||
offset_left = -20.0
|
||||
offset_right = 20.0
|
||||
offset_bottom = 40.0
|
||||
scale = Vector2(0.5, 0.5)
|
||||
texture = ExtResource("13_1phco")
|
||||
|
||||
[node name="Kitsune" type="Button" parent="Hud/UIRoot/GridContainer"]
|
||||
custom_minimum_size = Vector2(42, 42)
|
||||
layout_mode = 2
|
||||
icon = SubResource("AtlasTexture_nnt18")
|
||||
icon_alignment = 1
|
||||
expand_icon = true
|
||||
|
||||
[node name="Tengu" type="Button" parent="CanvasLayer/UIRoot/GridContainer"]
|
||||
[node name="Price" type="Label" parent="Hud/UIRoot/GridContainer/Kitsune"]
|
||||
visible = false
|
||||
layout_mode = 0
|
||||
offset_left = 14.0
|
||||
offset_top = -20.0
|
||||
offset_right = 54.0
|
||||
offset_bottom = 3.0
|
||||
text = "125"
|
||||
label_settings = SubResource("LabelSettings_ese38")
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
script = ExtResource("25_mucmn")
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="Hud/UIRoot/GridContainer/Kitsune/Price"]
|
||||
layout_mode = 0
|
||||
offset_left = -14.0
|
||||
offset_right = 26.0
|
||||
offset_bottom = 40.0
|
||||
scale = Vector2(0.5, 0.5)
|
||||
texture = ExtResource("13_1phco")
|
||||
|
||||
[node name="Tengu" type="Button" parent="Hud/UIRoot/GridContainer"]
|
||||
custom_minimum_size = Vector2(42, 42)
|
||||
layout_mode = 2
|
||||
icon = SubResource("AtlasTexture_ewbju")
|
||||
icon_alignment = 1
|
||||
expand_icon = true
|
||||
|
||||
[node name="CurrencyImg" type="TextureRect" parent="CanvasLayer/UIRoot"]
|
||||
[node name="Price" type="Label" parent="Hud/UIRoot/GridContainer/Tengu"]
|
||||
visible = false
|
||||
layout_mode = 0
|
||||
offset_left = 12.0
|
||||
offset_top = -20.0
|
||||
offset_right = 52.0
|
||||
offset_bottom = 3.0
|
||||
text = "125"
|
||||
label_settings = SubResource("LabelSettings_ese38")
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
script = ExtResource("25_mucmn")
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="Hud/UIRoot/GridContainer/Tengu/Price"]
|
||||
layout_mode = 0
|
||||
offset_left = -12.0
|
||||
offset_right = 28.0
|
||||
offset_bottom = 40.0
|
||||
scale = Vector2(0.5, 0.5)
|
||||
texture = ExtResource("13_1phco")
|
||||
|
||||
[node name="CurrencyImg" type="TextureRect" parent="Hud/UIRoot"]
|
||||
layout_mode = 1
|
||||
offset_left = 8.0
|
||||
offset_top = 8.0
|
||||
@@ -453,7 +547,7 @@ offset_bottom = 48.0
|
||||
scale = Vector2(2, 2)
|
||||
texture = ExtResource("13_1phco")
|
||||
|
||||
[node name="CurrencyLabel" type="Label" parent="CanvasLayer/UIRoot/CurrencyImg"]
|
||||
[node name="CurrencyLabel" type="Label" parent="Hud/UIRoot/CurrencyImg"]
|
||||
layout_mode = 1
|
||||
offset_left = 40.0
|
||||
offset_top = 8.0
|
||||
@@ -462,7 +556,26 @@ offset_bottom = 36.0
|
||||
text = "99999999"
|
||||
label_settings = SubResource("LabelSettings_o5yvi")
|
||||
|
||||
[node name="ShrineHealthImg" type="TextureRect" parent="CanvasLayer/UIRoot"]
|
||||
[node name="Score" type="TextureRect" parent="Hud/UIRoot"]
|
||||
layout_mode = 1
|
||||
offset_left = 1096.0
|
||||
offset_top = 8.0
|
||||
offset_right = 1120.0
|
||||
offset_bottom = 32.0
|
||||
scale = Vector2(2, 2)
|
||||
texture = ExtResource("27_8m3t6")
|
||||
|
||||
[node name="ScoreLabel" type="Label" parent="Hud/UIRoot/Score"]
|
||||
layout_mode = 1
|
||||
offset_left = -228.0
|
||||
offset_top = -2.5
|
||||
offset_right = -2.0
|
||||
offset_bottom = 25.5
|
||||
text = "99999999"
|
||||
label_settings = SubResource("LabelSettings_o5yvi")
|
||||
horizontal_alignment = 2
|
||||
|
||||
[node name="ShrineHealthImg" type="TextureRect" parent="Hud/UIRoot"]
|
||||
self_modulate = Color(1, 0, 0, 1)
|
||||
material = SubResource("ShaderMaterial_nb51f")
|
||||
layout_mode = 1
|
||||
@@ -473,7 +586,7 @@ offset_bottom = 144.0
|
||||
scale = Vector2(2, 2)
|
||||
texture = ExtResource("13_1phco")
|
||||
|
||||
[node name="ShrineHealthLabel" type="Label" parent="CanvasLayer/UIRoot/ShrineHealthImg"]
|
||||
[node name="ShrineHealthLabel" type="Label" parent="Hud/UIRoot/ShrineHealthImg"]
|
||||
layout_mode = 1
|
||||
offset_left = 40.0
|
||||
offset_top = 8.0
|
||||
@@ -482,7 +595,7 @@ offset_bottom = 36.0
|
||||
text = "100%"
|
||||
label_settings = SubResource("LabelSettings_o5yvi")
|
||||
|
||||
[node name="StartWaveBtn" type="Button" parent="CanvasLayer/UIRoot"]
|
||||
[node name="StartWaveBtn" type="Button" parent="Hud/UIRoot"]
|
||||
visible = false
|
||||
layout_mode = 0
|
||||
offset_left = 872.0
|
||||
@@ -492,13 +605,107 @@ offset_bottom = 599.0
|
||||
scale = Vector2(2, 2)
|
||||
text = "Start Next Wave"
|
||||
|
||||
[node name="MusicPLayer" type="AudioStreamPlayer" parent="."]
|
||||
stream = ExtResource("26_fkdbe")
|
||||
volume_db = -30.0
|
||||
autoplay = true
|
||||
parameters/looping = true
|
||||
[node name="PauseMenu" type="CanvasLayer" parent="."]
|
||||
process_mode = 3
|
||||
visible = false
|
||||
|
||||
[connection signal="pressed" from="CanvasLayer/UIRoot/GridContainer/Oni" to="TurretController" method="StartPlaceingTurret" binds= [2]]
|
||||
[connection signal="pressed" from="CanvasLayer/UIRoot/GridContainer/Kitsune" to="TurretController" method="StartPlaceingTurret" binds= [0]]
|
||||
[connection signal="pressed" from="CanvasLayer/UIRoot/GridContainer/Tengu" to="TurretController" method="StartPlaceingTurret" binds= [1]]
|
||||
[connection signal="pressed" from="CanvasLayer/UIRoot/StartWaveBtn" to="GameController" method="StartWave"]
|
||||
[node name="Label" type="Label" parent="PauseMenu"]
|
||||
texture_filter = 1
|
||||
anchors_preset = 5
|
||||
anchor_left = 0.5
|
||||
anchor_right = 0.5
|
||||
offset_left = -128.0
|
||||
offset_top = -22.0
|
||||
offset_right = 128.0
|
||||
offset_bottom = 164.0
|
||||
grow_horizontal = 2
|
||||
text = "一時停止"
|
||||
label_settings = SubResource("LabelSettings_cwurv")
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="Label2" type="Label" parent="PauseMenu"]
|
||||
texture_filter = 1
|
||||
anchors_preset = 5
|
||||
anchor_left = 0.5
|
||||
anchor_right = 0.5
|
||||
offset_left = -106.0
|
||||
offset_top = 93.0
|
||||
offset_right = 106.0
|
||||
offset_bottom = 211.0
|
||||
grow_horizontal = 2
|
||||
text = "The game is paused"
|
||||
label_settings = SubResource("LabelSettings_mucmn")
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="HFlowContainer" type="HFlowContainer" parent="PauseMenu"]
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -147.0
|
||||
offset_top = -122.0
|
||||
offset_right = 147.0
|
||||
offset_bottom = -2.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
alignment = 1
|
||||
|
||||
[node name="Continue" type="TextureButton" parent="PauseMenu/HFlowContainer"]
|
||||
texture_filter = 1
|
||||
custom_minimum_size = Vector2(200, 50)
|
||||
layout_mode = 2
|
||||
texture_normal = ExtResource("27_tgy6u")
|
||||
stretch_mode = 5
|
||||
|
||||
[node name="Label" type="Label" parent="PauseMenu/HFlowContainer/Continue"]
|
||||
texture_filter = 1
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_top = -2.0
|
||||
offset_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
text = "Continue"
|
||||
label_settings = SubResource("LabelSettings_8m3t6")
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="Menu" type="TextureButton" parent="PauseMenu/HFlowContainer"]
|
||||
texture_filter = 1
|
||||
custom_minimum_size = Vector2(200, 50)
|
||||
layout_mode = 2
|
||||
texture_normal = ExtResource("27_tgy6u")
|
||||
stretch_mode = 5
|
||||
script = ExtResource("29_cwurv")
|
||||
|
||||
[node name="Label" type="Label" parent="PauseMenu/HFlowContainer/Menu"]
|
||||
texture_filter = 1
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_top = -2.0
|
||||
offset_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
text = "Main Menu"
|
||||
label_settings = SubResource("LabelSettings_8m3t6")
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[connection signal="mouse_entered" from="Hud/UIRoot/GridContainer/Oni" to="Hud/UIRoot/GridContainer/Oni/Price" method="set_visible" binds= [true]]
|
||||
[connection signal="mouse_exited" from="Hud/UIRoot/GridContainer/Oni" to="Hud/UIRoot/GridContainer/Oni/Price" method="set_visible" binds= [false]]
|
||||
[connection signal="pressed" from="Hud/UIRoot/GridContainer/Oni" to="TurretController" method="StartPlaceingTurret" binds= [2]]
|
||||
[connection signal="mouse_entered" from="Hud/UIRoot/GridContainer/Kitsune" to="Hud/UIRoot/GridContainer/Kitsune/Price" method="set_visible" binds= [true]]
|
||||
[connection signal="mouse_exited" from="Hud/UIRoot/GridContainer/Kitsune" to="Hud/UIRoot/GridContainer/Kitsune/Price" method="set_visible" binds= [false]]
|
||||
[connection signal="pressed" from="Hud/UIRoot/GridContainer/Kitsune" to="TurretController" method="StartPlaceingTurret" binds= [0]]
|
||||
[connection signal="mouse_entered" from="Hud/UIRoot/GridContainer/Tengu" to="Hud/UIRoot/GridContainer/Tengu/Price" method="set_visible" binds= [true]]
|
||||
[connection signal="mouse_exited" from="Hud/UIRoot/GridContainer/Tengu" to="Hud/UIRoot/GridContainer/Tengu/Price" method="set_visible" binds= [false]]
|
||||
[connection signal="pressed" from="Hud/UIRoot/GridContainer/Tengu" to="TurretController" method="StartPlaceingTurret" binds= [1]]
|
||||
[connection signal="pressed" from="Hud/UIRoot/StartWaveBtn" to="GameController" method="StartWave"]
|
||||
[connection signal="pressed" from="PauseMenu/HFlowContainer/Continue" to="PauseManager" method="ContinueGame"]
|
||||
|
||||
@@ -0,0 +1,267 @@
|
||||
[gd_scene load_steps=12 format=3 uid="uid://cof1iapx258cw"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://bb6vffiwr24cs" path="res://Assets/Sprites/UI/logokg.png" id="1_1rerr"]
|
||||
[ext_resource type="Texture2D" uid="uid://dudgvn6o3ex" path="res://Assets/Sprites/UI/button.png" id="1_cayip"]
|
||||
[ext_resource type="FontFile" uid="uid://2ojf62uk562d" path="res://Assets/Fonts/DotGothic16-Regular.ttf" id="2_158mb"]
|
||||
[ext_resource type="Script" uid="uid://bsmpt1ig823du" path="res://Scripts/UI/SceneChangerBtn.cs" id="2_jsrd8"]
|
||||
[ext_resource type="Texture2D" uid="uid://2x62ipg12256" path="res://Assets/Sprites/Vfx/particle.png" id="4_158mb"]
|
||||
[ext_resource type="Script" uid="uid://dsjivlkkwvwqs" path="res://Scripts/UI/QuitBtn.gd" id="4_wbdvm"]
|
||||
[ext_resource type="FontFile" uid="uid://b8lsp07ucxq6p" path="res://Assets/Fonts/MintsodaLimeGreen13X16Regular-KVvzA.ttf" id="4_wwsa2"]
|
||||
|
||||
[sub_resource type="LabelSettings" id="LabelSettings_wwsa2"]
|
||||
font = ExtResource("2_158mb")
|
||||
font_size = 36
|
||||
|
||||
[sub_resource type="LabelSettings" id="LabelSettings_jsrd8"]
|
||||
font = ExtResource("4_wwsa2")
|
||||
font_size = 51
|
||||
|
||||
[sub_resource type="LabelSettings" id="LabelSettings_wbdvm"]
|
||||
font = ExtResource("4_wwsa2")
|
||||
font_size = 26
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_wwsa2"]
|
||||
offsets = PackedFloat32Array(0, 0.6683673, 1)
|
||||
colors = PackedColorArray(0, 0, 0, 0, 4.416, 2.127, 3.729, 1, 1, 1, 1, 0)
|
||||
|
||||
[node name="Menu" type="Node2D"]
|
||||
|
||||
[node name="Camera2D" type="Camera2D" parent="."]
|
||||
zoom = Vector2(4, 4)
|
||||
|
||||
[node name="CanvasLayer" type="CanvasLayer" parent="."]
|
||||
|
||||
[node name="Control" type="Control" parent="CanvasLayer"]
|
||||
texture_filter = 1
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="HFlowContainer" type="VFlowContainer" parent="CanvasLayer/Control"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -100.0
|
||||
offset_top = -244.0
|
||||
offset_right = 100.0
|
||||
offset_bottom = -19.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
alignment = 1
|
||||
last_wrap_alignment = 2
|
||||
|
||||
[node name="Start" type="TextureButton" parent="CanvasLayer/Control/HFlowContainer"]
|
||||
texture_filter = 1
|
||||
custom_minimum_size = Vector2(200, 50)
|
||||
layout_mode = 2
|
||||
texture_normal = ExtResource("1_cayip")
|
||||
stretch_mode = 5
|
||||
script = ExtResource("2_jsrd8")
|
||||
_changeTo = 1
|
||||
|
||||
[node name="Label" type="Label" parent="CanvasLayer/Control/HFlowContainer/Start"]
|
||||
texture_filter = 1
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_top = -2.0
|
||||
offset_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
text = "Start"
|
||||
label_settings = SubResource("LabelSettings_wwsa2")
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="Settings" type="TextureButton" parent="CanvasLayer/Control/HFlowContainer"]
|
||||
visible = false
|
||||
texture_filter = 1
|
||||
custom_minimum_size = Vector2(200, 50)
|
||||
layout_mode = 2
|
||||
texture_normal = ExtResource("1_cayip")
|
||||
stretch_mode = 5
|
||||
|
||||
[node name="Label" type="Label" parent="CanvasLayer/Control/HFlowContainer/Settings"]
|
||||
texture_filter = 1
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_top = -2.0
|
||||
offset_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
text = "Settings"
|
||||
label_settings = SubResource("LabelSettings_wwsa2")
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="Credits" type="TextureButton" parent="CanvasLayer/Control/HFlowContainer"]
|
||||
texture_filter = 1
|
||||
custom_minimum_size = Vector2(200, 50)
|
||||
layout_mode = 2
|
||||
texture_normal = ExtResource("1_cayip")
|
||||
stretch_mode = 5
|
||||
|
||||
[node name="Label" type="Label" parent="CanvasLayer/Control/HFlowContainer/Credits"]
|
||||
texture_filter = 1
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_top = -2.0
|
||||
offset_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
text = "Credits"
|
||||
label_settings = SubResource("LabelSettings_wwsa2")
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="Quit" type="TextureButton" parent="CanvasLayer/Control/HFlowContainer"]
|
||||
texture_filter = 1
|
||||
custom_minimum_size = Vector2(200, 50)
|
||||
layout_mode = 2
|
||||
texture_normal = ExtResource("1_cayip")
|
||||
stretch_mode = 5
|
||||
script = ExtResource("4_wbdvm")
|
||||
|
||||
[node name="Label" type="Label" parent="CanvasLayer/Control/HFlowContainer/Quit"]
|
||||
texture_filter = 1
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_top = -2.0
|
||||
offset_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
text = "Quit"
|
||||
label_settings = SubResource("LabelSettings_wwsa2")
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="Logo" type="TextureRect" parent="CanvasLayer/Control"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 5
|
||||
anchor_left = 0.5
|
||||
anchor_right = 0.5
|
||||
offset_left = -368.0
|
||||
offset_top = -38.0
|
||||
offset_right = 368.00006
|
||||
offset_bottom = 422.0
|
||||
grow_horizontal = 2
|
||||
texture = ExtResource("1_1rerr")
|
||||
|
||||
[node name="Credits" type="Control" parent="CanvasLayer/Control"]
|
||||
visible = false
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="Mainmenu" type="TextureButton" parent="CanvasLayer/Control/Credits"]
|
||||
texture_filter = 1
|
||||
custom_minimum_size = Vector2(200, 50)
|
||||
layout_mode = 1
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -100.0
|
||||
offset_top = -82.0
|
||||
offset_right = 100.0
|
||||
offset_bottom = -32.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
texture_normal = ExtResource("1_cayip")
|
||||
stretch_mode = 5
|
||||
|
||||
[node name="Label" type="Label" parent="CanvasLayer/Control/Credits/Mainmenu"]
|
||||
texture_filter = 1
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_top = -2.0
|
||||
offset_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
text = "Back"
|
||||
label_settings = SubResource("LabelSettings_wwsa2")
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="Label" type="Label" parent="CanvasLayer/Control/Credits"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 8
|
||||
anchor_left = 0.5
|
||||
anchor_top = 0.5
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = -102.0
|
||||
offset_top = 45.0
|
||||
offset_right = 102.0
|
||||
offset_bottom = 166.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
text = "Credits
|
||||
"
|
||||
label_settings = SubResource("LabelSettings_jsrd8")
|
||||
horizontal_alignment = 1
|
||||
|
||||
[node name="Label2" type="Label" parent="CanvasLayer/Control/Credits"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 8
|
||||
anchor_left = 0.5
|
||||
anchor_top = 0.5
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = -244.0
|
||||
offset_top = 104.0
|
||||
offset_right = 244.0
|
||||
offset_bottom = 266.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
text = "Marumarsu - programming & SFX
|
||||
Sraapfft - art
|
||||
Belzebunny - art
|
||||
Music - music.storyinvention.com
|
||||
"
|
||||
label_settings = SubResource("LabelSettings_wbdvm")
|
||||
|
||||
[node name="CPUParticles2D" type="CPUParticles2D" parent="."]
|
||||
position = Vector2(-4, -84)
|
||||
amount = 32
|
||||
texture = ExtResource("4_158mb")
|
||||
lifetime = 10.0
|
||||
randomness = 1.0
|
||||
lifetime_randomness = 0.31
|
||||
emission_shape = 3
|
||||
emission_rect_extents = Vector2(152.29, 1)
|
||||
spread = 0.0
|
||||
gravity = Vector2(7, 15)
|
||||
angular_velocity_min = -50.0
|
||||
angular_velocity_max = 50.0
|
||||
radial_accel_min = -10.0
|
||||
radial_accel_max = 10.0
|
||||
scale_amount_min = 0.2
|
||||
scale_amount_max = 0.3
|
||||
color = Color(4.415934, 2.1274936, 3.7294016, 1)
|
||||
color_ramp = SubResource("Gradient_wwsa2")
|
||||
|
||||
[connection signal="pressed" from="CanvasLayer/Control/HFlowContainer/Credits" to="CanvasLayer/Control/HFlowContainer" method="set_visible" binds= [false]]
|
||||
[connection signal="pressed" from="CanvasLayer/Control/HFlowContainer/Credits" to="CanvasLayer/Control/Credits" method="set_visible" binds= [true]]
|
||||
[connection signal="pressed" from="CanvasLayer/Control/HFlowContainer/Quit" to="CanvasLayer/Control/HFlowContainer/Quit" method="_on_QuitButton_pressed"]
|
||||
[connection signal="pressed" from="CanvasLayer/Control/Credits/Mainmenu" to="CanvasLayer/Control/HFlowContainer" method="set_visible" binds= [true]]
|
||||
[connection signal="pressed" from="CanvasLayer/Control/Credits/Mainmenu" to="CanvasLayer/Control/Credits" method="set_visible" binds= [false]]
|
||||
@@ -8,9 +8,11 @@ public partial class GameController : Node
|
||||
[Export] private float _ShrineStartHP;
|
||||
[Export] private Label _CurrencyLabel;
|
||||
[Export] private Label _ShrineHealthLabel;
|
||||
[Export] private Label _scoreLabel;
|
||||
|
||||
public int Wave { get; private set; }
|
||||
public int Currency { get; private set; }
|
||||
public int Score { get; private set; }
|
||||
public float ShrineHealth { get; private set; }
|
||||
|
||||
private bool _waveOnGoing = false;
|
||||
@@ -20,10 +22,11 @@ public partial class GameController : Node
|
||||
GameController.Instance = this;
|
||||
Wave = 0;
|
||||
Currency = 300;
|
||||
ShrineHealth = 100;
|
||||
|
||||
ShrineHealth = _ShrineStartHP;
|
||||
|
||||
_CurrencyLabel.Text = Currency.ToString();
|
||||
_ShrineHealthLabel.Text = $"{(100f * (ShrineHealth /_ShrineStartHP)):F1}%";
|
||||
_scoreLabel.Text = "0";
|
||||
|
||||
CallDeferred(nameof(DelayNextWave));
|
||||
}
|
||||
@@ -34,12 +37,7 @@ public partial class GameController : Node
|
||||
Wave++;
|
||||
_waveOnGoing = true;
|
||||
|
||||
int amountToSpawn = (int)Math.Round(5 * Math.Pow(Wave, 1.05));
|
||||
|
||||
for (int i = 0; i < 100; i++)
|
||||
{
|
||||
// GD.Print((int)Math.Round(5 * Math.Pow(i + 1, 1.05)));
|
||||
}
|
||||
int amountToSpawn = (int)Math.Round(5 * Math.Pow(Wave, 1.025));
|
||||
|
||||
EnemySpawner.Instance.EnemiesSpawned = amountToSpawn;
|
||||
|
||||
@@ -73,7 +71,7 @@ public partial class GameController : Node
|
||||
_ShrineHealthLabel.Text = $"{(100f * (ShrineHealth /_ShrineStartHP)):F1}%";
|
||||
if (ShrineHealth <= 0)
|
||||
{
|
||||
// TODO LOSE SCENARIO
|
||||
SceneManager.Instance.ChangeScene(Scenes.End);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -81,6 +79,8 @@ public partial class GameController : Node
|
||||
{
|
||||
v = Math.Abs(v);
|
||||
Currency += v;
|
||||
Score += v;
|
||||
_scoreLabel.Text = Score.ToString();
|
||||
_CurrencyLabel.Text = Currency.ToString();
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
using Godot;
|
||||
using System;
|
||||
|
||||
public partial class PauseManager : Node
|
||||
{
|
||||
[Export] private CanvasLayer _hud;
|
||||
[Export] private CanvasLayer _pauseMenu;
|
||||
|
||||
public override void _Process(double delta)
|
||||
{
|
||||
if (Input.IsActionJustPressed("pause"))
|
||||
{
|
||||
bool paused = GetTree().Paused;
|
||||
if (!paused)
|
||||
{
|
||||
PauseGame();
|
||||
return;
|
||||
}
|
||||
ContinueGame();
|
||||
}
|
||||
}
|
||||
|
||||
public void PauseGame()
|
||||
{
|
||||
GetTree().Paused = true;
|
||||
_hud.Visible = false;
|
||||
_pauseMenu.Visible = true;
|
||||
}
|
||||
|
||||
public void ContinueGame()
|
||||
{
|
||||
GetTree().Paused = false;
|
||||
_hud.Visible = true;
|
||||
_pauseMenu.Visible = false;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://ch2o7voah6o3o
|
||||
@@ -0,0 +1,84 @@
|
||||
using Godot;
|
||||
using System;
|
||||
|
||||
public enum Scenes
|
||||
{
|
||||
Menu,
|
||||
Game,
|
||||
End
|
||||
}
|
||||
|
||||
public partial class SceneManager : Node
|
||||
{
|
||||
public static SceneManager Instance;
|
||||
|
||||
[Export] private Node _root;
|
||||
|
||||
[Export] private PackedScene _gameScene;
|
||||
[Export] private PackedScene _menuScene;
|
||||
[Export] private PackedScene _endScene;
|
||||
|
||||
private Node _game;
|
||||
private Node _menu;
|
||||
private Node _end;
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
Instance = this;
|
||||
CallDeferred(nameof(EnterMenu));
|
||||
}
|
||||
|
||||
public void ChangeScene(Scenes s)
|
||||
{
|
||||
GetTree().Paused = false;
|
||||
switch (s)
|
||||
{
|
||||
case Scenes.Menu:
|
||||
EnterMenu();
|
||||
break;
|
||||
case Scenes.Game:
|
||||
EnterGame();
|
||||
break;
|
||||
case Scenes.End:
|
||||
EnterEnd();
|
||||
break;
|
||||
default:
|
||||
throw new ArgumentOutOfRangeException(nameof(s), s, null);
|
||||
}
|
||||
}
|
||||
|
||||
private void EnterMenu()
|
||||
{
|
||||
RemoveScene(ref _game);
|
||||
RemoveScene(ref _end);
|
||||
AddScene(ref _menuScene, ref _menu);
|
||||
}
|
||||
|
||||
private void EnterGame()
|
||||
{
|
||||
RemoveScene(ref _menu);
|
||||
RemoveScene(ref _end);
|
||||
AddScene(ref _gameScene, ref _game);
|
||||
}
|
||||
|
||||
private void EnterEnd() // Not the Minecraft
|
||||
{
|
||||
RemoveScene(ref _game);
|
||||
RemoveScene(ref _menu);
|
||||
AddScene(ref _endScene, ref _end);
|
||||
}
|
||||
|
||||
private void RemoveScene(ref Node n)
|
||||
{
|
||||
if (n == null) return;
|
||||
n.GetParent()?.RemoveChild(n);
|
||||
n.QueueFree();
|
||||
n = null;
|
||||
}
|
||||
|
||||
private void AddScene(ref PackedScene s, ref Node n)
|
||||
{
|
||||
n = s.Instantiate();
|
||||
_root.AddChild(n);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://bmdb22du7uvr1
|
||||
@@ -8,7 +8,7 @@ public partial class EnemyMovement : Node
|
||||
[Export] private float _speed;
|
||||
|
||||
private float _finalSpeed => _speed + 0.15f * (float)Math.Log(GameController.Instance.Wave + 1);
|
||||
|
||||
|
||||
private double _time = 0;
|
||||
|
||||
public override void _EnterTree()
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using System;
|
||||
using Godot;
|
||||
using System.Collections.Generic;
|
||||
|
||||
@@ -53,10 +54,10 @@ public partial class EnemyPool : Node
|
||||
|
||||
private void Died(Enemy e)
|
||||
{
|
||||
GameController.Instance.AddCurrency(25);
|
||||
GameController.Instance.AddCurrency((int)Math.Floor(e.Health.MaxHP));
|
||||
ReturnToPool(e);
|
||||
}
|
||||
|
||||
|
||||
private void ReturnToPool(Enemy e)
|
||||
{
|
||||
EnemySpawner.Instance.EnemiesSpawned--;
|
||||
|
||||
@@ -13,6 +13,7 @@ public partial class Projectile : Node2D
|
||||
|
||||
public event Action<Projectile> OnDespawn;
|
||||
public Vector2 Direction;
|
||||
public float Damage;
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
@@ -34,7 +35,7 @@ public partial class Projectile : Node2D
|
||||
if (area is EnemyArea earea)
|
||||
{
|
||||
float isSe = _superEffective.Contains(earea.Enemy.Type) ? 2f : 1f;
|
||||
earea.Enemy.Health.Substract(_baseDamage * isSe);
|
||||
earea.Enemy.Health.Substract(Damage * isSe);
|
||||
}
|
||||
|
||||
CallDeferred(nameof(Despawn));
|
||||
|
||||
@@ -7,6 +7,7 @@ public partial class DragMover : Node
|
||||
[Export] public Area2D CheckArea; // Overlap validation
|
||||
[Export] public Area2D ShootArea; // This gets disabled while dragging
|
||||
|
||||
private bool _tresholdReached = false;
|
||||
private bool _dragging;
|
||||
private Vector2 _dragOffset;
|
||||
private Vector2 _originalPosition;
|
||||
@@ -30,36 +31,52 @@ public partial class DragMover : Node
|
||||
if (!_canMove) return;
|
||||
if (@event is not InputEventMouseButton mb) return;
|
||||
if (mb.ButtonIndex != MouseButton.Left) return;
|
||||
|
||||
|
||||
if (mb.Pressed)
|
||||
{
|
||||
_dragging = true;
|
||||
ShootArea.Monitoring = false;
|
||||
_originalPosition = Parent.GlobalPosition;
|
||||
|
||||
Parent.SetModulate(Color.FromHtml("ffffff20"));
|
||||
_dragOffset = Parent.GlobalPosition - Parent.GetGlobalMousePosition();
|
||||
}
|
||||
else
|
||||
{
|
||||
_dragging = false;
|
||||
ShootArea.Monitoring = true;
|
||||
|
||||
// Check overlaps when released
|
||||
if (CheckArea.HasOverlappingAreas() || CheckArea.HasOverlappingBodies())
|
||||
if (CheckArea.HasOverlappingAreas() || CheckArea.HasOverlappingBodies() || !_tresholdReached)
|
||||
{
|
||||
Parent.GlobalPosition = _originalPosition;
|
||||
Parent.SetModulate(Color.FromHtml("ffffffff"));
|
||||
}
|
||||
else
|
||||
{
|
||||
MovementDelay();
|
||||
}
|
||||
_tresholdReached = false;
|
||||
_dragging = false;
|
||||
}
|
||||
}
|
||||
|
||||
public override void _Process(double delta)
|
||||
{
|
||||
if ((Parent.GetGlobalMousePosition() + _dragOffset).DistanceTo(_originalPosition) >= 10f && _dragging)
|
||||
{
|
||||
_tresholdReached = true;
|
||||
}
|
||||
|
||||
if ((Parent.GetGlobalMousePosition() + _dragOffset).DistanceTo(_originalPosition) <= 10f && !_tresholdReached) return;
|
||||
if (!_dragging) return;
|
||||
|
||||
if (CheckArea.HasOverlappingAreas() || CheckArea.HasOverlappingBodies())
|
||||
{
|
||||
Parent.SetModulate(Color.FromHtml("ff000020"));
|
||||
}
|
||||
else
|
||||
{
|
||||
Parent.SetModulate(Color.FromHtml("ffffff20"));
|
||||
}
|
||||
|
||||
Parent.GlobalPosition = Parent.GetGlobalMousePosition() + _dragOffset;
|
||||
}
|
||||
|
||||
@@ -68,7 +85,7 @@ public partial class DragMover : Node
|
||||
ShootArea.Monitoring = false;
|
||||
_canMove = false;
|
||||
Parent.SetModulate(Color.FromHtml("ffffff20"));
|
||||
await ToSignal(GetTree().CreateTimer(4), SceneTreeTimer.SignalName.Timeout);
|
||||
await ToSignal(GetTree().CreateTimer(1.5), SceneTreeTimer.SignalName.Timeout);
|
||||
Parent.SetModulate(Color.FromHtml("ffffffff"));
|
||||
ShootArea.Monitoring = true;
|
||||
_canMove = true;
|
||||
|
||||
@@ -13,9 +13,20 @@ public partial class Turret : Node
|
||||
[Export] private ProjectilePool _projectilePool;
|
||||
[Export] private AudioStreamPlayer2D _audio;
|
||||
private float _fireTimer = 0f;
|
||||
|
||||
|
||||
public int Level { get; private set; } = 1;
|
||||
public int UpgradeCost => 31 + (int)(31 * Math.Pow(Level, 1.75f));
|
||||
|
||||
public float FireRate => _fireRate + (Level - 1) * 0.05f;
|
||||
public float Damage => 25 + (int)(10 + Math.Pow(Level, 1.5f));
|
||||
|
||||
private HashSet<Enemy> _enemiesInRange = new HashSet<Enemy>();
|
||||
|
||||
public void Upgrade()
|
||||
{
|
||||
Level++;
|
||||
}
|
||||
|
||||
public override void _EnterTree()
|
||||
{
|
||||
_Attackrange.AreaEntered += EnemyEntered;
|
||||
@@ -42,7 +53,7 @@ public partial class Turret : Node
|
||||
{
|
||||
if (_enemiesInRange.Count == 0) return;
|
||||
_fireTimer += (float)delta;
|
||||
if (!(_fireTimer >= 1f / _fireRate)) return;
|
||||
if (!(_fireTimer >= 1f / FireRate)) return;
|
||||
_fireTimer = 0;
|
||||
_audio?.SetPitchScale(RandomHelper.Float(0.8f, 1.2f));
|
||||
_audio?.Play();
|
||||
@@ -50,6 +61,7 @@ public partial class Turret : Node
|
||||
var dir = (t.GlobalPosition - _parent.GlobalPosition).Normalized();
|
||||
var proj = _projectilePool.Get();
|
||||
proj.Direction = dir;
|
||||
proj.Damage = Damage;
|
||||
proj.GlobalPosition = _parent.GlobalPosition;
|
||||
proj.Rotation = dir.Angle();
|
||||
ProjectileParent.Instance.AddChild(proj);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Godot;
|
||||
using Godot.Collections;
|
||||
|
||||
public enum TurretType
|
||||
{
|
||||
@@ -11,10 +11,17 @@ public enum TurretType
|
||||
|
||||
public partial class TurretController : Node2D
|
||||
{
|
||||
[Export] private Dictionary<TurretType, PackedScene> _typeToPrefab;
|
||||
[Export] private Dictionary<TurretType, PackedScene> _typeToPlaceholder;
|
||||
public static TurretController Instance;
|
||||
|
||||
[Export] private Godot.Collections.Dictionary<TurretType, PackedScene> _typeToPrefab;
|
||||
[Export] private Godot.Collections.Dictionary<TurretType, PackedScene> _typeToPlaceholder;
|
||||
[Export] private Node2D _turretParent;
|
||||
|
||||
[Export] public int BasePrice;
|
||||
public int TurretAmount => _allTurrets.Count;
|
||||
|
||||
public int TurretPrice => BasePrice + (int)Math.Round(30f * Math.Pow(TurretAmount, 1.5f));
|
||||
|
||||
[Signal]
|
||||
public delegate void PlaceTurretEventHandler(TurretType t);
|
||||
|
||||
@@ -23,8 +30,11 @@ public partial class TurretController : Node2D
|
||||
private TurretPlaceholder _turretPlaceholder;
|
||||
private TurretType _currentlyPlacingType;
|
||||
|
||||
private HashSet<Node2D> _allTurrets = new();
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
Instance = this;
|
||||
PlaceTurret += StartPlaceingTurret;
|
||||
}
|
||||
|
||||
@@ -40,8 +50,9 @@ public partial class TurretController : Node2D
|
||||
{
|
||||
case MouseButton.Left:
|
||||
if (!_turretPlaceholder.CanPlace) return;
|
||||
if (!GameController.Instance.TryRemoveCurrency(_turretPlaceholder.Cost)) return;
|
||||
if (!GameController.Instance.TryRemoveCurrency(TurretPrice)) return;
|
||||
var newT = _typeToPrefab[_currentlyPlacingType].Instantiate() as Node2D;
|
||||
_allTurrets.Add(newT);
|
||||
_turretParent.AddChild(newT);
|
||||
newT.GlobalPosition = mpos;
|
||||
break;
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
using Godot;
|
||||
|
||||
public partial class TurretUpgrader : Node
|
||||
{
|
||||
[Export] private Turret _turret;
|
||||
[Export] private Area2D _clickArea;
|
||||
[Export] private Control _ui;
|
||||
[Export] private Label _costLabel;
|
||||
[Export] private Label _damageLabel;
|
||||
[Export] private Label _fireRateLabel;
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
_clickArea.InputEvent += OnClickAreaInputEvent;
|
||||
_clickArea.MouseEntered += MouseEntered;
|
||||
_clickArea.MouseExited += MouseExited;
|
||||
}
|
||||
|
||||
private void OnClickAreaInputEvent(Node viewport, InputEvent @event, long shapeIdx)
|
||||
{
|
||||
if (@event is not InputEventMouseButton m)
|
||||
{
|
||||
return;
|
||||
}
|
||||
if (m.ButtonIndex != MouseButton.Right) return;
|
||||
|
||||
if (!GameController.Instance.TryRemoveCurrency(_turret.UpgradeCost)) return;
|
||||
_turret.Upgrade();
|
||||
_costLabel.Text = _turret.UpgradeCost.ToString();
|
||||
_damageLabel.Text = _turret.Damage.ToString();
|
||||
_fireRateLabel.Text = _turret.FireRate.ToString();
|
||||
}
|
||||
|
||||
private void MouseEntered()
|
||||
{
|
||||
if (_ui == null) return;
|
||||
_ui.Visible = true;
|
||||
_costLabel.Text = _turret.UpgradeCost.ToString();
|
||||
_damageLabel.Text = _turret.Damage.ToString();
|
||||
_fireRateLabel.Text = _turret.FireRate.ToString();
|
||||
}
|
||||
|
||||
private void MouseExited()
|
||||
{
|
||||
if (_ui == null) return;
|
||||
_ui.Visible = false;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://qf0qrqg0l7np
|
||||
@@ -0,0 +1,10 @@
|
||||
using Godot;
|
||||
using System;
|
||||
|
||||
public partial class PriceUpdater : Label
|
||||
{
|
||||
public override void _Process(double delta)
|
||||
{
|
||||
Text = TurretController.Instance.TurretPrice.ToString();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://fxb27qlab5nb
|
||||
@@ -0,0 +1,4 @@
|
||||
extends TextureButton
|
||||
|
||||
func _on_QuitButton_pressed():
|
||||
get_tree().quit()
|
||||
@@ -0,0 +1 @@
|
||||
uid://dsjivlkkwvwqs
|
||||
@@ -0,0 +1,16 @@
|
||||
using Godot;
|
||||
|
||||
public partial class SceneChangerBtn : TextureButton
|
||||
{
|
||||
[Export] private Scenes _changeTo;
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
ButtonUp += Change;
|
||||
}
|
||||
|
||||
private void Change()
|
||||
{
|
||||
SceneManager.Instance.ChangeScene(_changeTo);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://bsmpt1ig823du
|
||||
+7
-1
@@ -15,7 +15,7 @@ config/name_localized={
|
||||
"ja": "仮面の保護者"
|
||||
}
|
||||
config/version="0.0.1"
|
||||
run/main_scene="uid://csyk43kt3xbyx"
|
||||
run/main_scene="uid://ddoe833kg11n5"
|
||||
config/features=PackedStringArray("4.5", "C#", "Forward Plus")
|
||||
boot_splash/show_image=false
|
||||
config/icon="res://icon.svg"
|
||||
@@ -66,6 +66,12 @@ attack={
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":2,"pressure":0.0,"pressed":false,"script":null)
|
||||
]
|
||||
}
|
||||
pause={
|
||||
"deadzone": 0.2,
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194305,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":6,"pressure":0.0,"pressed":false,"script":null)
|
||||
]
|
||||
}
|
||||
|
||||
[physics]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user