diff --git a/components/Bullets/Egg.tscn b/components/Bullets/Egg.tscn new file mode 100644 index 0000000..64087d5 --- /dev/null +++ b/components/Bullets/Egg.tscn @@ -0,0 +1,64 @@ +[gd_scene load_steps=11 format=3 uid="uid://df67upy2qhwng"] + +[ext_resource type="PackedScene" uid="uid://crtdkysmnkith" path="res://components/Abstracts/BulletBase.tscn" id="1_q6qy4"] +[ext_resource type="Script" uid="uid://cyaq3u5iu08uo" path="res://scripts/Contents/Bullets/Egg.gd" id="2_6esgc"] +[ext_resource type="Texture2D" uid="uid://dn1rrlcltalbw" path="res://resources/bullets/Thunder/篮球.svg" id="3_6esgc"] + +[sub_resource type="SpriteFrames" id="SpriteFrames_6esgc"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": ExtResource("3_6esgc") +}], +"loop": true, +"name": &"default", +"speed": 5.0 +}] + +[sub_resource type="Curve" id="Curve_6esgc"] +_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0] +point_count = 2 + +[sub_resource type="CurveTexture" id="CurveTexture_m48vu"] +curve = SubResource("Curve_6esgc") + +[sub_resource type="Curve" id="Curve_qotgv"] +_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_jb1ir"] +curve = SubResource("Curve_qotgv") + +[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_l0xv4"] +particle_flag_disable_z = true +direction = Vector3(0, 1, 0) +spread = 0.0 +initial_velocity_min = 200.0 +initial_velocity_max = 200.0 +gravity = Vector3(0, 0, 0) +scale_min = 0.79999995 +scale_max = 0.79999995 +scale_curve = SubResource("CurveTexture_jb1ir") +alpha_curve = SubResource("CurveTexture_m48vu") + +[sub_resource type="CircleShape2D" id="CircleShape2D_m48vu"] +radius = 24.0 + +[node name="Egg" instance=ExtResource("1_q6qy4")] +script = ExtResource("2_6esgc") +speed = 0.0 +lifeTime = 3000.0 + +[node name="texture" parent="." index="0"] +rotation = 1.5707964 +scale = Vector2(1.25, 1.25) +sprite_frames = SubResource("SpriteFrames_6esgc") + +[node name="trail2" type="GPUParticles2D" parent="texture" index="1"] +z_index = -1 +texture = ExtResource("3_6esgc") +local_coords = true +process_material = SubResource("ParticleProcessMaterial_l0xv4") + +[node name="hitbox" parent="." index="1"] +shape = SubResource("CircleShape2D_m48vu") diff --git a/resources/bullets/Thunder/thunder.png b/resources/bullets/Thunder/thunder.png new file mode 100644 index 0000000..bc8d779 Binary files /dev/null and b/resources/bullets/Thunder/thunder.png differ diff --git a/resources/bullets/Thunder/thunder.png.import b/resources/bullets/Thunder/thunder.png.import new file mode 100644 index 0000000..40cf871 --- /dev/null +++ b/resources/bullets/Thunder/thunder.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cub4ffyuqx24q" +path="res://.godot/imported/thunder.png-91a5b8e381b0cdfb1da84c66cc9523a3.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://resources/bullets/Thunder/thunder.png" +dest_files=["res://.godot/imported/thunder.png-91a5b8e381b0cdfb1da84c66cc9523a3.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/Thunder/篮球.svg b/resources/bullets/Thunder/篮球.svg new file mode 100644 index 0000000..3e72ca6 --- /dev/null +++ b/resources/bullets/Thunder/篮球.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/resources/bullets/Thunder/篮球.svg.import b/resources/bullets/Thunder/篮球.svg.import new file mode 100644 index 0000000..44e74b2 --- /dev/null +++ b/resources/bullets/Thunder/篮球.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dn1rrlcltalbw" +path="res://.godot/imported/篮球.svg-703ccac0ca8b985f7bb4cd4509f87b99.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://resources/bullets/Thunder/篮球.svg" +dest_files=["res://.godot/imported/篮球.svg-703ccac0ca8b985f7bb4cd4509f87b99.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/scripts/Contents/Bullets/Egg.gd b/scripts/Contents/Bullets/Egg.gd new file mode 100644 index 0000000..2defa6e --- /dev/null +++ b/scripts/Contents/Bullets/Egg.gd @@ -0,0 +1,6 @@ +extends BulletBase +class_name EggBullet + +func ai(): + speed += 0.25 + PresetBulletAI.forward(self , rotation) diff --git a/scripts/Contents/Bullets/Egg.gd.uid b/scripts/Contents/Bullets/Egg.gd.uid new file mode 100644 index 0000000..6c59ee8 --- /dev/null +++ b/scripts/Contents/Bullets/Egg.gd.uid @@ -0,0 +1 @@ +uid://cyaq3u5iu08uo diff --git a/scripts/Contents/Characters/Kernyr.gd b/scripts/Contents/Characters/Kernyr.gd index 7472326..8c1f7a0 100644 --- a/scripts/Contents/Characters/Kernyr.gd +++ b/scripts/Contents/Characters/Kernyr.gd @@ -45,12 +45,12 @@ func attack(type: int): for i in count: await sprintTo(anchor + Vector2.from_angle(deg_to_rad(i / count * 360.0 - 90)) * radius, 0.5) for bullet in BulletBase.generate( - ComponentManager.getBullet("Yangyi"), + ComponentManager.getBullet("Egg"), self , position, 0 ): - if bullet is YangyiBullet: + if bullet is EggBullet: bullet.look_at(anchor) await TickTool.millseconds(2000) await chargeUp()