mirror of
https://github.com/Rundll86/Dog-Lynx-And-HCN.git
synced 2026-07-09 19:42:54 +08:00
feat(武器): 添加河豚刺针武器及其相关资源
新增河豚刺针武器,包含以下内容: - 添加河豚武器图标和音效资源 - 实现Needle子弹类及其反弹逻辑 - 创建Hetun武器类实现散射攻击 - 添加子弹特效和碰撞检测 - 更新公鸡角色默认武器配置
This commit is contained in:
@@ -0,0 +1,92 @@
|
|||||||
|
[gd_scene load_steps=14 format=3 uid="uid://bhnhfefm4m87i"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://crtdkysmnkith" path="res://components/Abstracts/BulletBase.tscn" id="1_yrddj"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://d4h0i65n0dveo" path="res://resources/bullets/needle/1.svg" id="2_enod1"]
|
||||||
|
[ext_resource type="Script" uid="uid://whqgw065ifss" path="res://scripts/Contents/Bullets/Needle.gd" id="2_mjqpl"]
|
||||||
|
|
||||||
|
[sub_resource type="SpriteFrames" id="SpriteFrames_mjqpl"]
|
||||||
|
animations = [{
|
||||||
|
"frames": [{
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("2_enod1")
|
||||||
|
}],
|
||||||
|
"loop": true,
|
||||||
|
"name": &"default",
|
||||||
|
"speed": 5.0
|
||||||
|
}]
|
||||||
|
|
||||||
|
[sub_resource type="Curve" id="Curve_kvg2u"]
|
||||||
|
_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_n2a3y"]
|
||||||
|
curve = SubResource("Curve_kvg2u")
|
||||||
|
|
||||||
|
[sub_resource type="Gradient" id="Gradient_ux5gl"]
|
||||||
|
colors = PackedColorArray(1, 0.47012484, 0, 1, 1, 0.9023062, 0.70387197, 1)
|
||||||
|
|
||||||
|
[sub_resource type="GradientTexture1D" id="GradientTexture1D_ikerd"]
|
||||||
|
gradient = SubResource("Gradient_ux5gl")
|
||||||
|
|
||||||
|
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_3yvym"]
|
||||||
|
particle_flag_disable_z = true
|
||||||
|
emission_shape = 3
|
||||||
|
emission_box_extents = Vector3(1, 40, 1)
|
||||||
|
angle_min = 1.0728835e-05
|
||||||
|
angle_max = 360.00003
|
||||||
|
spread = 15.0
|
||||||
|
initial_velocity_min = -50.0
|
||||||
|
initial_velocity_max = 50.0
|
||||||
|
gravity = Vector3(0, 200, 0)
|
||||||
|
scale_max = 5.0
|
||||||
|
color_initial_ramp = SubResource("GradientTexture1D_ikerd")
|
||||||
|
alpha_curve = SubResource("CurveTexture_n2a3y")
|
||||||
|
|
||||||
|
[sub_resource type="Curve" id="Curve_enod1"]
|
||||||
|
_data = [Vector2(0, 0.4), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
|
||||||
|
point_count = 2
|
||||||
|
|
||||||
|
[sub_resource type="CurveTexture" id="CurveTexture_mjqpl"]
|
||||||
|
curve = SubResource("Curve_enod1")
|
||||||
|
|
||||||
|
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_enod1"]
|
||||||
|
particle_flag_disable_z = true
|
||||||
|
direction = Vector3(0, 1, 0)
|
||||||
|
spread = 0.0
|
||||||
|
initial_velocity_min = 150.0
|
||||||
|
initial_velocity_max = 150.0
|
||||||
|
gravity = Vector3(0, 0, 0)
|
||||||
|
scale_min = 0.79999995
|
||||||
|
scale_max = 0.79999995
|
||||||
|
alpha_curve = SubResource("CurveTexture_mjqpl")
|
||||||
|
|
||||||
|
[sub_resource type="RectangleShape2D" id="RectangleShape2D_enod1"]
|
||||||
|
size = Vector2(138, 8.765)
|
||||||
|
|
||||||
|
[node name="Needle" instance=ExtResource("1_yrddj")]
|
||||||
|
script = ExtResource("2_mjqpl")
|
||||||
|
penerate = 1.0
|
||||||
|
lifeTime = 4000.0
|
||||||
|
|
||||||
|
[node name="texture" parent="." index="0"]
|
||||||
|
position = Vector2(73, 0)
|
||||||
|
rotation = 1.5707964
|
||||||
|
sprite_frames = SubResource("SpriteFrames_mjqpl")
|
||||||
|
|
||||||
|
[node name="light" type="GPUParticles2D" parent="texture" index="1"]
|
||||||
|
z_index = -1
|
||||||
|
position = Vector2(0, 34)
|
||||||
|
amount = 50
|
||||||
|
preprocess = 1.0
|
||||||
|
local_coords = true
|
||||||
|
process_material = SubResource("ParticleProcessMaterial_3yvym")
|
||||||
|
|
||||||
|
[node name="trail" type="GPUParticles2D" parent="texture" index="2"]
|
||||||
|
z_index = -1
|
||||||
|
texture = ExtResource("2_enod1")
|
||||||
|
local_coords = true
|
||||||
|
process_material = SubResource("ParticleProcessMaterial_enod1")
|
||||||
|
|
||||||
|
[node name="hitbox" parent="." index="1"]
|
||||||
|
position = Vector2(67, 0)
|
||||||
|
shape = SubResource("RectangleShape2D_enod1")
|
||||||
@@ -1,11 +1,10 @@
|
|||||||
[gd_scene load_steps=21 format=3 uid="uid://dky8574uqc18r"]
|
[gd_scene load_steps=20 format=3 uid="uid://dky8574uqc18r"]
|
||||||
|
|
||||||
[ext_resource type="PackedScene" uid="uid://cvogxi7mktumf" path="res://components/Abstracts/EntityBase.tscn" id="1_e5pl8"]
|
[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="Script" uid="uid://cthtupc6dtbav" path="res://scripts/Contents/Characters/Rooster.gd" id="2_oqdqd"]
|
||||||
[ext_resource type="PackedScene" uid="uid://b5ebx8duvgtt5" path="res://components/Weapons/Oxygener.tscn" id="3_0omr3"]
|
[ext_resource type="PackedScene" uid="uid://c65tbxm3tclw0" path="res://components/Weapons/Hetun.tscn" id="3_da2ca"]
|
||||||
[ext_resource type="AudioStream" uid="uid://cdrevrq7n6yqa" path="res://resources/sounds/effect/Boing.mp3" id="4_66s6c"]
|
[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://benyec5bqni0b" path="res://resources/sounds/effect/Chomp.wav" id="4_k0yme"]
|
||||||
[ext_resource type="PackedScene" uid="uid://cxabqjo7skxev" path="res://components/Weapons/BigLaser.tscn" id="5_joj4g"]
|
|
||||||
[ext_resource type="AudioStream" uid="uid://dmxh3bpk8vyy5" path="res://resources/sounds/effect/Coin.mp3" id="5_xnbhq"]
|
[ext_resource type="AudioStream" uid="uid://dmxh3bpk8vyy5" path="res://resources/sounds/effect/Coin.mp3" id="5_xnbhq"]
|
||||||
[ext_resource type="AudioStream" uid="uid://4wuuf1osk0yv" path="res://resources/sounds/effect/Low Boing.wav" id="6_m5px1"]
|
[ext_resource type="AudioStream" uid="uid://4wuuf1osk0yv" path="res://resources/sounds/effect/Low Boing.wav" id="6_m5px1"]
|
||||||
[ext_resource type="Texture2D" uid="uid://fn8qx72clh38" path="res://resources/characters/cock/rooster-a.svg" id="8_da2ca"]
|
[ext_resource type="Texture2D" uid="uid://fn8qx72clh38" path="res://resources/characters/cock/rooster-a.svg" id="8_da2ca"]
|
||||||
@@ -102,12 +101,9 @@ process_material = SubResource("ParticleProcessMaterial_joj4g")
|
|||||||
[node name="weaponStore" parent="." index="2"]
|
[node name="weaponStore" parent="." index="2"]
|
||||||
process_mode = 4
|
process_mode = 4
|
||||||
|
|
||||||
[node name="Oxygener" parent="weaponStore" index="0" instance=ExtResource("3_0omr3")]
|
[node name="Hetun" parent="weaponStore" index="0" instance=ExtResource("3_da2ca")]
|
||||||
offset_bottom = 446.0
|
|
||||||
debugRebuild = false
|
debugRebuild = false
|
||||||
|
|
||||||
[node name="BigLaser" parent="weaponStore" index="1" instance=ExtResource("5_joj4g")]
|
|
||||||
|
|
||||||
[node name="sprint" parent="sounds" index="0"]
|
[node name="sprint" parent="sounds" index="0"]
|
||||||
stream = ExtResource("4_66s6c")
|
stream = ExtResource("4_66s6c")
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,57 @@
|
|||||||
|
[gd_scene load_steps=12 format=3 uid="uid://bu0uy17pacv6n"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://bcvuuy2m0pke0" path="res://components/Abstracts/EffectBase.tscn" id="1_1cfxs"]
|
||||||
|
[ext_resource type="AudioStream" uid="uid://dfn8gusfga5m0" path="res://resources/sounds/effect/Low Squeak.wav" id="2_30wog"]
|
||||||
|
|
||||||
|
[sub_resource type="Curve" id="Curve_1cfxs"]
|
||||||
|
_data = [Vector2(0.8, 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_30wog"]
|
||||||
|
curve = SubResource("Curve_1cfxs")
|
||||||
|
|
||||||
|
[sub_resource type="Gradient" id="Gradient_1cfxs"]
|
||||||
|
colors = PackedColorArray(1, 0.47012484, 0, 1, 1, 0.9023062, 0.70387197, 1)
|
||||||
|
|
||||||
|
[sub_resource type="GradientTexture1D" id="GradientTexture1D_30wog"]
|
||||||
|
gradient = SubResource("Gradient_1cfxs")
|
||||||
|
|
||||||
|
[sub_resource type="Curve" id="Curve_30wog"]
|
||||||
|
_limits = [0.0, 100.0, 0.0, 1.0]
|
||||||
|
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 100), 0.0, 0.0, 0, 0]
|
||||||
|
point_count = 2
|
||||||
|
|
||||||
|
[sub_resource type="CurveTexture" id="CurveTexture_nreia"]
|
||||||
|
curve = SubResource("Curve_30wog")
|
||||||
|
|
||||||
|
[sub_resource type="Curve" id="Curve_nreia"]
|
||||||
|
_data = [Vector2(0.8, 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_j1fl3"]
|
||||||
|
curve = SubResource("Curve_nreia")
|
||||||
|
|
||||||
|
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_tcn64"]
|
||||||
|
particle_flag_disable_z = true
|
||||||
|
angle_min = 1.0728835e-05
|
||||||
|
angle_max = 360.00003
|
||||||
|
direction = Vector3(-1, 0, 0)
|
||||||
|
spread = 15.0
|
||||||
|
initial_velocity_max = 100.0
|
||||||
|
gravity = Vector3(0, 0, 0)
|
||||||
|
damping_curve = SubResource("CurveTexture_nreia")
|
||||||
|
scale_max = 4.0
|
||||||
|
scale_curve = SubResource("CurveTexture_j1fl3")
|
||||||
|
color_initial_ramp = SubResource("GradientTexture1D_30wog")
|
||||||
|
alpha_curve = SubResource("CurveTexture_30wog")
|
||||||
|
|
||||||
|
[node name="Dustdown" instance=ExtResource("1_1cfxs")]
|
||||||
|
spawnSound = "spawn"
|
||||||
|
|
||||||
|
[node name="spawn" parent="sounds" index="0"]
|
||||||
|
stream = ExtResource("2_30wog")
|
||||||
|
|
||||||
|
[node name="particles" parent="." index="1"]
|
||||||
|
lifetime = 2.0
|
||||||
|
local_coords = true
|
||||||
|
process_material = SubResource("ParticleProcessMaterial_tcn64")
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
[gd_scene load_steps=4 format=3 uid="uid://c65tbxm3tclw0"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://ckq2cq6m23hq3" path="res://components/Abstracts/WeaponCardBase.tscn" id="1_021hd"]
|
||||||
|
[ext_resource type="Script" uid="uid://tfptal3sgfmy" path="res://scripts/Contents/Weapons/Hetun.gd" id="2_t2ywh"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://c1xrf8255jafi" path="res://resources/weapons/hetun.png" id="2_y0xe1"]
|
||||||
|
|
||||||
|
[node name="Hetun" instance=ExtResource("1_021hd")]
|
||||||
|
script = ExtResource("2_t2ywh")
|
||||||
|
avatarTexture = ExtResource("2_y0xe1")
|
||||||
|
displayName = "河豚"
|
||||||
|
quality = 0
|
||||||
|
store = {
|
||||||
|
"atk": 15,
|
||||||
|
"count": 10,
|
||||||
|
"penerate": 0.2
|
||||||
|
}
|
||||||
|
storeType = {
|
||||||
|
"atk": 1,
|
||||||
|
"count": 1,
|
||||||
|
"penerate": 2
|
||||||
|
}
|
||||||
|
descriptionTemplate = "散射5~$count针[b]河豚刺针[/b],每根针造成$atk点伤害,撞上敌人后有$penerate概率反弹。"
|
||||||
|
cooldown = 2000.0
|
||||||
|
debugRebuild = true
|
||||||
|
|
||||||
|
[node name="avatar" parent="container/info" index="0"]
|
||||||
|
texture = ExtResource("2_y0xe1")
|
||||||
|
|
||||||
|
[node name="name" parent="container/info" index="2"]
|
||||||
|
displayName = "河豚"
|
||||||
|
quality = 0
|
||||||
|
|
||||||
|
[node name="description" parent="container" index="2"]
|
||||||
|
text = "[center]散射5~[color=cyan]10[/color]针[b]河豚刺针[/b],每根针造成[color=cyan]15[/color]点伤害,撞上敌人后有[color=cyan]20.0%[/color]概率反弹。[/center]"
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="10.21088" height="147.52712" viewBox="0,0,10.21088,147.52712"><g transform="translate(-220.89456,-100.2385)"><g stroke="#cc9300" stroke-width="0" stroke-linecap="round" stroke-miterlimit="10"><g><path d="M226.0001,100.23851l5.10534,147.5l-10.21088,0.02299l5.10534,-147.5" fill="#805c00"/><path d="M226.04563,138.76964l3.77203,108.979l-7.54422,0.01699l3.77204,-108.979" fill="#ffb800"/><path d="M226.05478,163.26668l2.92324,84.45619l-5.84659,0.01316l2.92324,-84.45619" fill="#ffdb80"/><path d="M226.09683,190.70098l1.97382,57.02618l-3.94771,0.00889l1.97382,-57.02618" fill="#ffffff"/></g></g></g></svg><!--rotationCenter:19.105439999999987:79.761495-->
|
||||||
|
After Width: | Height: | Size: 755 B |
@@ -0,0 +1,43 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://d4h0i65n0dveo"
|
||||||
|
path="res://.godot/imported/1.svg-7d7231bb3b71752d763553e1d0f756c7.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://resources/bullets/needle/1.svg"
|
||||||
|
dest_files=["res://.godot/imported/1.svg-7d7231bb3b71752d763553e1d0f756c7.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
|
||||||
Binary file not shown.
@@ -0,0 +1,24 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="wav"
|
||||||
|
type="AudioStreamWAV"
|
||||||
|
uid="uid://dfn8gusfga5m0"
|
||||||
|
path="res://.godot/imported/Low Squeak.wav-332cc0edb9200255d263350379684613.sample"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://resources/sounds/effect/Low Squeak.wav"
|
||||||
|
dest_files=["res://.godot/imported/Low Squeak.wav-332cc0edb9200255d263350379684613.sample"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
force/8_bit=false
|
||||||
|
force/mono=false
|
||||||
|
force/max_rate=false
|
||||||
|
force/max_rate_hz=44100
|
||||||
|
edit/trim=false
|
||||||
|
edit/normalize=false
|
||||||
|
edit/loop_mode=0
|
||||||
|
edit/loop_begin=0
|
||||||
|
edit/loop_end=-1
|
||||||
|
compress/mode=2
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 113 KiB |
@@ -0,0 +1,40 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://c1xrf8255jafi"
|
||||||
|
path="res://.godot/imported/hetun.png-d33a239147dba03814e779bbbde3d40e.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://resources/weapons/hetun.png"
|
||||||
|
dest_files=["res://.godot/imported/hetun.png-d33a239147dba03814e779bbbde3d40e.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
|
||||||
@@ -0,0 +1,21 @@
|
|||||||
|
extends BulletBase
|
||||||
|
class_name NeedleBullet
|
||||||
|
|
||||||
|
var forwarding: bool = false
|
||||||
|
|
||||||
|
func spawn():
|
||||||
|
hitbox.disabled = true
|
||||||
|
func ai():
|
||||||
|
PresetBulletAI.forward(self , rotation)
|
||||||
|
if forwarding:
|
||||||
|
speed += 0.5
|
||||||
|
else:
|
||||||
|
speed -= 0.25
|
||||||
|
if speed <= 0:
|
||||||
|
forwarding = true
|
||||||
|
hitbox.disabled = false
|
||||||
|
func succeedToHit(_dmg: float, entity: EntityBase):
|
||||||
|
var effect = EffectController.create(ComponentManager.getEffect("Dustdown"), entity.position)
|
||||||
|
effect.rotation = rotation
|
||||||
|
effect.shot()
|
||||||
|
rotation = Vector2.from_angle(rotation).bounce((entity.position - position).normalized()).angle()
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
uid://whqgw065ifss
|
||||||
@@ -16,7 +16,7 @@ func spawn():
|
|||||||
anchor.global_rotation = 0
|
anchor.global_rotation = 0
|
||||||
func ai():
|
func ai():
|
||||||
speed *= 0.99
|
speed *= 0.99
|
||||||
PresetBulletAI.forward(self, rotation)
|
PresetBulletAI.forward(self , rotation)
|
||||||
if timeLived() > countdown:
|
if timeLived() > countdown:
|
||||||
tryDestroy()
|
tryDestroy()
|
||||||
else:
|
else:
|
||||||
|
|||||||
@@ -0,0 +1,20 @@
|
|||||||
|
@tool
|
||||||
|
extends Weapon
|
||||||
|
|
||||||
|
func update(to: int, origin: Dictionary, _entity: EntityBase):
|
||||||
|
origin["atk"] += 3 * to * soulLevel
|
||||||
|
origin["count"] += 5 * (soulLevel - 1)
|
||||||
|
origin["penerate"] += 0.1 * (soulLevel - 1)
|
||||||
|
return origin
|
||||||
|
func attack(entity: EntityBase):
|
||||||
|
for i in readStore("count"):
|
||||||
|
for bullet in BulletBase.generate(
|
||||||
|
ComponentManager.getBullet("Needle"),
|
||||||
|
entity,
|
||||||
|
entity.findWeaponAnchor("normal"),
|
||||||
|
entity.findWeaponAnchor("normal").angle_to_point(get_global_mouse_position()) + deg_to_rad(randf_range(-1, 1) * 30)
|
||||||
|
):
|
||||||
|
if bullet is NeedleBullet:
|
||||||
|
bullet.baseDamage = readStore("atk")
|
||||||
|
bullet.penerate = readStore("penerate")
|
||||||
|
return true
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
uid://tfptal3sgfmy
|
||||||
Reference in New Issue
Block a user