diff --git a/config/attack/blunt_normal_hit_up.tres b/config/attack/blunt_normal_hit_up.tres index 7f13239..b7b06eb 100644 --- a/config/attack/blunt_normal_hit_up.tres +++ b/config/attack/blunt_normal_hit_up.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="AttackCfg" load_steps=2 format=3 uid="uid://ctbdt77yyubxn"] -[ext_resource type="Script" path="res://script/config/attack_cfg.gd" id="1_r7m5n"] +[ext_resource type="Script" uid="uid://bm8fn2yciam1g" path="res://script/config/attack_cfg.gd" id="1_r7m5n"] [resource] script = ExtResource("1_r7m5n") @@ -10,12 +10,9 @@ stun_attack = 10.0 damage_type = 1 is_floating = true is_rebound = false -is_stop_self = true is_throw_check = false is_throw_end = false hit_back_speed = 0.0 -hit_up_speed = 3.0 +hit_up_speed = 2.0 hit_back_duration = 0.05 hit_up_duration = 0.1 -pause_time = 0.05 - diff --git a/config/attack/sharp_mid_hit_blow.tres b/config/attack/sharp_mid_hit_blow.tres index f6e0bf6..b210dd8 100644 --- a/config/attack/sharp_mid_hit_blow.tres +++ b/config/attack/sharp_mid_hit_blow.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="AttackCfg" load_steps=2 format=3 uid="uid://2bkub7vmxjeu"] -[ext_resource type="Script" path="res://script/config/attack_cfg.gd" id="1_ggt4q"] +[ext_resource type="Script" uid="uid://bm8fn2yciam1g" path="res://script/config/attack_cfg.gd" id="1_ggt4q"] [resource] script = ExtResource("1_ggt4q") @@ -10,7 +10,6 @@ stun_attack = 10.0 damage_type = 0 is_floating = true is_rebound = false -is_stop_self = true is_throw_check = false is_throw_end = false hit_back_speed = 3.5 diff --git a/config/attack/sharp_mid_hit_down.tres b/config/attack/sharp_mid_hit_down.tres index cc19698..54e04de 100644 --- a/config/attack/sharp_mid_hit_down.tres +++ b/config/attack/sharp_mid_hit_down.tres @@ -13,6 +13,6 @@ is_rebound = false is_throw_check = false is_throw_end = false hit_back_speed = 0.0 -hit_up_speed = -10.0 +hit_up_speed = -12.0 hit_back_duration = 0.05 -hit_up_duration = 1.0 +hit_up_duration = 0.05 diff --git a/config/attack/sharp_normal_hit_back_hard.tres b/config/attack/sharp_normal_hit_back_hard.tres new file mode 100644 index 0000000..262f624 --- /dev/null +++ b/config/attack/sharp_normal_hit_back_hard.tres @@ -0,0 +1,18 @@ +[gd_resource type="Resource" script_class="AttackCfg" load_steps=2 format=3 uid="uid://dmfr73m28vsqj"] + +[ext_resource type="Script" uid="uid://bm8fn2yciam1g" path="res://script/config/attack_cfg.gd" id="1_rye6c"] + +[resource] +script = ExtResource("1_rye6c") +damage_rate = 1.0 +break_level = 2 +stun_attack = 10.0 +damage_type = 0 +is_floating = true +is_rebound = false +is_throw_check = false +is_throw_end = false +hit_back_speed = 4.5 +hit_up_speed = 0.1 +hit_back_duration = 0.1 +hit_up_duration = 0.05 diff --git a/config/attack/sharp_normal_hit_down.tres b/config/attack/sharp_normal_hit_down.tres index 2ccd7f3..9af5d7c 100644 --- a/config/attack/sharp_normal_hit_down.tres +++ b/config/attack/sharp_normal_hit_down.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="AttackCfg" load_steps=2 format=3 uid="uid://bnqnw10v7kude"] -[ext_resource type="Script" path="res://script/config/attack_cfg.gd" id="1_fl1sp"] +[ext_resource type="Script" uid="uid://bm8fn2yciam1g" path="res://script/config/attack_cfg.gd" id="1_fl1sp"] [resource] script = ExtResource("1_fl1sp") @@ -9,14 +9,10 @@ break_level = 1 stun_attack = 10.0 damage_type = 0 is_floating = true -is_hit_down = true is_rebound = false -is_stop_self = true is_throw_check = false is_throw_end = false -hit_back_speed = 6.0 -hit_up_speed = -6.0 +hit_back_speed = 1.0 +hit_up_speed = -10.0 hit_back_duration = 0.05 hit_up_duration = 0.05 -pause_time = 0.02 - diff --git a/config/character/bullet01.tres b/config/character/bullet01.tres index 92a1f8c..2fbabc2 100644 --- a/config/character/bullet01.tres +++ b/config/character/bullet01.tres @@ -3,8 +3,8 @@ [ext_resource type="Resource" uid="uid://ctbdt77yyubxn" path="res://config/attack/blunt_normal_hit_up.tres" id="1_4vq22"] [ext_resource type="Resource" uid="uid://bhxq1uffxyda8" path="res://config/attack_box/circle_normal_thin.tres" id="2_ewiqr"] [ext_resource type="Resource" uid="uid://dpajmgrlaytah" path="res://config/character_mp/normal.tres" id="2_hrxfp"] -[ext_resource type="Resource" uid="uid://iv8g1x3bkxvv" path="res://config/character_move/fast_fly.tres" id="3_gqffj"] -[ext_resource type="Script" path="res://script/config/character_cfg.gd" id="3_p63bn"] +[ext_resource type="Resource" uid="uid://iv8g1x3bkxvv" path="res://config/character_move/fly_fast.tres" id="3_gqffj"] +[ext_resource type="Script" uid="uid://dt3chi1tgnaef" path="res://script/config/character_cfg.gd" id="3_p63bn"] [ext_resource type="Resource" uid="uid://h1curvk64vm3" path="res://config/character_shield/none.tres" id="4_qnn3b"] [ext_resource type="Resource" uid="uid://5jes0p152akr" path="res://config/character_stun/none.tres" id="6_y4hsh"] diff --git a/config/character/bullet_hero01_long_stab.tres b/config/character/bullet_hero01_long_stab.tres new file mode 100644 index 0000000..03c49de --- /dev/null +++ b/config/character/bullet_hero01_long_stab.tres @@ -0,0 +1,32 @@ +[gd_resource type="Resource" script_class="CharacterCfg" load_steps=10 format=3 uid="uid://rxt1emwats2v"] + +[ext_resource type="PackedScene" uid="uid://tr65aikkpp2e" path="res://scene/ai/bullet_simple_penetrat.tscn" id="1_70j82"] +[ext_resource type="Resource" uid="uid://dmfr73m28vsqj" path="res://config/attack/sharp_normal_hit_back_hard.tres" id="2_70j82"] +[ext_resource type="Resource" uid="uid://decgfcx2xsj8i" path="res://config/attack_box/circle_mid.tres" id="3_6gt06"] +[ext_resource type="Resource" uid="uid://cw7rb4rlfw33q" path="res://config/attack/sharp_heavy_hit_back.tres" id="4_2lpps"] +[ext_resource type="Resource" uid="uid://dc2iepk6nb7rs" path="res://config/character_move/fly_normal.tres" id="4_70j82"] +[ext_resource type="Resource" uid="uid://dpajmgrlaytah" path="res://config/character_mp/normal.tres" id="5_1lrf8"] +[ext_resource type="Script" uid="uid://dt3chi1tgnaef" path="res://script/config/character_cfg.gd" id="6_pyp0d"] +[ext_resource type="Resource" uid="uid://h1curvk64vm3" path="res://config/character_shield/none.tres" id="7_iotq2"] +[ext_resource type="Resource" uid="uid://5jes0p152akr" path="res://config/character_stun/none.tres" id="8_euuy0"] + +[resource] +script = ExtResource("6_pyp0d") +name = "hero01" +type = 2 +sprite_height = 26 +sprite_width = 16 +move = ExtResource("4_70j82") +shield = ExtResource("7_iotq2") +stun = ExtResource("8_euuy0") +mp = ExtResource("5_1lrf8") +ai_behavior_tree = ExtResource("1_70j82") +hp_max = 100.0 +attack = 1.0 +attack1 = ExtResource("2_70j82") +attack1_box = ExtResource("3_6gt06") +attack2 = ExtResource("4_2lpps") +attack2_box = ExtResource("3_6gt06") +sub_character_auto_create = false +material_on = 0 +material_off = 0 diff --git a/config/character/bullet_hero01_short_stab01.tres b/config/character/bullet_hero01_short_stab01.tres index f64e872..715d6fe 100644 --- a/config/character/bullet_hero01_short_stab01.tres +++ b/config/character/bullet_hero01_short_stab01.tres @@ -3,7 +3,7 @@ [ext_resource type="PackedScene" uid="uid://bei75ysjq2pi4" path="res://scene/ai/bullet_simple.tscn" id="1_3q8i1"] [ext_resource type="Resource" uid="uid://d3mcp8sf6qbmd" path="res://config/attack/sharp_normal_hit.tres" id="2_3q8i1"] [ext_resource type="Resource" uid="uid://decgfcx2xsj8i" path="res://config/attack_box/circle_mid.tres" id="3_3q8i1"] -[ext_resource type="Resource" uid="uid://iv8g1x3bkxvv" path="res://config/character_move/fast_fly.tres" id="4_2bsgq"] +[ext_resource type="Resource" uid="uid://iv8g1x3bkxvv" path="res://config/character_move/fly_fast.tres" id="4_2bsgq"] [ext_resource type="Resource" uid="uid://dpajmgrlaytah" path="res://config/character_mp/normal.tres" id="5_gsbwd"] [ext_resource type="Script" uid="uid://dt3chi1tgnaef" path="res://script/config/character_cfg.gd" id="6_1ypqo"] [ext_resource type="Resource" uid="uid://h1curvk64vm3" path="res://config/character_shield/none.tres" id="7_k8icm"] diff --git a/config/character/bullet_hero01_soul_hit01.tres b/config/character/bullet_hero01_soul_hit01.tres index 1ae0d48..c41e3f7 100644 --- a/config/character/bullet_hero01_soul_hit01.tres +++ b/config/character/bullet_hero01_soul_hit01.tres @@ -3,7 +3,7 @@ [ext_resource type="Resource" uid="uid://ckbf40c75bfqf" path="res://config/attack/sharp_normal_hit_up.tres" id="1_at6jo"] [ext_resource type="PackedScene" uid="uid://bei75ysjq2pi4" path="res://scene/ai/bullet_simple.tscn" id="1_m7qit"] [ext_resource type="Resource" uid="uid://bld0vhuhgydm8" path="res://config/attack_box/direct.tres" id="2_780us"] -[ext_resource type="Resource" uid="uid://iv8g1x3bkxvv" path="res://config/character_move/fast_fly.tres" id="3_cx00u"] +[ext_resource type="Resource" uid="uid://iv8g1x3bkxvv" path="res://config/character_move/fly_fast.tres" id="3_cx00u"] [ext_resource type="Resource" uid="uid://dpajmgrlaytah" path="res://config/character_mp/normal.tres" id="4_alws1"] [ext_resource type="Script" uid="uid://dt3chi1tgnaef" path="res://script/config/character_cfg.gd" id="5_4n1ni"] [ext_resource type="Resource" uid="uid://h1curvk64vm3" path="res://config/character_shield/none.tres" id="6_u7wv4"] diff --git a/config/character_move/fast_fly.tres b/config/character_move/fly_fast.tres similarity index 100% rename from config/character_move/fast_fly.tres rename to config/character_move/fly_fast.tres diff --git a/config/character_move/fly_normal.tres b/config/character_move/fly_normal.tres new file mode 100644 index 0000000..2432ce9 --- /dev/null +++ b/config/character_move/fly_normal.tres @@ -0,0 +1,9 @@ +[gd_resource type="Resource" script_class="CharacterMoveCfg" load_steps=2 format=3 uid="uid://dc2iepk6nb7rs"] + +[ext_resource type="Script" uid="uid://dk6mufc8e8i88" path="res://script/config/character_move_cfg.gd" id="1_33bqv"] + +[resource] +script = ExtResource("1_33bqv") +speed = 5.0 +gravity_scale = 0.0 +jump_velocity = 6.0 diff --git a/config/skill_player_weapon/hero01_fist_attack05.tres b/config/skill_player_weapon/hero01_fist_attack05.tres index 210f7fb..593c2bc 100644 --- a/config/skill_player_weapon/hero01_fist_attack05.tres +++ b/config/skill_player_weapon/hero01_fist_attack05.tres @@ -2,7 +2,7 @@ [ext_resource type="Resource" uid="uid://bwe8xlgfhx1gl" path="res://config/attack/blunt_heavy_hit_blow.tres" id="1_5lwhl"] [ext_resource type="Resource" uid="uid://bqejjllfy03h3" path="res://config/attack_box/box_normal.tres" id="2_g7bbg"] -[ext_resource type="Script" path="res://script/config/skill_weapon_cfg.gd" id="2_ym7q1"] +[ext_resource type="Script" uid="uid://dgwtu2wj5033u" path="res://script/config/skill_weapon_cfg.gd" id="2_ym7q1"] [ext_resource type="Animation" uid="uid://b2xdmgnem1h4g" path="res://resource/skill_animation/hero01_fist_attack05.tres" id="3_dbjmb"] [ext_resource type="SpriteFrames" uid="uid://bhsotj76tuovy" path="res://resource/animation/character/hero01_fist_attack.aseprite" id="4_mhr07"] [ext_resource type="Resource" uid="uid://c6alg8pmqfdxm" path="res://config/weapon/fist.tres" id="5_en30r"] @@ -13,24 +13,21 @@ weapon = ExtResource("5_en30r") action = "attack_light" name = "" skill_animation = ExtResource("3_dbjmb") -range = 0.0 -free_lock = false -ignore_push = false -attack1 = ExtResource("1_5lwhl") -attack1_box = ExtResource("2_g7bbg") -attack1_with_pause_frame = true -attack1_with_stop = true -attack2_with_pause_frame = false -attack2_with_stop = false stance_from = 4 stance_to = 5 break_level = 3 is_charging = false +attack1 = ExtResource("1_5lwhl") +attack1_box = ExtResource("2_g7bbg") +attack1_with_stop = true +attack2_with_stop = false mp_cost = 0 mp_sub_cost = false -warn_type = 0 -with_stop = false +free_lock = false +ignore_push = false is_lock_x = true -refresh_animation = false +is_lock_x_move = false +range = 0.0 +warn_type = 0 sprite_frames = ExtResource("4_mhr07") animation_name = "fist_attack05" diff --git a/config/skill_player_weapon/hero01_fist_skill03.tres b/config/skill_player_weapon/hero01_fist_skill03.tres index 9ccc7a8..ec57d99 100644 --- a/config/skill_player_weapon/hero01_fist_skill03.tres +++ b/config/skill_player_weapon/hero01_fist_skill03.tres @@ -1,8 +1,8 @@ [gd_resource type="Resource" script_class="SkillWeaponCfg" load_steps=7 format=3 uid="uid://dbviuasvknl8q"] -[ext_resource type="Resource" uid="uid://b5sendxmglojg" path="res://config/attack/blunt_tackle.tres" id="1_aubbe"] -[ext_resource type="Resource" uid="uid://dja8jwx16njmf" path="res://config/attack_box/box_small.tres" id="2_xjtqg"] -[ext_resource type="Script" path="res://script/config/skill_weapon_cfg.gd" id="3_6wryu"] +[ext_resource type="Resource" uid="uid://ctbdt77yyubxn" path="res://config/attack/blunt_normal_hit_up.tres" id="1_ywehi"] +[ext_resource type="Resource" uid="uid://decgfcx2xsj8i" path="res://config/attack_box/circle_mid.tres" id="2_ywehi"] +[ext_resource type="Script" uid="uid://dgwtu2wj5033u" path="res://script/config/skill_weapon_cfg.gd" id="3_6wryu"] [ext_resource type="Animation" uid="uid://mnmlwnqk4aqq" path="res://resource/skill_animation/hero01_fist_skill03.tres" id="4_c7ye6"] [ext_resource type="SpriteFrames" uid="uid://cajgs8smbkjan" path="res://resource/animation/character/hero01_fist_skill01.aseprite" id="5_sjxkh"] [ext_resource type="Resource" uid="uid://c6alg8pmqfdxm" path="res://config/weapon/fist.tres" id="6_aemq5"] @@ -13,20 +13,22 @@ weapon = ExtResource("6_aemq5") action = "attack_heavy" name = "" skill_animation = ExtResource("4_c7ye6") -range = 0.0 -free_lock = false -ignore_push = true -attack1 = ExtResource("1_aubbe") -attack1_box = ExtResource("2_xjtqg") stance_from = 2 stance_to = 3 break_level = 3 is_charging = false +attack1 = ExtResource("1_ywehi") +attack1_box = ExtResource("2_ywehi") +attack1_with_stop = false +attack2_with_stop = false mp_cost = 0 mp_sub_cost = false -warn_type = 0 +free_lock = false +ignore_push = true with_stop = false is_lock_x = true -refresh_animation = false +is_lock_x_move = false +range = 0.0 +warn_type = 0 sprite_frames = ExtResource("5_sjxkh") animation_name = "fist_skill03" diff --git a/config/skill_player_weapon/hero01_long_air_attack03.tres b/config/skill_player_weapon/hero01_long_air_attack03.tres index 35b600b..3480dd0 100644 --- a/config/skill_player_weapon/hero01_long_air_attack03.tres +++ b/config/skill_player_weapon/hero01_long_air_attack03.tres @@ -1,7 +1,7 @@ [gd_resource type="Resource" script_class="SkillWeaponCfg" load_steps=6 format=3 uid="uid://b705py5rht5i3"] -[ext_resource type="Resource" uid="uid://dj7tchh0202t2" path="res://config/attack/sharp_mid_hit_down.tres" id="1_11m12"] -[ext_resource type="Script" path="res://script/config/skill_weapon_cfg.gd" id="2_0x7hh"] +[ext_resource type="Resource" uid="uid://bnqnw10v7kude" path="res://config/attack/sharp_normal_hit_down.tres" id="1_iyjil"] +[ext_resource type="Script" uid="uid://dgwtu2wj5033u" path="res://script/config/skill_weapon_cfg.gd" id="2_0x7hh"] [ext_resource type="Resource" uid="uid://bqejjllfy03h3" path="res://config/attack_box/box_normal.tres" id="2_rpr7r"] [ext_resource type="Animation" uid="uid://bh5s2t3cbobpp" path="res://resource/skill_animation/hero01_long_air_attack03.tres" id="3_1erk8"] [ext_resource type="Resource" uid="uid://cy3wwalxeyro0" path="res://config/weapon/long.tres" id="5_u3vas"] @@ -12,23 +12,20 @@ weapon = ExtResource("5_u3vas") action = "attack_light" name = "" skill_animation = ExtResource("3_1erk8") -range = 0.0 -free_lock = false -ignore_push = false -attack1 = ExtResource("1_11m12") -attack1_box = ExtResource("2_rpr7r") -attack1_with_pause_frame = false -attack1_with_stop = false -attack2_with_pause_frame = false -attack2_with_stop = false stance_from = 12 -stance_to = 2 +stance_to = 3 break_level = 3 is_charging = false +attack1 = ExtResource("1_iyjil") +attack1_box = ExtResource("2_rpr7r") +attack1_with_stop = false +attack2_with_stop = false mp_cost = 0 mp_sub_cost = false -warn_type = 0 -with_stop = false +free_lock = false +ignore_push = false is_lock_x = true -refresh_animation = false +is_lock_x_move = false +range = 0.0 +warn_type = 0 animation_name = "" diff --git a/config/skill_player_weapon/hero01_long_stab01.tres b/config/skill_player_weapon/hero01_long_stab01.tres index dd08815..1b75e1c 100644 --- a/config/skill_player_weapon/hero01_long_stab01.tres +++ b/config/skill_player_weapon/hero01_long_stab01.tres @@ -19,9 +19,7 @@ break_level = 3 is_charging = false attack1 = ExtResource("1_orvsj") attack1_box = ExtResource("2_332ws") -attack1_with_pause_frame = false attack1_with_stop = false -attack2_with_pause_frame = false attack2_with_stop = false mp_cost = 0 mp_sub_cost = false @@ -33,4 +31,4 @@ is_lock_x_move = true range = 0.0 warn_type = 0 sprite_frames = ExtResource("5_j4rp7") -animation_name = "long_skill_stab01" +animation_name = "long_skill_stab02" diff --git a/config/skill_player_weapon/hero01_long_stab03.tres b/config/skill_player_weapon/hero01_long_stab03.tres new file mode 100644 index 0000000..e0fd8bd --- /dev/null +++ b/config/skill_player_weapon/hero01_long_stab03.tres @@ -0,0 +1,36 @@ +[gd_resource type="Resource" script_class="SkillWeaponCfg" load_steps=8 format=3 uid="uid://cahm6vjsskkc5"] + +[ext_resource type="Resource" uid="uid://dmfr73m28vsqj" path="res://config/attack/sharp_normal_hit_back_hard.tres" id="1_o1kbx"] +[ext_resource type="Animation" uid="uid://dbm6ssy6cqb2d" path="res://resource/skill_animation/hero01_long_stab03.tres" id="2_jcwvc"] +[ext_resource type="Resource" uid="uid://diedb7vw7eyxp" path="res://config/attack_box/box_mid.tres" id="2_o1kbx"] +[ext_resource type="Script" uid="uid://dgwtu2wj5033u" path="res://script/config/skill_weapon_cfg.gd" id="3_51oqr"] +[ext_resource type="Resource" uid="uid://rxt1emwats2v" path="res://config/character/bullet_hero01_long_stab.tres" id="4_hrq33"] +[ext_resource type="SpriteFrames" uid="uid://c6w03xigmrd31" path="res://resource/animation/character/hero01_long_skill03.aseprite" id="5_aqnpo"] +[ext_resource type="Resource" uid="uid://cy3wwalxeyro0" path="res://config/weapon/long.tres" id="6_cys3s"] + +[resource] +script = ExtResource("3_51oqr") +weapon = ExtResource("6_cys3s") +action = "attack_heavy" +name = "" +sub_character = ExtResource("4_hrq33") +skill_animation = ExtResource("2_jcwvc") +stance_from = 30 +stance_to = 99 +break_level = 3 +is_charging = false +attack1 = ExtResource("1_o1kbx") +attack1_box = ExtResource("2_o1kbx") +attack1_with_stop = false +attack2_with_stop = false +mp_cost = 0 +mp_sub_cost = false +free_lock = false +ignore_push = true +with_stop = false +is_lock_x = true +is_lock_x_move = true +range = 0.0 +warn_type = 0 +sprite_frames = ExtResource("5_aqnpo") +animation_name = "long_skill_stab02" diff --git a/resource/animation/character/hero01_long_attack.aseprite b/resource/animation/character/hero01_long_attack.aseprite index ec2ee38..426eaa9 100644 Binary files a/resource/animation/character/hero01_long_attack.aseprite and b/resource/animation/character/hero01_long_attack.aseprite differ diff --git a/resource/animation/character/hero01_long_attack.png b/resource/animation/character/hero01_long_attack.png index 60c996c..2d52499 100644 Binary files a/resource/animation/character/hero01_long_attack.png and b/resource/animation/character/hero01_long_attack.png differ diff --git a/resource/animation/character/hero01_long_skill01.aseprite b/resource/animation/character/hero01_long_skill01.aseprite index cd0c996..3944709 100644 Binary files a/resource/animation/character/hero01_long_skill01.aseprite and b/resource/animation/character/hero01_long_skill01.aseprite differ diff --git a/resource/animation/character/hero01_long_skill01.png b/resource/animation/character/hero01_long_skill01.png index fc50e85..2efa07e 100644 Binary files a/resource/animation/character/hero01_long_skill01.png and b/resource/animation/character/hero01_long_skill01.png differ diff --git a/resource/skill_animation/hero01_combo0101.tres b/resource/skill_animation/hero01_combo0101.tres index 236f0d0..e1805b3 100644 --- a/resource/skill_animation/hero01_combo0101.tres +++ b/resource/skill_animation/hero01_combo0101.tres @@ -4,7 +4,7 @@ [resource] resource_name = "hero01_combo0101" -length = 0.9 +length = 0.8 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true @@ -36,8 +36,8 @@ tracks/2/path = NodePath("View:frame") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { -"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8), -"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1), +"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1), "update": 1, -"values": [0, 1, 2, 3, 4, 5, 6, 7, 8] +"values": [0, 1, 2, 3, 4, 5, 6, 7] } diff --git a/resource/skill_animation/hero01_combo0102.tres b/resource/skill_animation/hero01_combo0102.tres index 9e6d5f2..35338f3 100644 --- a/resource/skill_animation/hero01_combo0102.tres +++ b/resource/skill_animation/hero01_combo0102.tres @@ -4,7 +4,7 @@ [resource] resource_name = "hero01_combo0102" -length = 0.9 +length = 0.8 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true @@ -36,8 +36,8 @@ tracks/2/path = NodePath("View:frame") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { -"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8), -"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1), +"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1), "update": 1, -"values": [0, 1, 2, 3, 4, 5, 6, 7, 8] +"values": [0, 1, 2, 3, 4, 5, 6, 7] } diff --git a/resource/skill_animation/hero01_common_skill0101.tres b/resource/skill_animation/hero01_common_skill0101.tres index 9e00665..10dd628 100644 --- a/resource/skill_animation/hero01_common_skill0101.tres +++ b/resource/skill_animation/hero01_common_skill0101.tres @@ -4,7 +4,7 @@ [resource] resource_name = "hero01_common_skill0101" -length = 0.9 +length = 0.8 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true @@ -36,8 +36,8 @@ tracks/2/path = NodePath("View:frame") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { -"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8), -"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1), +"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1), "update": 1, -"values": [0, 1, 2, 3, 4, 5, 6, 7, 8] +"values": [0, 1, 2, 3, 4, 5, 6, 7] } diff --git a/resource/skill_animation/hero01_common_skill0102.tres b/resource/skill_animation/hero01_common_skill0102.tres index c221a92..4217bdc 100644 --- a/resource/skill_animation/hero01_common_skill0102.tres +++ b/resource/skill_animation/hero01_common_skill0102.tres @@ -4,7 +4,7 @@ [resource] resource_name = "hero01_common_skill0102" -length = 0.9 +length = 0.8 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true @@ -36,8 +36,8 @@ tracks/2/path = NodePath("View:frame") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { -"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8), -"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1), +"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1), "update": 1, -"values": [0, 1, 2, 3, 4, 5, 6, 7, 8] +"values": [0, 1, 2, 3, 4, 5, 6, 7] } diff --git a/resource/skill_animation/hero01_common_skill03.tres b/resource/skill_animation/hero01_common_skill03.tres index f866275..daff948 100644 --- a/resource/skill_animation/hero01_common_skill03.tres +++ b/resource/skill_animation/hero01_common_skill03.tres @@ -4,7 +4,7 @@ [resource] resource_name = "hero01_common_skill03" -length = 0.9 +length = 0.8 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true @@ -86,8 +86,8 @@ tracks/6/path = NodePath("View:frame") tracks/6/interp = 1 tracks/6/loop_wrap = true tracks/6/keys = { -"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8), -"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1), +"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1), "update": 1, -"values": [0, 1, 2, 3, 4, 5, 6, 7, 8] +"values": [0, 1, 2, 3, 4, 5, 6, 7] } diff --git a/resource/skill_animation/hero01_fist_attack05.tres b/resource/skill_animation/hero01_fist_attack05.tres index 638bee7..d3f9dd9 100644 --- a/resource/skill_animation/hero01_fist_attack05.tres +++ b/resource/skill_animation/hero01_fist_attack05.tres @@ -61,10 +61,10 @@ tracks/4/path = NodePath("Status:skill_move_speed") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/keys = { -"times": PackedFloat32Array(0.2, 0.6), -"transitions": PackedFloat32Array(1, 1), +"times": PackedFloat32Array(0.2, 0.5, 0.6), +"transitions": PackedFloat32Array(1, 1, 1), "update": 1, -"values": [2.0, 0.0] +"values": [1.0, 4.0, 0.0] } tracks/5/type = "method" tracks/5/imported = false diff --git a/resource/skill_animation/hero01_fist_skill03.tres b/resource/skill_animation/hero01_fist_skill03.tres index 0a7115b..8f24e65 100644 --- a/resource/skill_animation/hero01_fist_skill03.tres +++ b/resource/skill_animation/hero01_fist_skill03.tres @@ -49,10 +49,10 @@ tracks/3/path = NodePath("Status:skill_move_speed") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { -"times": PackedFloat32Array(0.1, 0.2), -"transitions": PackedFloat32Array(1, 1), +"times": PackedFloat32Array(0, 0.1, 0.2, 0.3), +"transitions": PackedFloat32Array(1, 1, 1, 1), "update": 1, -"values": [6.0, 0.0] +"values": [2.0, 8.0, 6.0, 0.0] } tracks/4/type = "method" tracks/4/imported = false @@ -61,11 +61,17 @@ tracks/4/path = NodePath("Battle") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/keys = { -"times": PackedFloat32Array(0.1), -"transitions": PackedFloat32Array(1), +"times": PackedFloat32Array(0.1, 0.2, 0.3), +"transitions": PackedFloat32Array(1, 1, 1), "values": [{ "args": [], "method": &"attack1" +}, { +"args": [], +"method": &"attack1" +}, { +"args": [], +"method": &"attack1" }] } tracks/5/type = "method" @@ -94,3 +100,14 @@ tracks/6/keys = { "update": 1, "values": [0, 1, 2, 3, 4, 5, 6] } +tracks/7/type = "method" +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/path = NodePath("Battle") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/keys = { +"times": PackedFloat32Array(), +"transitions": PackedFloat32Array(), +"values": [] +} diff --git a/resource/skill_animation/hero01_long_air_attack01.tres b/resource/skill_animation/hero01_long_air_attack01.tres index 4f56721..7031aef 100644 --- a/resource/skill_animation/hero01_long_air_attack01.tres +++ b/resource/skill_animation/hero01_long_air_attack01.tres @@ -4,7 +4,7 @@ [resource] resource_name = "hero01_long_air_attack01" -length = 0.9 +length = 0.8 step = 0.1 tracks/0/type = "value" tracks/0/imported = false @@ -37,7 +37,7 @@ tracks/2/path = NodePath("Status:break_level") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { -"times": PackedFloat32Array(0, 0.3, 0.6), +"times": PackedFloat32Array(0, 0.2, 0.5), "transitions": PackedFloat32Array(1, 1, 1), "update": 1, "values": [0, 3, 4] @@ -49,7 +49,7 @@ tracks/3/path = NodePath("Status:speed_up_rate") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { -"times": PackedFloat32Array(0.2, 0.3), +"times": PackedFloat32Array(0.1, 0.2), "transitions": PackedFloat32Array(1, 1), "update": 1, "values": [-0.5, -1.0] @@ -61,7 +61,7 @@ tracks/4/path = NodePath("Status:skill_move_speed") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/keys = { -"times": PackedFloat32Array(0.1, 0.3), +"times": PackedFloat32Array(0, 0.2), "transitions": PackedFloat32Array(1, 1), "update": 1, "values": [1.0, 0.0] @@ -73,7 +73,7 @@ tracks/5/path = NodePath("Status:skill_float_speed") tracks/5/interp = 1 tracks/5/loop_wrap = true tracks/5/keys = { -"times": PackedFloat32Array(0, 0.2, 0.4), +"times": PackedFloat32Array(0, 0.1, 0.3), "transitions": PackedFloat32Array(1, 1, 1), "update": 1, "values": [0.1, 1.0, 0.0] @@ -85,7 +85,7 @@ tracks/6/path = NodePath("Battle") tracks/6/interp = 1 tracks/6/loop_wrap = true tracks/6/keys = { -"times": PackedFloat32Array(0.2), +"times": PackedFloat32Array(0.1), "transitions": PackedFloat32Array(1), "values": [{ "args": [], @@ -99,7 +99,7 @@ tracks/7/path = NodePath("Effect") tracks/7/interp = 1 tracks/7/loop_wrap = true tracks/7/keys = { -"times": PackedFloat32Array(0.2), +"times": PackedFloat32Array(0.1), "transitions": PackedFloat32Array(1), "values": [{ "args": [], @@ -113,8 +113,8 @@ tracks/8/path = NodePath("View:frame") tracks/8/interp = 1 tracks/8/loop_wrap = true tracks/8/keys = { -"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8), -"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1), +"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1), "update": 1, -"values": [0, 1, 2, 3, 4, 5, 6, 7, 8] +"values": [0, 1, 2, 3, 4, 5, 6, 7] } diff --git a/resource/skill_animation/hero01_long_air_attack02.tres b/resource/skill_animation/hero01_long_air_attack02.tres index ad7e7c6..922f612 100644 --- a/resource/skill_animation/hero01_long_air_attack02.tres +++ b/resource/skill_animation/hero01_long_air_attack02.tres @@ -4,7 +4,7 @@ [resource] resource_name = "hero01_long_air_attack02" -length = 0.9 +length = 0.8 step = 0.1 tracks/0/type = "value" tracks/0/imported = false @@ -37,7 +37,7 @@ tracks/2/path = NodePath("Status:break_level") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { -"times": PackedFloat32Array(0, 0.4, 0.5), +"times": PackedFloat32Array(0, 0.3, 0.4), "transitions": PackedFloat32Array(1, 1, 1), "update": 1, "values": [0, 3, 4] @@ -49,7 +49,7 @@ tracks/3/path = NodePath("Status:speed_up_rate") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { -"times": PackedFloat32Array(0.2, 0.3), +"times": PackedFloat32Array(0.1, 0.2), "transitions": PackedFloat32Array(1, 1), "update": 1, "values": [-0.5, -1.0] @@ -61,7 +61,7 @@ tracks/4/path = NodePath("Status:skill_move_speed") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/keys = { -"times": PackedFloat32Array(0.1, 0.3), +"times": PackedFloat32Array(0, 0.2), "transitions": PackedFloat32Array(1, 1), "update": 1, "values": [1.0, 0.0] @@ -73,7 +73,7 @@ tracks/5/path = NodePath("Status:skill_float_speed") tracks/5/interp = 1 tracks/5/loop_wrap = true tracks/5/keys = { -"times": PackedFloat32Array(0, 0.2, 0.4), +"times": PackedFloat32Array(0, 0.1, 0.3), "transitions": PackedFloat32Array(1, 1, 1), "update": 1, "values": [0.1, 1.0, 0.0] @@ -85,7 +85,7 @@ tracks/6/path = NodePath("Battle") tracks/6/interp = 1 tracks/6/loop_wrap = true tracks/6/keys = { -"times": PackedFloat32Array(0.2), +"times": PackedFloat32Array(0.1), "transitions": PackedFloat32Array(1), "values": [{ "args": [], @@ -99,7 +99,7 @@ tracks/7/path = NodePath("Effect") tracks/7/interp = 1 tracks/7/loop_wrap = true tracks/7/keys = { -"times": PackedFloat32Array(0.2), +"times": PackedFloat32Array(0.1), "transitions": PackedFloat32Array(1), "values": [{ "args": [], @@ -113,8 +113,8 @@ tracks/8/path = NodePath("View:frame") tracks/8/interp = 1 tracks/8/loop_wrap = true tracks/8/keys = { -"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8), -"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1), +"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1), "update": 1, -"values": [0, 1, 2, 3, 4, 5, 6, 7, 8] +"values": [0, 1, 2, 3, 4, 5, 6, 7] } diff --git a/resource/skill_animation/hero01_long_air_attack03.tres b/resource/skill_animation/hero01_long_air_attack03.tres index 194760e..e7a76df 100644 --- a/resource/skill_animation/hero01_long_air_attack03.tres +++ b/resource/skill_animation/hero01_long_air_attack03.tres @@ -4,7 +4,7 @@ [resource] resource_name = "hero01_long_air_attack03" -length = 0.9 +length = 0.8 step = 0.1 tracks/0/type = "value" tracks/0/imported = false @@ -37,7 +37,7 @@ tracks/2/path = NodePath("Status:break_level") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { -"times": PackedFloat32Array(0, 0.4, 0.5, 0.7), +"times": PackedFloat32Array(0, 0.3, 0.4, 0.6), "transitions": PackedFloat32Array(1, 1, 1, 1), "update": 0, "values": [0, 1, 3, 4] @@ -49,7 +49,7 @@ tracks/3/path = NodePath("Battle") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { -"times": PackedFloat32Array(0.2), +"times": PackedFloat32Array(0.1), "transitions": PackedFloat32Array(1), "values": [{ "args": [], @@ -63,7 +63,7 @@ tracks/4/path = NodePath("Status:skill_float_speed") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/keys = { -"times": PackedFloat32Array(0, 0.2, 0.3), +"times": PackedFloat32Array(0, 0.1, 0.2), "transitions": PackedFloat32Array(1, 1, 1), "update": 1, "values": [2.0, -10.0, 0.0] @@ -75,7 +75,7 @@ tracks/5/path = NodePath("Effect") tracks/5/interp = 1 tracks/5/loop_wrap = true tracks/5/keys = { -"times": PackedFloat32Array(0.2, 0.3), +"times": PackedFloat32Array(0.1, 0.2), "transitions": PackedFloat32Array(1, 1), "values": [{ "args": [], @@ -92,7 +92,7 @@ tracks/6/path = NodePath("Battle") tracks/6/interp = 1 tracks/6/loop_wrap = true tracks/6/keys = { -"times": PackedFloat32Array(0.2), +"times": PackedFloat32Array(0.1), "transitions": PackedFloat32Array(1), "values": [{ "args": [], @@ -106,7 +106,7 @@ tracks/7/path = NodePath("Battle") tracks/7/interp = 1 tracks/7/loop_wrap = true tracks/7/keys = { -"times": PackedFloat32Array(0, 0.3), +"times": PackedFloat32Array(0, 0.2), "transitions": PackedFloat32Array(1, 1), "values": [{ "args": [], @@ -123,8 +123,8 @@ tracks/8/path = NodePath("View:frame") tracks/8/interp = 1 tracks/8/loop_wrap = true tracks/8/keys = { -"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8), -"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1), +"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1), "update": 1, -"values": [0, 1, 2, 3, 4, 5, 6, 7, 8] +"values": [0, 1, 2, 3, 4, 5, 6, 7] } diff --git a/resource/skill_animation/hero01_long_air_skill01.tres b/resource/skill_animation/hero01_long_air_skill01.tres index d1ed474..aac08d9 100644 --- a/resource/skill_animation/hero01_long_air_skill01.tres +++ b/resource/skill_animation/hero01_long_air_skill01.tres @@ -4,7 +4,7 @@ [resource] resource_name = "hero01_long_air_skill01" -length = 1.4 +length = 1.3 step = 0.1 tracks/0/type = "value" tracks/0/imported = false @@ -37,7 +37,7 @@ tracks/2/path = NodePath("Status:break_level") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { -"times": PackedFloat32Array(0, 0.7, 1.3), +"times": PackedFloat32Array(0, 0.6, 1.3), "transitions": PackedFloat32Array(1, 1, 1), "update": 1, "values": [0, 3, 4] @@ -49,7 +49,7 @@ tracks/3/path = NodePath("Status:speed_up_rate") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { -"times": PackedFloat32Array(0.3, 0.6), +"times": PackedFloat32Array(0.2, 0.5), "transitions": PackedFloat32Array(1, 1), "update": 1, "values": [-0.5, -1.0] @@ -61,7 +61,7 @@ tracks/4/path = NodePath("Status:skill_move_speed") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/keys = { -"times": PackedFloat32Array(0, 0.3, 0.6), +"times": PackedFloat32Array(0, 0.2, 0.5), "transitions": PackedFloat32Array(1, 1, 1), "update": 1, "values": [0.0, 1.0, 0.0] @@ -73,7 +73,7 @@ tracks/5/path = NodePath("Battle") tracks/5/interp = 1 tracks/5/loop_wrap = true tracks/5/keys = { -"times": PackedFloat32Array(0.3, 0.5, 0.6), +"times": PackedFloat32Array(0.2, 0.4, 0.5), "transitions": PackedFloat32Array(1, 1, 1), "values": [{ "args": [], @@ -93,7 +93,7 @@ tracks/6/path = NodePath("Status:skill_float_speed") tracks/6/interp = 1 tracks/6/loop_wrap = true tracks/6/keys = { -"times": PackedFloat32Array(0, 0.3, 0.6), +"times": PackedFloat32Array(0, 0.2, 0.5), "transitions": PackedFloat32Array(1, 1, 1), "update": 1, "values": [0.1, 2.0, 0.0] @@ -105,7 +105,7 @@ tracks/7/path = NodePath("Effect") tracks/7/interp = 1 tracks/7/loop_wrap = true tracks/7/keys = { -"times": PackedFloat32Array(0.3, 0.5, 0.6), +"times": PackedFloat32Array(0.2, 0.4, 0.5), "transitions": PackedFloat32Array(1, 1, 1), "values": [{ "args": [], @@ -125,8 +125,8 @@ tracks/8/path = NodePath("View:frame") tracks/8/interp = 1 tracks/8/loop_wrap = true tracks/8/keys = { -"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1, 1.1, 1.2, 1.3), -"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1), +"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1, 1.1, 1.2), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1), "update": 1, -"values": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13] +"values": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] } diff --git a/resource/skill_animation/hero01_long_attack01.tres b/resource/skill_animation/hero01_long_attack01.tres index c135ec5..0c9c1d0 100644 --- a/resource/skill_animation/hero01_long_attack01.tres +++ b/resource/skill_animation/hero01_long_attack01.tres @@ -4,7 +4,7 @@ [resource] resource_name = "hero01_long_attack01" -length = 0.9 +length = 0.8 step = 0.1 tracks/0/type = "value" tracks/0/imported = false @@ -101,8 +101,8 @@ tracks/7/path = NodePath("View:frame") tracks/7/interp = 1 tracks/7/loop_wrap = true tracks/7/keys = { -"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8), -"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1), +"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1), "update": 1, -"values": [0, 1, 2, 3, 4, 5, 6, 7, 8] +"values": [0, 1, 2, 3, 4, 5, 6, 7] } diff --git a/resource/skill_animation/hero01_long_attack02.tres b/resource/skill_animation/hero01_long_attack02.tres index a7aadf5..98b26c7 100644 --- a/resource/skill_animation/hero01_long_attack02.tres +++ b/resource/skill_animation/hero01_long_attack02.tres @@ -4,7 +4,7 @@ [resource] resource_name = "hero01_long_attack02" -length = 0.9 +length = 0.8 step = 0.1 tracks/0/type = "value" tracks/0/imported = false @@ -101,8 +101,8 @@ tracks/7/path = NodePath("View:frame") tracks/7/interp = 1 tracks/7/loop_wrap = true tracks/7/keys = { -"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8), -"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1), +"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1), "update": 1, -"values": [0, 1, 2, 3, 4, 5, 6, 7, 8] +"values": [0, 1, 2, 3, 4, 5, 6, 7] } diff --git a/resource/skill_animation/hero01_long_skill02.tres b/resource/skill_animation/hero01_long_skill02.tres index 0591f15..21c90fb 100644 --- a/resource/skill_animation/hero01_long_skill02.tres +++ b/resource/skill_animation/hero01_long_skill02.tres @@ -4,7 +4,7 @@ [resource] resource_name = "hero01_long_skill02" -length = 0.8 +length = 0.7 step = 0.1 tracks/0/type = "value" tracks/0/imported = false @@ -49,7 +49,7 @@ tracks/3/path = NodePath("Status:speed_up_rate") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { -"times": PackedFloat32Array(0, 0.2), +"times": PackedFloat32Array(0, 0.1), "transitions": PackedFloat32Array(1, 1), "update": 1, "values": [-0.5, -1.0] @@ -61,7 +61,7 @@ tracks/4/path = NodePath("Status:skill_move_speed") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/keys = { -"times": PackedFloat32Array(0.1, 0.2), +"times": PackedFloat32Array(0, 0.1), "transitions": PackedFloat32Array(1, 1), "update": 1, "values": [2.0, 0.0] @@ -73,7 +73,7 @@ tracks/5/path = NodePath("Status:skill_float_speed") tracks/5/interp = 1 tracks/5/loop_wrap = true tracks/5/keys = { -"times": PackedFloat32Array(0.3, 0.4), +"times": PackedFloat32Array(0.2, 0.3), "transitions": PackedFloat32Array(1, 1), "update": 1, "values": [3.0, 0.0] @@ -85,7 +85,7 @@ tracks/6/path = NodePath("Battle") tracks/6/interp = 1 tracks/6/loop_wrap = true tracks/6/keys = { -"times": PackedFloat32Array(0.3), +"times": PackedFloat32Array(0.2), "transitions": PackedFloat32Array(1), "values": [{ "args": [], @@ -99,7 +99,7 @@ tracks/7/path = NodePath("Effect") tracks/7/interp = 1 tracks/7/loop_wrap = true tracks/7/keys = { -"times": PackedFloat32Array(0.3), +"times": PackedFloat32Array(0.2), "transitions": PackedFloat32Array(1), "values": [{ "args": [], @@ -113,8 +113,8 @@ tracks/8/path = NodePath("View:frame") tracks/8/interp = 1 tracks/8/loop_wrap = true tracks/8/keys = { -"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7), -"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1), +"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1), "update": 1, -"values": [0, 1, 2, 3, 4, 5, 6, 7] +"values": [0, 1, 2, 3, 4, 5, 6] } diff --git a/resource/skill_animation/hero01_long_stab03.tres b/resource/skill_animation/hero01_long_stab03.tres new file mode 100644 index 0000000..8ee9e66 --- /dev/null +++ b/resource/skill_animation/hero01_long_stab03.tres @@ -0,0 +1,121 @@ +[gd_resource type="Animation" load_steps=2 format=3 uid="uid://dbm6ssy6cqb2d"] + +[ext_resource type="SpriteFrames" uid="uid://c6w03xigmrd31" path="res://resource/animation/character/hero01_long_skill03.aseprite" id="1_uyr8p"] + +[resource] +resource_name = "hero01_long_stab03" +step = 0.1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("View:sprite_frames") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [ExtResource("1_uyr8p")] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("View:animation") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": ["long_skill_stab02"] +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("View:frame") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1), +"update": 1, +"values": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] +} +tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("Status:break_level") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"times": PackedFloat32Array(0, 0.3, 0.5), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 1, +"values": [0, 3, 4] +} +tracks/4/type = "value" +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/path = NodePath("Status:speed_up_rate") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/keys = { +"times": PackedFloat32Array(0, 0.1), +"transitions": PackedFloat32Array(1, 1), +"update": 1, +"values": [-0.5, -1.0] +} +tracks/5/type = "method" +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/path = NodePath("Battle") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/keys = { +"times": PackedFloat32Array(0.2), +"transitions": PackedFloat32Array(1), +"values": [{ +"args": [], +"method": &"cast_sub_character" +}] +} +tracks/6/type = "method" +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/path = NodePath("Effect") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/keys = { +"times": PackedFloat32Array(0.2), +"transitions": PackedFloat32Array(1), +"values": [{ +"args": [], +"method": &"cast_attack_particle1" +}] +} +tracks/7/type = "value" +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/path = NodePath("Status:skill_move_speed") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/keys = { +"times": PackedFloat32Array(0, 0.1, 0.2), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 0, +"values": [2.0, 6.0, 0.0] +} +tracks/8/type = "method" +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/path = NodePath("Battle") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/keys = { +"times": PackedFloat32Array(0.2), +"transitions": PackedFloat32Array(1), +"values": [{ +"args": [], +"method": &"attack1" +}] +} diff --git a/resource/skill_animation/hero01_remote01.tres b/resource/skill_animation/hero01_remote01.tres index 44ef10b..7bb5bbe 100644 --- a/resource/skill_animation/hero01_remote01.tres +++ b/resource/skill_animation/hero01_remote01.tres @@ -4,7 +4,7 @@ [resource] resource_name = "hero01_remote01" -length = 0.9 +length = 0.8 step = 0.1 tracks/0/type = "value" tracks/0/imported = false @@ -87,8 +87,8 @@ tracks/6/path = NodePath("View:frame") tracks/6/interp = 1 tracks/6/loop_wrap = true tracks/6/keys = { -"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8), -"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1), +"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1), "update": 1, -"values": [0, 1, 2, 3, 4, 5, 6, 7, 8] +"values": [0, 1, 2, 3, 4, 5, 6, 7] } diff --git a/resource/skill_animation_library/animation_library.tres b/resource/skill_animation_library/animation_library.tres index 0916add..947b81c 100644 --- a/resource/skill_animation_library/animation_library.tres +++ b/resource/skill_animation_library/animation_library.tres @@ -1,4 +1,4 @@ -[gd_resource type="AnimationLibrary" load_steps=56 format=3 uid="uid://croik07a1qko5"] +[gd_resource type="AnimationLibrary" load_steps=57 format=3 uid="uid://croik07a1qko5"] [ext_resource type="Animation" uid="uid://t01a4jvp8srr" path="res://resource/skill_animation/hero01_fist_attack01.tres" id="1_4bwwm"] [ext_resource type="Animation" uid="uid://cfapnjkj5dkws" path="res://resource/skill_animation/hero01_basic_flash.tres" id="1_46f01"] @@ -51,6 +51,7 @@ [ext_resource type="Animation" uid="uid://cc086nunelk2q" path="res://resource/skill_animation/hero01_long_stab01.tres" id="43_0kutt"] [ext_resource type="Animation" uid="uid://nhnwu6uccylr" path="res://resource/skill_animation/hero01_long_stab02.tres" id="44_c7cx4"] [ext_resource type="Animation" uid="uid://2oxeq83bpofb" path="res://resource/skill_animation/monster03_slash02.tres" id="45_1vnur"] +[ext_resource type="Animation" uid="uid://dbm6ssy6cqb2d" path="res://resource/skill_animation/hero01_long_stab03.tres" id="45_hfosj"] [ext_resource type="Animation" uid="uid://dyyt3nsvoye62" path="res://resource/skill_animation/monster03_slash01.tres" id="45_s1ue4"] [ext_resource type="Animation" uid="uid://co8bivpp1fm6g" path="res://resource/skill_animation/monster03_slash03.tres" id="46_litb8"] [ext_resource type="Animation" uid="uid://qcmj7d5pg6lw" path="res://resource/skill_animation/hero01_short_skill01.tres" id="50_1hav4"] @@ -102,6 +103,7 @@ _data = { &"hero01_long_skill03": ExtResource("42_d2bqv"), &"hero01_long_stab01": ExtResource("43_0kutt"), &"hero01_long_stab02": ExtResource("44_c7cx4"), +&"hero01_long_stab03": ExtResource("45_hfosj"), &"hero01_remote01": ExtResource("33_7i37k"), &"hero01_short_attack01": ExtResource("11_n0dhn"), &"hero01_short_attack02": ExtResource("11_h2vlt"), diff --git a/scene/ai/bullet_simple.tscn b/scene/ai/bullet_simple.tscn index 70b89ab..c374aad 100644 --- a/scene/ai/bullet_simple.tscn +++ b/scene/ai/bullet_simple.tscn @@ -11,7 +11,7 @@ [node name="BeehaveTree" type="Node" node_paths=PackedStringArray("blackboard")] script = ExtResource("1_7oi2o") -blackboard = NodePath("@Node@25116") +blackboard = NodePath("@Node@25186") [node name="SequenceComposite" type="Node" parent="."] script = ExtResource("3_i33jf") diff --git a/scene/ai/bullet_simple_penetrat.tscn b/scene/ai/bullet_simple_penetrat.tscn index c6d27f5..84ae2e6 100644 --- a/scene/ai/bullet_simple_penetrat.tscn +++ b/scene/ai/bullet_simple_penetrat.tscn @@ -1,20 +1,49 @@ -[gd_scene load_steps=5 format=3 uid="uid://tr65aikkpp2e"] +[gd_scene load_steps=9 format=3 uid="uid://tr65aikkpp2e"] [ext_resource type="Script" uid="uid://mvwcxqcetiqp" path="res://addons/beehave/nodes/beehave_tree.gd" id="1_6wcp2"] [ext_resource type="Script" uid="uid://cugftmuc8v30c" path="res://addons/beehave/nodes/composites/sequence.gd" id="2_0p8p1"] -[ext_resource type="Script" uid="uid://cnw25wdsd3c76" path="res://script/ai/action/action_wait.gd" id="3_irjra"] +[ext_resource type="Script" uid="uid://dcqq2mursvw5m" path="res://addons/beehave/nodes/decorators/succeeder.gd" id="3_irjra"] +[ext_resource type="Script" uid="uid://csd1yh0ruy3yu" path="res://script/ai/action/action_wait_tick.gd" id="4_2fqct"] [ext_resource type="Script" uid="uid://ddcaceywxwt20" path="res://script/ai/action/action_attack1.gd" id="4_klwmg"] +[ext_resource type="Script" uid="uid://bhxaiqao7nkth" path="res://script/ai/action/action_check_hit_wall.gd" id="6_7sn8v"] +[ext_resource type="Script" uid="uid://ci3tg5fkdn16f" path="res://script/ai/action/action_destroy.gd" id="7_dfpyy"] +[ext_resource type="Script" uid="uid://scokoi8g3sm8" path="res://script/ai/action/action_attack2.gd" id="7_klwmg"] [node name="BeehaveTree" type="Node" node_paths=PackedStringArray("blackboard")] script = ExtResource("1_6wcp2") -blackboard = NodePath("@Node@25116") +blackboard = NodePath("@Node@25188") [node name="SequenceComposite" type="Node" parent="."] script = ExtResource("2_0p8p1") -[node name="ActionWait" type="Node" parent="SequenceComposite"] +[node name="AlwaysSucceedDecorator" type="Node" parent="SequenceComposite"] script = ExtResource("3_irjra") -wait_time = 0.05 +metadata/_custom_type_script = ExtResource("3_irjra") -[node name="ActionAttack1" type="Node" parent="SequenceComposite"] +[node name="保持攻击" type="Node" parent="SequenceComposite/AlwaysSucceedDecorator"] +script = ExtResource("2_0p8p1") + +[node name="ActionWaitTick" type="Node" parent="SequenceComposite/AlwaysSucceedDecorator/保持攻击"] +script = ExtResource("4_2fqct") +metadata/_custom_type_script = ExtResource("4_2fqct") + +[node name="ActionAttack1" type="Node" parent="SequenceComposite/AlwaysSucceedDecorator/保持攻击"] script = ExtResource("4_klwmg") + +[node name="AlwaysSucceedDecorator2" type="Node" parent="SequenceComposite"] +script = ExtResource("3_irjra") +metadata/_custom_type_script = ExtResource("3_irjra") + +[node name="检测命中墙壁并销毁" type="Node" parent="SequenceComposite/AlwaysSucceedDecorator2"] +script = ExtResource("2_0p8p1") + +[node name="ActionCheckHitWall" type="Node" parent="SequenceComposite/AlwaysSucceedDecorator2/检测命中墙壁并销毁"] +script = ExtResource("6_7sn8v") +metadata/_custom_type_script = ExtResource("6_7sn8v") + +[node name="ActionAttack2" type="Node" parent="SequenceComposite/AlwaysSucceedDecorator2/检测命中墙壁并销毁"] +script = ExtResource("7_klwmg") +metadata/_custom_type_script = ExtResource("7_klwmg") + +[node name="ActionDestroy" type="Node" parent="SequenceComposite/AlwaysSucceedDecorator2/检测命中墙壁并销毁"] +script = ExtResource("7_dfpyy") diff --git a/scene/ai/monster01.tscn b/scene/ai/monster01.tscn index f6128e6..426590f 100644 --- a/scene/ai/monster01.tscn +++ b/scene/ai/monster01.tscn @@ -11,7 +11,7 @@ [node name="BeehaveTree" type="Node" node_paths=PackedStringArray("blackboard")] script = ExtResource("1_bbyao") -blackboard = NodePath("@Node@25117") +blackboard = NodePath("@Node@25187") [node name="SequenceComposite" type="Node" parent="."] script = ExtResource("2_04nig") diff --git a/scene/character/character.tscn b/scene/character/character.tscn index 1679b1c..e837ee1 100644 --- a/scene/character/character.tscn +++ b/scene/character/character.tscn @@ -3,8 +3,8 @@ [ext_resource type="Script" uid="uid://cdvtgxvof33j3" path="res://script/character/character.gd" id="1_tonbs"] [ext_resource type="Script" uid="uid://cms637d0jt6sk" path="res://script/character/hitbox.gd" id="2_6xf87"] [ext_resource type="Script" uid="uid://bfi4gneebe3oq" path="res://script/character/status.gd" id="2_txdip"] -[ext_resource type="SpriteFrames" uid="uid://c6w03xigmrd31" path="res://resource/animation/character/hero01_long_skill03.aseprite" id="4_53b4u"] [ext_resource type="Script" uid="uid://cnaqs44siwa45" path="res://script/character/move.gd" id="4_66r53"] +[ext_resource type="SpriteFrames" uid="uid://ce83cuqwgwwi4" path="res://resource/animation/character/hero01_long_attack.aseprite" id="4_sox5o"] [ext_resource type="Script" uid="uid://c247mf44qb3uf" path="res://script/character/view.gd" id="4_vijjv"] [ext_resource type="Script" uid="uid://c24is3uqqcmcn" path="res://script/character/skill.gd" id="6_h4xqy"] [ext_resource type="AnimationLibrary" uid="uid://croik07a1qko5" path="res://resource/skill_animation_library/animation_library.tres" id="6_pakq5"] @@ -137,8 +137,8 @@ gi_mode = 0 pixel_size = 0.02 double_sided = false texture_filter = 0 -sprite_frames = ExtResource("4_53b4u") -animation = &"long_skill_stab01" +sprite_frames = ExtResource("4_sox5o") +animation = &"long_air_attack03" script = ExtResource("4_vijjv") [node name="Move" type="Node3D" parent="."] @@ -187,6 +187,7 @@ script = ExtResource("14_gua01") [node name="Throw" type="AnimatedSprite3D" parent="."] unique_name_in_owner = true +transform = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, 1, 0.75, 0.4, 0) visible = false pixel_size = 0.02 sprite_frames = ExtResource("15_70jx1") diff --git a/scene/effect/particle/_particle_slash1.tscn b/scene/effect/particle/_particle_slash1.tscn index 241efac..64798b9 100644 --- a/scene/effect/particle/_particle_slash1.tscn +++ b/scene/effect/particle/_particle_slash1.tscn @@ -158,7 +158,7 @@ emitting = false amount = 1 lifetime = 0.2 one_shot = true -speed_scale = 2.5 +speed_scale = 2.8 fixed_fps = 60 local_coords = true process_material = SubResource("ParticleProcessMaterial_eppsm") @@ -174,7 +174,7 @@ emitting = false amount = 1 lifetime = 0.25 one_shot = true -speed_scale = 1.8 +speed_scale = 2.8 fixed_fps = 60 local_coords = true process_material = SubResource("ParticleProcessMaterial_g33uw") @@ -190,7 +190,7 @@ emitting = false amount = 1 lifetime = 0.25 one_shot = true -speed_scale = 1.8 +speed_scale = 2.8 fixed_fps = 60 local_coords = true process_material = SubResource("ParticleProcessMaterial_k158j") diff --git a/scene/effect/particle/_particle_slash2.tscn b/scene/effect/particle/_particle_slash2.tscn index f8171c9..b0e4ba3 100644 --- a/scene/effect/particle/_particle_slash2.tscn +++ b/scene/effect/particle/_particle_slash2.tscn @@ -1,7 +1,7 @@ [gd_scene load_steps=31 format=3 uid="uid://c2uyg7ktya04f"] -[ext_resource type="Script" path="res://script/effect/particle.gd" id="1_wk0x7"] -[ext_resource type="Shader" path="res://render/shader/effect_slash.gdshader" id="2_jb5vy"] +[ext_resource type="Script" uid="uid://dxoik7jm7xm2q" path="res://script/effect/particle.gd" id="1_wk0x7"] +[ext_resource type="Shader" uid="uid://b4x52xwsln0sq" path="res://render/shader/effect_slash.gdshader" id="2_jb5vy"] [ext_resource type="Texture2D" uid="uid://4cxxxxdbbugc" path="res://render/texture/particle/gradient/gradient1.png" id="3_lkmel"] [ext_resource type="Texture2D" uid="uid://c4byf37he3mjt" path="res://render/texture/particle/noise/noise1.png" id="3_t53xp"] [ext_resource type="Texture2D" uid="uid://b5nr3mq3u5tjn" path="res://render/texture/particle/mask/mask13.png" id="5_637ga"] @@ -35,7 +35,7 @@ metadata/_snap_enabled = true curve = SubResource("Curve_uh8b1") [sub_resource type="Curve" id="Curve_onba8"] -max_value = 1.1 +_limits = [0.0, 1.1, 0.0, 1.0] _data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 1.1), 0.0, 0.0, 0, 0] point_count = 2 @@ -78,7 +78,7 @@ metadata/_snap_enabled = true curve = SubResource("Curve_56tu5") [sub_resource type="Curve" id="Curve_ixsbt"] -max_value = 1.1 +_limits = [0.0, 1.1, 0.0, 1.0] _data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 1.1), 0.0, 0.0, 0, 0] point_count = 2 @@ -117,6 +117,7 @@ emission_ring_axis = Vector3(0, 1, 0) emission_ring_height = 0.2 emission_ring_radius = 1.25 emission_ring_inner_radius = 1.0 +emission_ring_cone_angle = 90.0 radial_velocity_min = 2.99998 radial_velocity_max = 3.99998 radial_velocity_curve = SubResource("CurveTexture_stugk") diff --git a/scene/effect/particle/_particle_slash3.tscn b/scene/effect/particle/_particle_slash3.tscn index 0eee8b6..4c63431 100644 --- a/scene/effect/particle/_particle_slash3.tscn +++ b/scene/effect/particle/_particle_slash3.tscn @@ -1,7 +1,7 @@ [gd_scene load_steps=18 format=3 uid="uid://cp5eaiqn5u2tu"] -[ext_resource type="Script" path="res://script/effect/particle.gd" id="1_xld4w"] -[ext_resource type="Shader" path="res://render/shader/effect_slash.gdshader" id="2_x0g1q"] +[ext_resource type="Script" uid="uid://dxoik7jm7xm2q" path="res://script/effect/particle.gd" id="1_xld4w"] +[ext_resource type="Shader" uid="uid://b4x52xwsln0sq" path="res://render/shader/effect_slash.gdshader" id="2_x0g1q"] [ext_resource type="Texture2D" uid="uid://4cxxxxdbbugc" path="res://render/texture/particle/gradient/gradient1.png" id="3_poysl"] [ext_resource type="Texture2D" uid="uid://c4byf37he3mjt" path="res://render/texture/particle/noise/noise1.png" id="4_do65m"] [ext_resource type="Texture2D" uid="uid://b5nr3mq3u5tjn" path="res://render/texture/particle/mask/mask13.png" id="5_4etjt"] @@ -54,6 +54,7 @@ emission_ring_axis = Vector3(0, 1, 0) emission_ring_height = 0.0 emission_ring_radius = 1.0 emission_ring_inner_radius = 0.9 +emission_ring_cone_angle = 90.0 direction = Vector3(0, 1, 1) radial_velocity_min = 3.99998 radial_velocity_max = 3.99998 diff --git a/scene/effect/particle/_particle_slash4.tscn b/scene/effect/particle/_particle_slash4.tscn index 53eea02..860798b 100644 --- a/scene/effect/particle/_particle_slash4.tscn +++ b/scene/effect/particle/_particle_slash4.tscn @@ -1,7 +1,7 @@ [gd_scene load_steps=15 format=3 uid="uid://pyxtmwjjo8ch"] -[ext_resource type="Script" path="res://script/effect/particle.gd" id="1_dowcy"] -[ext_resource type="Shader" path="res://render/shader/effect_slash_down.gdshader" id="2_teaun"] +[ext_resource type="Script" uid="uid://dxoik7jm7xm2q" path="res://script/effect/particle.gd" id="1_dowcy"] +[ext_resource type="Shader" uid="uid://dw1itkg00sr2o" path="res://render/shader/effect_slash_down.gdshader" id="2_teaun"] [ext_resource type="Texture2D" uid="uid://4cxxxxdbbugc" path="res://render/texture/particle/gradient/gradient1.png" id="3_xsyva"] [ext_resource type="Texture2D" uid="uid://c4byf37he3mjt" path="res://render/texture/particle/noise/noise1.png" id="4_u6mi0"] [ext_resource type="Texture2D" uid="uid://l5qeh3owctpm" path="res://render/texture/particle/mask/mask15.png" id="5_tixsx"] diff --git a/scene/effect/particle/_particle_stab3.tscn b/scene/effect/particle/_particle_stab3.tscn new file mode 100644 index 0000000..c2bc616 --- /dev/null +++ b/scene/effect/particle/_particle_stab3.tscn @@ -0,0 +1,94 @@ +[gd_scene load_steps=17 format=3 uid="uid://bh3ydvhkb4771"] + +[ext_resource type="Script" uid="uid://dxoik7jm7xm2q" path="res://script/effect/particle.gd" id="1_n7rn2"] +[ext_resource type="Shader" uid="uid://b4x52xwsln0sq" path="res://render/shader/effect_slash.gdshader" id="2_eydbp"] +[ext_resource type="Texture2D" uid="uid://4cxxxxdbbugc" path="res://render/texture/particle/gradient/gradient1.png" id="3_xand7"] +[ext_resource type="Texture2D" uid="uid://c4byf37he3mjt" path="res://render/texture/particle/noise/noise1.png" id="4_f8gw0"] +[ext_resource type="Texture2D" uid="uid://vy3c8opc6uju" path="res://render/texture/particle/mask/mask17.png" id="5_nj1by"] +[ext_resource type="Texture2D" uid="uid://dd3e7ol8qa5eq" path="res://render/texture/particle/noise/noise2.png" id="6_dq6ln"] +[ext_resource type="ArrayMesh" uid="uid://bhqhfenm05vo2" path="res://render/mesh/cone1.obj" id="7_dw3eu"] +[ext_resource type="Texture2D" uid="uid://bn6fmxdjlp3wf" path="res://render/texture/particle/mask/mask19.png" id="8_gc3w6"] + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_n7rn2"] +render_priority = 0 +shader = ExtResource("2_eydbp") +shader_parameter/tex_main = ExtResource("4_f8gw0") +shader_parameter/tex_noise = ExtResource("6_dq6ln") +shader_parameter/tex_mask = ExtResource("5_nj1by") +shader_parameter/tex_gradient = ExtResource("3_xand7") + +[sub_resource type="Curve" id="Curve_dq6ln"] +_limits = [0.0, 1.1, 0.0, 1.0] +_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 1.1), 0.0, 0.0, 0, 0] +point_count = 2 + +[sub_resource type="CurveTexture" id="CurveTexture_dw3eu"] +curve = SubResource("Curve_dq6ln") + +[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_gc3w6"] +particle_flag_rotate_y = true +angle_min = 180.0 +angle_max = 180.0 +angular_velocity_min = -720.0 +angular_velocity_max = -720.0 +gravity = Vector3(0, 0, 0) +scale_curve = SubResource("CurveTexture_dw3eu") + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_lhosn"] +render_priority = 0 +shader = ExtResource("2_eydbp") +shader_parameter/tex_main = ExtResource("4_f8gw0") +shader_parameter/tex_noise = ExtResource("6_dq6ln") +shader_parameter/tex_mask = ExtResource("8_gc3w6") +shader_parameter/tex_gradient = ExtResource("3_xand7") + +[sub_resource type="Curve" id="Curve_n7rn2"] +_limits = [0.0, 1.1, 0.0, 1.0] +_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 1.1), 0.0, 0.0, 0, 0] +point_count = 2 + +[sub_resource type="CurveTexture" id="CurveTexture_eydbp"] +curve = SubResource("Curve_n7rn2") + +[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_xand7"] +particle_flag_rotate_y = true +angle_min = 180.0 +angle_max = 180.0 +angular_velocity_min = -720.0 +angular_velocity_max = -720.0 +gravity = Vector3(0, 0, 0) +scale_curve = SubResource("CurveTexture_eydbp") + +[node name="Particle" type="Node3D"] +script = ExtResource("1_n7rn2") + +[node name="Slash" type="GPUParticles3D" parent="."] +transform = Transform3D(-4.37114e-08, -1.5, 0, 1, -6.55671e-08, 0, 0, 0, 1, 0, 0, 0) +layers = 512 +material_override = SubResource("ShaderMaterial_n7rn2") +cast_shadow = 0 +gi_mode = 0 +emitting = false +amount = 1 +lifetime = 5.0 +one_shot = true +seed = 1352074707 +fixed_fps = 60 +local_coords = true +process_material = SubResource("ParticleProcessMaterial_gc3w6") +draw_pass_1 = ExtResource("7_dw3eu") + +[node name="Slash2" type="GPUParticles3D" parent="."] +transform = Transform3D(-2.62268e-08, -0.6, 0, 0.6, -2.62268e-08, 0, 0, 0, 0.6, 0, 0, 0) +layers = 512 +material_override = SubResource("ShaderMaterial_lhosn") +cast_shadow = 0 +gi_mode = 0 +emitting = false +amount = 1 +lifetime = 5.0 +one_shot = true +fixed_fps = 60 +local_coords = true +process_material = SubResource("ParticleProcessMaterial_xand7") +draw_pass_1 = ExtResource("7_dw3eu") diff --git a/scene/effect/particle/bullet_hero01_long_stab.tscn b/scene/effect/particle/bullet_hero01_long_stab.tscn new file mode 100644 index 0000000..0ac7634 --- /dev/null +++ b/scene/effect/particle/bullet_hero01_long_stab.tscn @@ -0,0 +1,10 @@ +[gd_scene load_steps=3 format=3 uid="uid://c8w1be7y1qejq"] + +[ext_resource type="Script" uid="uid://dxoik7jm7xm2q" path="res://script/effect/particle.gd" id="1_q4l8b"] +[ext_resource type="PackedScene" uid="uid://bh3ydvhkb4771" path="res://scene/effect/particle/_particle_stab3.tscn" id="2_iixv7"] + +[node name="Particle" type="Node3D"] +script = ExtResource("1_q4l8b") + +[node name="Particle" parent="." instance=ExtResource("2_iixv7")] +transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 0.587818, 0, 0) diff --git a/script/_global/setting.gd b/script/_global/setting.gd index 8de5658..e70547a 100644 --- a/script/_global/setting.gd +++ b/script/_global/setting.gd @@ -14,7 +14,6 @@ const drag_air: float = 5 #关卡 const size_basic: Vector3 = Vector3(12.8, 5.12, 7.68) #ui -const weapon_hide_duration: float = 2.0 const weapon_anime_duration: float = 0.1 #pt const pt_mp_damage_rate: float = 0.5 diff --git a/script/ai/action/action_destroy.gd b/script/ai/action/action_destroy.gd index c853598..1ea1337 100644 --- a/script/ai/action/action_destroy.gd +++ b/script/ai/action/action_destroy.gd @@ -1,7 +1,14 @@ extends Action class_name ActionDestroy +var live_time: float = 0.05 + + func run(character: Character, blackboard: Blackboard) -> int: - Global.character_mgr.destroy_character(character.id()) - return SUCCESS + live_time -= get_physics_process_delta_time() + if live_time > 0: + return RUNNING + else: + Global.character_mgr.destroy_character(character.id()) + return SUCCESS diff --git a/script/character/battle.gd b/script/character/battle.gd index 9cc9b77..9c12a67 100644 --- a/script/character/battle.gd +++ b/script/character/battle.gd @@ -15,8 +15,8 @@ func attack1() -> void: if not status.skill_cfg: return var attack_info: Struct.AttackInfo = Struct.AttackInfo.new() - attack_info.attack = status.skill_cfg.get_attack1() - attack_info.attack_box = status.skill_cfg.get_attack1_box() + attack_info.attack = status.skill_cfg.attack1 + attack_info.attack_box = status.skill_cfg.attack1_box attack_info.attack_dir = status.skill_dir attack_info.with_stop = status.skill_cfg.attack1_with_stop attack_info.ignore_push = status.skill_cfg.ignore_push @@ -27,8 +27,8 @@ func attack2() -> void: if not status.skill_cfg: return var attack_info: Struct.AttackInfo = Struct.AttackInfo.new() - attack_info.attack = status.skill_cfg.get_attack2() - attack_info.attack_box = status.skill_cfg.get_attack2_box() + attack_info.attack = status.skill_cfg.attack2 + attack_info.attack_box = status.skill_cfg.attack2_box attack_info.attack_dir = status.skill_dir attack_info.with_stop = status.skill_cfg.attack2_with_stop attack_info.ignore_push = status.skill_cfg.ignore_push @@ -37,21 +37,26 @@ func attack2() -> void: func character_attack1() -> void: var attack_info: Struct.AttackInfo = Struct.AttackInfo.new() - attack_info.attack = status.cfg.get_attack1() - attack_info.attack_box = status.cfg.get_attack1_box() + attack_info.attack = status.cfg.attack1 + attack_info.attack_box = status.cfg.attack1_box attack_info.attack_dir = status.move_dir add_attack(attack_info) func character_attack2() -> void: + print("character_attack2") var attack_info: Struct.AttackInfo = Struct.AttackInfo.new() - attack_info.attack = status.cfg.get_attack2() - attack_info.attack_box = status.cfg.get_attack2_box() + attack_info.attack = status.cfg.attack2 + attack_info.attack_box = status.cfg.attack2_box attack_info.attack_dir = status.move_dir add_attack(attack_info) func add_attack(attack_info: Struct.AttackInfo) -> void: + if not attack_info.attack or not attack_info.attack_box: + return + if character.has_buff("hit_ground_cd") and attack_info.attack == ResourceManager.cfg_attack_rebound: + return var result: Character if attack_info.attack_box.is_throw: var target: Character = Global.character_mgr.get_character(status.throw_target) @@ -76,6 +81,7 @@ func on_attack_character(result: Character, attack_info: Struct.AttackInfo) -> v func settle(from: int, to: int, attack_info: Struct.AttackInfo) -> Struct.HitResultInfo: + print("settle",from,to) var attack: AttackCfg = attack_info.attack var attack_dir: Vector2 = attack_info.attack_dir var with_stop: bool = attack_info.with_stop @@ -326,7 +332,7 @@ func settle(from: int, to: int, attack_info: Struct.AttackInfo) -> Struct.HitRes #卡帧 if not is_bullet: character_from.set_pause_time(pause_time) - character_to.set_pause_time(pause_time) + character_to.set_pause_time(pause_time) #全局特效 var has_global_effect: bool = character_from.is_player() or character_to.is_player() diff --git a/script/character/character.gd b/script/character/character.gd index c03b147..2d2ef5b 100644 --- a/script/character/character.gd +++ b/script/character/character.gd @@ -217,8 +217,8 @@ func set_effect_lock(value: bool): effect.set_effect_lock(value) -func set_target(target: int): - set_status("target", target) +func set_target(target_new: int): + set_status("target", target_new) set_status("is_lock", false) @@ -226,13 +226,13 @@ func set_is_lock(value: bool): set_status("is_lock", value) -func cast_particle(resource: Resource, is_attach: bool, offset: Vector3 = Vector3.ZERO, scale: Vector3 = Vector3.ONE): - effect.cast_particle(resource, is_attach, offset, scale) +func cast_particle(resource: Resource, is_attach: bool, offset: Vector3 = Vector3.ZERO, effect_scale: Vector3 = Vector3.ONE): + effect.cast_particle(resource, is_attach, offset, effect_scale) func get_character_owner() -> Character: - var owner: Character = Global.character_mgr.get_character(status.owner_id) as Character - if owner: return owner + var character_owner: Character = Global.character_mgr.get_character(status.owner_id) as Character + if character_owner: return character_owner return self diff --git a/script/character/move.gd b/script/character/move.gd index 9fd153d..6d6e21f 100644 --- a/script/character/move.gd +++ b/script/character/move.gd @@ -128,8 +128,9 @@ func update_move_check(delta) -> bool: normal = normal.normalized() var normal_speed: float = velocity.dot(normal) if status.is_stagger: - if normal_speed < -6 and normal.y >= 0: + if normal_speed < -6 and normal.y >= 0 and not buff.has_buff("hit_ground_cd"): #墙体互动 + buff.add_buff("hit_ground_cd", 0.1) Global.effect_mgr.cast_particle(ResourceManager.particle_hit_ground_heavy, character.pos(), normal) var velocity_new: Vector3 = velocity - normal * normal_speed * 2 var attack_dir: Vector2 = Vector2(velocity_new.x, velocity_new.z).normalized() diff --git a/script/character/skill.gd b/script/character/skill.gd index 2d4443e..5c6f5be 100644 --- a/script/character/skill.gd +++ b/script/character/skill.gd @@ -143,8 +143,6 @@ func cast_skill(cfg: SkillCfg, cast_dir: Vector2, action_key: String = ""): if cfg.is_charging: buff.add_buff("charging", -1) if cast_dir.x != 0: status.is_right = cast_dir.x > 0 - if cfg.with_stop: - move.stop() #预警特效 match cfg.warn_type: Enum.ESkillWarnType.Normal: character.cast_particle(ResourceManager.particle_warn_normal, true) @@ -229,7 +227,7 @@ func _frame_back(frame_offset: int) -> void: var frame: int = int(current_animation_position / Setting.animation_frame_rate) - frame_offset frame = max(0, frame) var frame_pos: float = frame * Setting.animation_frame_rate - seek(frame_pos- Setting.animation_frame_rate / 5, true, true) + seek(frame_pos + 0.01, true, true) func on_cast_sub_character() -> void: diff --git a/script/config/character_cfg.gd b/script/config/character_cfg.gd index 03bb9aa..d270ab2 100644 --- a/script/config/character_cfg.gd +++ b/script/config/character_cfg.gd @@ -32,16 +32,16 @@ class_name CharacterCfg var core_cfg_list: Array[CoreCfg] -func get_attack1()->AttackCfg: return attack1 if attack1 else ResourceManager.cfg_attack_normal +func get_attack1()->AttackCfg: return attack1 -func get_attack1_box()->AttackBoxCfg: return attack1_box if attack1_box else ResourceManager.cfg_attack_box_normal +func get_attack1_box()->AttackBoxCfg: return attack1_box -func get_attack2()->AttackCfg: return attack2 if attack2 else ResourceManager.cfg_attack_normal +func get_attack2()->AttackCfg: return attack2 -func get_attack2_box()->AttackBoxCfg: return attack2_box if attack2_box else ResourceManager.cfg_attack_box_normal +func get_attack2_box()->AttackBoxCfg: return attack2_box func get_particle()->Resource: diff --git a/script/config/skill_cfg.gd b/script/config/skill_cfg.gd index 62d6840..36ea99a 100644 --- a/script/config/skill_cfg.gd +++ b/script/config/skill_cfg.gd @@ -24,7 +24,6 @@ var refresh_animation: Callable = check_animation @export var mp_sub_cost: bool @export var free_lock: bool @export var ignore_push: bool -@export var with_stop: bool = false @export var is_lock_x: bool = true @export var is_lock_x_move: bool = false @export_group("辅助参数") @@ -58,16 +57,16 @@ func check_animation() -> bool: return true -func get_attack1()->AttackCfg: return attack1 if attack1 else ResourceManager.cfg_attack_normal +func get_attack1()->AttackCfg: return attack1 -func get_attack1_box()->AttackBoxCfg: return attack1_box if attack1_box else ResourceManager.cfg_attack_box_normal +func get_attack1_box()->AttackBoxCfg: return attack1_box -func get_attack2()->AttackCfg: return attack2 if attack2 else ResourceManager.cfg_attack_normal +func get_attack2()->AttackCfg: return attack2 -func get_attack2_box()->AttackBoxCfg: return attack2_box if attack2_box else ResourceManager.cfg_attack_box_normal +func get_attack2_box()->AttackBoxCfg: return attack2_box func get_attack_particle(index: int)->Resource: diff --git a/script/effect/effect_base.gd b/script/effect/effect_base.gd index cee4988..0771141 100644 --- a/script/effect/effect_base.gd +++ b/script/effect/effect_base.gd @@ -9,8 +9,14 @@ var rate: float func _ready(): - lifetime_now = lifetime on_ready() + for child in get_children(): + if child is EffectBase: + if child.lifetime > lifetime: + lifetime = child.lifetime + else: + continue + lifetime_now = lifetime func _process(delta) -> void: @@ -27,7 +33,12 @@ func _process(delta) -> void: func set_pause(is_pause_set: bool): is_pause = is_pause_set - on_set_pause(is_pause_set) + for child in get_children(): + if child is EffectBase: + child.set_pause(is_pause) + else: + continue + on_set_pause() func on_ready(): pass @@ -36,4 +47,4 @@ func on_ready(): pass func on_process(delta: float): pass -func on_set_pause(is_pause_set: bool): pass +func on_set_pause(): pass diff --git a/script/effect/particle.gd b/script/effect/particle.gd index a90031f..9657767 100644 --- a/script/effect/particle.gd +++ b/script/effect/particle.gd @@ -4,46 +4,25 @@ class_name Particle @export var is_billboard: bool @export var is_ground: bool -var sub_particle_list: Array[Particle] = [] -var particle_list: Array[GPUParticles3D] = [] -var speed_scale_list: Array[float] = [] -var decal_list: Array[ParticleDecal] = [] -var sub_emitter_list: Array[ParticleSubEmitter] = [] +var particle_list: Array[GPUParticles3D] = [] +var particle_speed_scale_list: Array[float] = [] func on_ready(): for child in get_children(): - if child is Particle: - sub_particle_list.append(child) - elif child is GPUParticles3D: + if child is GPUParticles3D: var particle: GPUParticles3D = child as GPUParticles3D particle_list.append(particle) - speed_scale_list.append(particle.speed_scale) + particle_speed_scale_list.append(particle.speed_scale) particle.restart() - elif child is ParticleDecal: - child.on_ready() - decal_list.append(child) - elif child is ParticleSubEmitter: - sub_emitter_list.append(child) else: continue - if child.lifetime > lifetime_now: - lifetime_now = child.lifetime + if child.lifetime > lifetime: + lifetime = child.lifetime - for particle: GPUParticles3D in particle_list: - if particle.lifetime > lifetime_now: - lifetime_now = particle.lifetime - -func on_process(delta: float): - for decal: ParticleDecal in decal_list: - decal.on_process(delta) - - -func on_set_pause(is_pause_set: bool): +func on_set_pause(): for i in range(len(particle_list)): var particle: GPUParticles3D = particle_list[i] - var speed_scale: float = speed_scale_list[i] + var speed_scale: float = particle_speed_scale_list[i] particle.speed_scale = 0 if is_pause else speed_scale - for sub_particle: Particle in sub_particle_list: - sub_particle.set_pause(is_pause_set) diff --git a/script/ui/hud/weapon_item.gd b/script/ui/hud/weapon_item.gd index a19dc8e..93ce96e 100644 --- a/script/ui/hud/weapon_item.gd +++ b/script/ui/hud/weapon_item.gd @@ -9,41 +9,32 @@ var weapon_list: Array var weapon_index: int var weapon_index_dir: int var weapon_index_rate: float -var hide_duration: float func _process(delta) -> void: - if not visible: - return if weapon_index_dir: item_lerp(weapon_index_dir, weapon_index_rate) - hide_duration = Setting.weapon_hide_duration return item_lerp(weapon_index_dir, 1) - hide_duration -= delta - if hide_duration <= 0: - for item in weapon_item_list: - remove_child(item) - weapon_item_list.clear() - visible = false -func on_weapon_list_changed(list: Array): weapon_list = list +func on_weapon_list_changed(list: Array): + weapon_list = list + init_weapon_item() -func on_weapon_index_changed(index: int): weapon_index = index +func on_weapon_index_changed(index: int): + weapon_index = index -func on_weapon_index_change_rate_changed(rate: float): weapon_index_rate = rate +func on_weapon_index_change_rate_changed(rate: float): + weapon_index_rate = rate func on_weapon_index_change_dir_changed(dir: int) -> void: weapon_index_dir = dir if not weapon_index_dir: return - if not visible: - visible = true - for i in range(5): append() else: if dir > 0: push_back() @@ -51,7 +42,6 @@ func on_weapon_index_change_dir_changed(dir: int) -> void: else: push_front() pop_back() - hide_duration = Setting.weapon_hide_duration func append(): weapon_item_list.append(create_weapon_item(len(weapon_item_list)-2+weapon_index_dir)) @@ -68,6 +58,11 @@ func pop_front(): remove_child(weapon_item_list.pop_front()) func pop_back(): remove_child(weapon_item_list.pop_back()) +func init_weapon_item(): + for item in weapon_item_list: + remove_child(item) + weapon_item_list.clear() + for i in range(5): append() func create_weapon_item(offset: int)->WeaponItemSub: var weapon_count: int = len(weapon_list)