diff --git a/components/Bullets/Bengbeng.tscn b/components/Bullets/Bengbeng.tscn new file mode 100644 index 0000000..afae6f2 --- /dev/null +++ b/components/Bullets/Bengbeng.tscn @@ -0,0 +1,112 @@ +[gd_scene format=3 uid="uid://d0g631tqx6w5q"] + +[ext_resource type="PackedScene" uid="uid://crtdkysmnkith" path="res://components/Abstracts/BulletBase.tscn" id="1_tgiid"] +[ext_resource type="Script" uid="uid://ddgydi8qj3t40" path="res://scripts/Contents/Bullets/Bengbeng.gd" id="2_165xl"] +[ext_resource type="Texture2D" uid="uid://ccsq5rjmm2wbs" path="res://resources/bullets/bengbeng/0.png" id="2_jylg3"] +[ext_resource type="Shader" uid="uid://dfd73rom161o4" path="res://shaders/FilledRing.gdshader" id="5_txsro"] +[ext_resource type="Script" uid="uid://cgb01lelfg73p" path="res://scripts/Statemachine/ShaderStage.gd" id="6_6g0ep"] + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_1mqkh"] +shader = ExtResource("5_txsro") +shader_parameter/inner = 1.0 +shader_parameter/outer = 1.0 +shader_parameter/alpha = 1.0 + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_5xjim"] +shader = ExtResource("5_txsro") +shader_parameter/inner = 0.98 +shader_parameter/outer = 1.0 +shader_parameter/alpha = 0.1 + +[sub_resource type="SpriteFrames" id="SpriteFrames_q5lkk"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": ExtResource("2_jylg3") +}], +"loop": true, +"name": &"default", +"speed": 5.0 +}] + +[sub_resource type="Animation" id="Animation_165xl"] +length = 0.001 +tracks/0/type = "bezier" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:position:y") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} + +[sub_resource type="Animation" id="Animation_of0mu"] +resource_name = "destroy" +length = 0.5 +step = 0.1 + +[sub_resource type="Animation" id="Animation_txsro"] +resource_name = "loop" +length = 0.88 +loop_mode = 1 +step = 0.01 +tracks/0/type = "bezier" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:position:y") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"handle_modes": PackedInt32Array(2, 0), +"points": PackedFloat32Array(-45, 0, 0, 0, -40, -45, 0, -40, 0, 0), +"times": PackedFloat32Array(0, 0.88) +} + +[sub_resource type="Animation" id="Animation_6g0ep"] +resource_name = "spawn" + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_1mqkh"] +_data = { +&"RESET": SubResource("Animation_165xl"), +&"destroy": SubResource("Animation_of0mu"), +&"loop": SubResource("Animation_txsro"), +&"spawn": SubResource("Animation_6g0ep") +} + +[sub_resource type="CircleShape2D" id="CircleShape2D_165xl"] +radius = 334.14966 + +[node name="Bengbeng" unique_id=5571707 instance=ExtResource("1_tgiid")] +script = ExtResource("2_165xl") +displayName = "蹦蹦炸弹" +speed = 4.0 +baseDamage = 30.0 +lifeTime = 10000.0 +autoLoopAnimation = true + +[node name="warnbg" type="Node2D" parent="." index="0" unique_id=122409585] +material = SubResource("ShaderMaterial_1mqkh") +script = ExtResource("6_6g0ep") +size = Vector2(250, 125) +color = Color(0, 0, 0, 0.2) + +[node name="warn" type="Node2D" parent="." index="1" unique_id=804964529] +material = SubResource("ShaderMaterial_5xjim") +script = ExtResource("6_6g0ep") +size = Vector2(250, 125) +color = Color(1, 0, 0, 1) + +[node name="texture" parent="." index="2" unique_id=162977358] +scale = Vector2(0.2, 0.2) +sprite_frames = SubResource("SpriteFrames_q5lkk") + +[node name="animator" parent="texture" index="0" unique_id=1114087117] +libraries/ = SubResource("AnimationLibrary_1mqkh") + +[node name="hitbox" parent="." index="3" unique_id=175349408] +position = Vector2(0, -42) +shape = SubResource("CircleShape2D_165xl") +disabled = true diff --git a/components/Bullets/SCBlock.tscn b/components/Bullets/SCBlock.tscn new file mode 100644 index 0000000..541d056 --- /dev/null +++ b/components/Bullets/SCBlock.tscn @@ -0,0 +1,52 @@ +[gd_scene format=3 uid="uid://oq2j018das8d"] + +[ext_resource type="PackedScene" uid="uid://crtdkysmnkith" path="res://components/Abstracts/BulletBase.tscn" id="1_ceess"] +[ext_resource type="Texture2D" uid="uid://b84vn2kmvsrhm" path="res://resources/bullets/scblock/0.png" id="2_78ubb"] +[ext_resource type="Script" uid="uid://cek16mji13xpe" path="res://scripts/Contents/Bullets/SCBlock.gd" id="2_brae2"] + +[sub_resource type="Curve" id="Curve_brae2"] +_data = [Vector2(0, 0.5), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0] +point_count = 2 + +[sub_resource type="CurveTexture" id="CurveTexture_m2ljf"] +curve = SubResource("Curve_brae2") + +[sub_resource type="Curve" id="Curve_m2ljf"] +_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0.7), 0.0, 0.0, 0, 0] +point_count = 2 + +[sub_resource type="CurveTexture" id="CurveTexture_bgwsv"] +curve = SubResource("Curve_m2ljf") + +[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_brae2"] +particle_flag_disable_z = true +direction = Vector3(-1, 0, 0) +spread = 0.0 +initial_velocity_min = 500.0 +initial_velocity_max = 500.0 +gravity = Vector3(0, 0, 0) +scale_curve = SubResource("CurveTexture_bgwsv") +alpha_curve = SubResource("CurveTexture_m2ljf") + +[sub_resource type="RectangleShape2D" id="RectangleShape2D_brae2"] +size = Vector2(120, 32) + +[node name="SCBlock" unique_id=5571707 instance=ExtResource("1_ceess")] +script = ExtResource("2_brae2") +speed = 1.0 +baseDamage = 5.0 +lifeTime = 2000.0 + +[node name="static" type="Sprite2D" parent="texture" parent_id_path=PackedInt32Array(162977358) index="2" unique_id=1262983065] +scale = Vector2(0.3, 0.3) +texture = ExtResource("2_78ubb") + +[node name="trail" type="GPUParticles2D" parent="texture/static" index="0" unique_id=1828495322] +z_index = -1 +amount = 7 +texture = ExtResource("2_78ubb") +local_coords = true +process_material = SubResource("ParticleProcessMaterial_brae2") + +[node name="hitbox" parent="." index="1" unique_id=175349408] +shape = SubResource("RectangleShape2D_brae2") diff --git a/components/Characters/CyberCat.tscn b/components/Characters/CyberCat.tscn index c7a4daa..3666eb8 100644 --- a/components/Characters/CyberCat.tscn +++ b/components/Characters/CyberCat.tscn @@ -1,7 +1,7 @@ -[gd_scene load_steps=5 format=3 uid="uid://47ek7kev66gj"] +[gd_scene format=3 uid="uid://47ek7kev66gj"] [ext_resource type="PackedScene" uid="uid://cvogxi7mktumf" path="res://components/Abstracts/EntityBase.tscn" id="1_afsds"] -[ext_resource type="Script" uid="uid://m28dwfwmmhmh" path="res://scripts/Contents/Characters/Kernyr.gd" id="2_pixbe"] +[ext_resource type="Script" uid="uid://cnqdjw7i7noxk" path="res://scripts/Contents/Characters/CyberCat.gd" id="2_afsds"] [ext_resource type="Texture2D" uid="uid://5o6446vmerf5" path="res://resources/bullets/yangyi/cat.jpg" id="3_afsds"] [sub_resource type="SpriteFrames" id="SpriteFrames_vkls3"] @@ -17,9 +17,10 @@ animations = [{ "speed": 5.0 }] -[node name="CyberCat" instance=ExtResource("1_afsds")] -script = ExtResource("2_pixbe") -displayName = "赛博猫猫🥵" +[node name="CyberCat" unique_id=1689157073 instance=ExtResource("1_afsds")] +script = ExtResource("2_afsds") +displayName = "赛博猫猫" +metadata/_edit_vertical_guides_ = [200.0] [node name="texture" parent="." index="3"] sprite_frames = SubResource("SpriteFrames_vkls3") diff --git a/components/Characters/Kernyr.tscn b/components/Characters/Kernyr.tscn index 042f868..9d8c032 100644 --- a/components/Characters/Kernyr.tscn +++ b/components/Characters/Kernyr.tscn @@ -1,8 +1,8 @@ -[gd_scene load_steps=6 format=3 uid="uid://dt3xviil00bw4"] +[gd_scene format=3 uid="uid://dt3xviil00bw4"] [ext_resource type="PackedScene" uid="uid://cvogxi7mktumf" path="res://components/Abstracts/EntityBase.tscn" id="1_bha5j"] [ext_resource type="Script" uid="uid://m28dwfwmmhmh" path="res://scripts/Contents/Characters/Kernyr.gd" id="2_vkls3"] -[ext_resource type="Texture2D" uid="uid://dwwpkn4q07ja2" path="res://icon.svg" id="3_vkls3"] +[ext_resource type="Texture2D" uid="uid://d34vkibm8a5e7" path="res://resources/characters/kernyr/koshino.jpg" id="3_vkls3"] [sub_resource type="SpriteFrames" id="SpriteFrames_vkls3"] animations = [{ @@ -20,9 +20,9 @@ animations = [{ [sub_resource type="RectangleShape2D" id="RectangleShape2D_vkls3"] size = Vector2(190, 190) -[node name="Kernyr" instance=ExtResource("1_bha5j")] +[node name="Kernyr" unique_id=2092386193 instance=ExtResource("1_bha5j")] script = ExtResource("2_vkls3") -displayName = "Chick" +displayName = "KOSHINO" drops = Array[int]([0, 1]) dropCounts = Array[Vector2]([Vector2(30, 50), Vector2(20, 40)]) appleCount = Vector2i(2, 5) @@ -32,7 +32,7 @@ sprite_frames = SubResource("SpriteFrames_vkls3") [node name="staticBackground" parent="texture" index="0"] position = Vector2(0, -46) -scale = Vector2(1.5, 1.5) +scale = Vector2(0.3135416, 0.3135416) texture = ExtResource("3_vkls3") [node name="hitbox" parent="texture/hurtbox" index="0"] diff --git a/components/Characters/Rooster.tscn b/components/Characters/Rooster.tscn index 17e9847..9f36d0b 100644 --- a/components/Characters/Rooster.tscn +++ b/components/Characters/Rooster.tscn @@ -3,6 +3,7 @@ [ext_resource type="PackedScene" uid="uid://cvogxi7mktumf" path="res://components/Abstracts/EntityBase.tscn" id="1_e5pl8"] [ext_resource type="Script" uid="uid://cthtupc6dtbav" path="res://scripts/Contents/Characters/Rooster.gd" id="2_oqdqd"] [ext_resource type="PackedScene" uid="uid://bbrllsqjmx0ie" path="res://components/Weapons/DaoStatue.tscn" id="3_da2ca"] +[ext_resource type="PackedScene" uid="uid://cx7nogfnv7s8t" path="res://components/Weapons/Tree.tscn" id="4_0omr3"] [ext_resource type="AudioStream" uid="uid://cdrevrq7n6yqa" path="res://resources/sounds/effect/Boing.mp3" id="4_66s6c"] [ext_resource type="AudioStream" uid="uid://benyec5bqni0b" path="res://resources/sounds/effect/Chomp.wav" id="4_k0yme"] [ext_resource type="AudioStream" uid="uid://dmxh3bpk8vyy5" path="res://resources/sounds/effect/Coin.mp3" id="5_xnbhq"] @@ -102,6 +103,10 @@ process_material = SubResource("ParticleProcessMaterial_joj4g") process_mode = 4 [node name="DaoStatue" parent="weaponStore" index="0" unique_id=265403254 instance=ExtResource("3_da2ca")] +debugRebuild = false + +[node name="Tree" parent="weaponStore" index="1" unique_id=185228402 instance=ExtResource("4_0omr3")] +debugRebuild = false [node name="sprint" parent="sounds" index="0"] stream = ExtResource("4_66s6c") diff --git a/resources/bullets/bengbeng/0.png b/resources/bullets/bengbeng/0.png new file mode 100644 index 0000000..3791684 Binary files /dev/null and b/resources/bullets/bengbeng/0.png differ diff --git a/resources/bullets/bengbeng/0.png.import b/resources/bullets/bengbeng/0.png.import new file mode 100644 index 0000000..cb22ad8 --- /dev/null +++ b/resources/bullets/bengbeng/0.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://ccsq5rjmm2wbs" +path="res://.godot/imported/0.png-b66f171439c135beb27992e7ab08a78d.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://resources/bullets/bengbeng/0.png" +dest_files=["res://.godot/imported/0.png-b66f171439c135beb27992e7ab08a78d.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 diff --git a/resources/bullets/scblock/0.png b/resources/bullets/scblock/0.png new file mode 100644 index 0000000..821e716 Binary files /dev/null and b/resources/bullets/scblock/0.png differ diff --git a/resources/bullets/scblock/0.png.import b/resources/bullets/scblock/0.png.import new file mode 100644 index 0000000..e47a996 --- /dev/null +++ b/resources/bullets/scblock/0.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://b84vn2kmvsrhm" +path="res://.godot/imported/0.png-0e2758547fbd988927b26f7776858305.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://resources/bullets/scblock/0.png" +dest_files=["res://.godot/imported/0.png-0e2758547fbd988927b26f7776858305.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 diff --git a/resources/bullets/scblock/0.svg b/resources/bullets/scblock/0.svg new file mode 100644 index 0000000..8e161d2 --- /dev/null +++ b/resources/bullets/scblock/0.svg @@ -0,0 +1,14 @@ +114514移到 x:y: \ No newline at end of file diff --git a/resources/bullets/scblock/0.svg.import b/resources/bullets/scblock/0.svg.import new file mode 100644 index 0000000..8e68055 --- /dev/null +++ b/resources/bullets/scblock/0.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bke86n0vdy1xo" +path="res://.godot/imported/0.svg-55289bb050c347fd38fb1578523744a0.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://resources/bullets/scblock/0.svg" +dest_files=["res://.godot/imported/0.svg-55289bb050c347fd38fb1578523744a0.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 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/resources/bullets/scblock/1.png b/resources/bullets/scblock/1.png new file mode 100644 index 0000000..bca1418 Binary files /dev/null and b/resources/bullets/scblock/1.png differ diff --git a/resources/bullets/scblock/1.png.import b/resources/bullets/scblock/1.png.import new file mode 100644 index 0000000..b3c976d --- /dev/null +++ b/resources/bullets/scblock/1.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dg1qtjclaxixv" +path="res://.godot/imported/1.png-47420a35d7f589006acb83b6b12a0e4f.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://resources/bullets/scblock/1.png" +dest_files=["res://.godot/imported/1.png-47420a35d7f589006acb83b6b12a0e4f.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 diff --git a/resources/bullets/scblock/2.png b/resources/bullets/scblock/2.png new file mode 100644 index 0000000..647aa1c Binary files /dev/null and b/resources/bullets/scblock/2.png differ diff --git a/resources/bullets/scblock/2.png.import b/resources/bullets/scblock/2.png.import new file mode 100644 index 0000000..943fc58 --- /dev/null +++ b/resources/bullets/scblock/2.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cg6qkt0w8vwop" +path="res://.godot/imported/2.png-82ff01c2bec6b462f4f16d65a9a77662.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://resources/bullets/scblock/2.png" +dest_files=["res://.godot/imported/2.png-82ff01c2bec6b462f4f16d65a9a77662.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 diff --git a/resources/bullets/scblock/3.png b/resources/bullets/scblock/3.png new file mode 100644 index 0000000..f19e34d Binary files /dev/null and b/resources/bullets/scblock/3.png differ diff --git a/resources/bullets/scblock/3.png.import b/resources/bullets/scblock/3.png.import new file mode 100644 index 0000000..cd53d78 --- /dev/null +++ b/resources/bullets/scblock/3.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dks58wl2i058c" +path="res://.godot/imported/3.png-bd8e39d8cafd73605318bf80f37a0533.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://resources/bullets/scblock/3.png" +dest_files=["res://.godot/imported/3.png-bd8e39d8cafd73605318bf80f37a0533.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 diff --git a/resources/bullets/scblock/4.png b/resources/bullets/scblock/4.png new file mode 100644 index 0000000..42da3ee Binary files /dev/null and b/resources/bullets/scblock/4.png differ diff --git a/resources/bullets/scblock/4.png.import b/resources/bullets/scblock/4.png.import new file mode 100644 index 0000000..b525b47 --- /dev/null +++ b/resources/bullets/scblock/4.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://yay1p1bewwog" +path="res://.godot/imported/4.png-28d9f4982a69c94c6b2e179e6b57cdc2.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://resources/bullets/scblock/4.png" +dest_files=["res://.godot/imported/4.png-28d9f4982a69c94c6b2e179e6b57cdc2.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 diff --git a/resources/bullets/scblock/5.png b/resources/bullets/scblock/5.png new file mode 100644 index 0000000..802b4a9 Binary files /dev/null and b/resources/bullets/scblock/5.png differ diff --git a/resources/bullets/scblock/5.png.import b/resources/bullets/scblock/5.png.import new file mode 100644 index 0000000..2f50150 --- /dev/null +++ b/resources/bullets/scblock/5.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cncwp63meglgu" +path="res://.godot/imported/5.png-f5e1e7dfbeb8fb6166a84e52f58674a0.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://resources/bullets/scblock/5.png" +dest_files=["res://.godot/imported/5.png-f5e1e7dfbeb8fb6166a84e52f58674a0.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 diff --git a/resources/bullets/scblock/6.png b/resources/bullets/scblock/6.png new file mode 100644 index 0000000..8fcc278 Binary files /dev/null and b/resources/bullets/scblock/6.png differ diff --git a/resources/bullets/scblock/6.png.import b/resources/bullets/scblock/6.png.import new file mode 100644 index 0000000..6423455 --- /dev/null +++ b/resources/bullets/scblock/6.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c507wa651bcni" +path="res://.godot/imported/6.png-5a0a095098be9dbce266d28260f21896.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://resources/bullets/scblock/6.png" +dest_files=["res://.godot/imported/6.png-5a0a095098be9dbce266d28260f21896.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 diff --git a/resources/bullets/scblock/7.png b/resources/bullets/scblock/7.png new file mode 100644 index 0000000..b6de4c8 Binary files /dev/null and b/resources/bullets/scblock/7.png differ diff --git a/resources/bullets/scblock/7.png.import b/resources/bullets/scblock/7.png.import new file mode 100644 index 0000000..d776aea --- /dev/null +++ b/resources/bullets/scblock/7.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://5cami0faunqk" +path="res://.godot/imported/7.png-46a60abdfefbf93abc197a181b10dc9a.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://resources/bullets/scblock/7.png" +dest_files=["res://.godot/imported/7.png-46a60abdfefbf93abc197a181b10dc9a.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 diff --git a/resources/bullets/scblock/8.png b/resources/bullets/scblock/8.png new file mode 100644 index 0000000..289b1db Binary files /dev/null and b/resources/bullets/scblock/8.png differ diff --git a/resources/bullets/scblock/8.png.import b/resources/bullets/scblock/8.png.import new file mode 100644 index 0000000..4b1d54b --- /dev/null +++ b/resources/bullets/scblock/8.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://b3dpapfpu5rx6" +path="res://.godot/imported/8.png-45f778c5300b5c1937d834efce8558d8.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://resources/bullets/scblock/8.png" +dest_files=["res://.godot/imported/8.png-45f778c5300b5c1937d834efce8558d8.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 diff --git a/scripts/Contents/Bullets/Bengbeng.gd b/scripts/Contents/Bullets/Bengbeng.gd new file mode 100644 index 0000000..67d9bf4 --- /dev/null +++ b/scripts/Contents/Bullets/Bengbeng.gd @@ -0,0 +1,12 @@ +extends BulletBase +class_name BengbengBullet + +func spawn(): + hitbox.disabled = true +func ai(): + texture.global_rotation = 0 + PresetBulletAI.forward(self , position.angle_to_point(launcher.currentFocusedBoss.position)) + if is_instance_valid(launcher.currentFocusedBoss): + if launcher.currentFocusedBoss.position.distance_to(position) < 125 && hitbox.disabled: + EffectController.create(ComponentManager.getEffect("NuclearExplosion"), position).shot() + hitbox.disabled = false diff --git a/scripts/Contents/Bullets/Bengbeng.gd.uid b/scripts/Contents/Bullets/Bengbeng.gd.uid new file mode 100644 index 0000000..b684134 --- /dev/null +++ b/scripts/Contents/Bullets/Bengbeng.gd.uid @@ -0,0 +1 @@ +uid://ddgydi8qj3t40 diff --git a/scripts/Contents/Bullets/SCBlock.gd b/scripts/Contents/Bullets/SCBlock.gd new file mode 100644 index 0000000..9bf484e --- /dev/null +++ b/scripts/Contents/Bullets/SCBlock.gd @@ -0,0 +1,28 @@ +extends BulletBase +class_name SCBlockBullet + +var speedV2 = Vector2.ZERO + +func register(): + speedV2 = Vector2( + (launcher.currentFocusedBoss.position - launcher.position) + .sign().x + * randf_range(-0.25, 1) + * 100, + -50 + ) +func spawn(): + var staticTexture = texture.get_node_or_null("static") + if staticTexture is Sprite2D: + var text = load("res://resources/bullets/scblock/%d.png" % randi_range(0, 8)) + staticTexture.texture = text + var trail = staticTexture.get_node_or_null("trail") + if trail is GPUParticles2D: + trail.texture = text +func ai(): + rotation = speedV2.angle() + speed = speedV2.length() + PresetBulletAI.trace(self , position + Vector2.from_angle(deg_to_rad(90)), lifeTimePercent() / 15) + PresetBulletAI.forward(self , rotation) + speedV2 *= 0.95 + speedV2 += Vector2(0, 1) diff --git a/scripts/Contents/Bullets/SCBlock.gd.uid b/scripts/Contents/Bullets/SCBlock.gd.uid new file mode 100644 index 0000000..d7c5098 --- /dev/null +++ b/scripts/Contents/Bullets/SCBlock.gd.uid @@ -0,0 +1 @@ +uid://cek16mji13xpe diff --git a/scripts/Contents/Characters/CyberCat.gd b/scripts/Contents/Characters/CyberCat.gd new file mode 100644 index 0000000..35675c4 --- /dev/null +++ b/scripts/Contents/Characters/CyberCat.gd @@ -0,0 +1,21 @@ +extends EntityBase +class_name CyberCatEntity + +func register(): + fields[FieldStore.Entity.MAX_HEALTH] = 1500 + fields[FieldStore.Entity.OFFSET_SHOOT] = 0 + fields[FieldStore.Entity.MOVEMENT_SPEED] = 0.2 + attackCooldownMap[0] = 6000 + attackCooldownMap[1] = 10000 + attackCooldownMap[2] = 100 +func ai(): + PresetEntityAI.follow(self , currentFocusedBoss) + for i in 3: + tryAttack(i) +func attack(type: int): + if type == 0: + BulletBase.generate(ComponentManager.getBullet("Bengbeng"), self , position, 0) + elif type == 1: + heal(percentHealth(0.05)) + elif type == 2: + BulletBase.generate(ComponentManager.getBullet("SCBlock"), self , position, 0) diff --git a/scripts/Contents/Characters/CyberCat.gd.uid b/scripts/Contents/Characters/CyberCat.gd.uid new file mode 100644 index 0000000..795b167 --- /dev/null +++ b/scripts/Contents/Characters/CyberCat.gd.uid @@ -0,0 +1 @@ +uid://cnqdjw7i7noxk diff --git a/scripts/Contents/Characters/Kernyr.gd b/scripts/Contents/Characters/Kernyr.gd index 84ffc0a..a99bf58 100644 --- a/scripts/Contents/Characters/Kernyr.gd +++ b/scripts/Contents/Characters/Kernyr.gd @@ -11,10 +11,12 @@ func register(): attackCooldownMap[0] = 2000 attackCooldownMap[1] = 100 attackCooldownMap[2] = 10000 + attackCooldownMap[3] = 4500 attackMutexes = [2] func ai(): for i in 3: tryAttack(i, [2]) + # tryAttack(3) func attack(type: int): if type == 0: for i in randi_range(7, 16): @@ -62,3 +64,5 @@ func attack(type: int): await TickTool.frame() await TickTool.millseconds(2000) await chargeUp() + elif type == 3: + BulletBase.generate(ComponentManager.getBullet("Bengbeng"), self , position, 0) diff --git a/scripts/Contents/Wave.gd b/scripts/Contents/Wave.gd index 8152204..6a36b03 100644 --- a/scripts/Contents/Wave.gd +++ b/scripts/Contents/Wave.gd @@ -23,18 +23,20 @@ func duplicate() -> Wave: return wave static var WAVE_NORMAL = [ - Wave.create("Hen", 1, 3, false, 0, INF, 3), + Wave.create("Hen", 1, 3, false, 2, INF, 1), Wave.create("Cat", 1, 5, false, 0, INF, 1), - Wave.create("Dog", 1, 2, false, 0, INF, 5), - Wave.create("MTY", 0, 1, false, 4, INF, 7), + Wave.create("Dog", 1, 2, false, 4, INF, 1), + Wave.create("MTY", 0, 1, false, 6, INF, 7), Wave.create("Chick", 0, 0, true, 9, INF, 20), Wave.create("KukeMC", 0, 0, true, 19, INF, 20), Wave.create("Bear", 0, 0, true, 29, INF, 23), ] static var WAVE_TESTBOSS_ALL = [ - Wave.create("Chick", 0, 0, true, 0, INF, 3), - Wave.create("KukeMC", 0, 0, true, 1, INF, 3), - Wave.create("Bear", 0, 0, true, 2, INF, 3), + Wave.create("Kernyr", 0, 0, true, 0, INF, 5), + Wave.create("CyberCat", 0, 0, true, 1, INF, 5), + Wave.create("Chick", 0, 0, true, 2, INF, 5), + Wave.create("KukeMC", 0, 0, true, 3, INF, 5), + Wave.create("Bear", 0, 0, true, 4, INF, 5), ] static var WAVE_TESTBOSS_KUKE = [ Wave.create("KukeMC", 0, 0, true, 0, INF, 1), @@ -46,7 +48,8 @@ static var WAVE_TESTBOSS_CHICK = [ Wave.create("Chick", 0, 0, true, 0, INF, 1), ] static var WAVE_JUSTJOKE = [ - Wave.create("Kernyr", 0, 0, true, 0, INF, 1), + Wave.create("Kernyr", 0, 0, true, 0, INF, 2), + Wave.create("CyberCat", 0, 0, true, 1, INF, 2) ] static var WAVE_MOWING = [ Wave.create("Hen", 15, 30, false, 0, INF, 1), @@ -55,7 +58,7 @@ static var WAVE_MOWING = [ Wave.create("MTY", 1, 5, false, 0, INF, 1), ] static var WAVE_EMPTY = [] -static var waveConfig = [WAVE_MOWING, 1] +static var waveConfig = [WAVE_TESTBOSS_ALL, 1] static var current: int = startWith(1) if WorldManager.isRelease() else startWith(waveConfig[1]) static var data = WAVE_NORMAL if WorldManager.isRelease() else waveConfig[0]