diff --git a/config/attack/blunt_starfall_2.tres b/config/attack/blunt_starfall_2.tres index 607571b..e09f675 100644 --- a/config/attack/blunt_starfall_2.tres +++ b/config/attack/blunt_starfall_2.tres @@ -5,7 +5,7 @@ [resource] script = ExtResource("1_gadv7") damage_rate = 1.0 -break_level = 2 +break_level = 1 stun_attack = 10.0 damage_type = 1 is_floating = true diff --git a/config/attack_box/box_large.tres b/config/attack_box/box_large.tres index dc09f6e..056a25b 100644 --- a/config/attack_box/box_large.tres +++ b/config/attack_box/box_large.tres @@ -3,10 +3,10 @@ [ext_resource type="Script" path="res://script/config/attack_box_cfg.gd" id="1_661yg"] [sub_resource type="BoxShape3D" id="BoxShape3D_87jhu"] -size = Vector3(2, 2, 2) +size = Vector3(2, 0.8, 1) [resource] script = ExtResource("1_661yg") shape = SubResource("BoxShape3D_87jhu") -offset = Vector2(1, 1) +offset = Vector2(1, 0.4) is_throw = false diff --git a/config/attack_box/box_mid.tres b/config/attack_box/box_mid.tres index 2346ee7..ed0e352 100644 --- a/config/attack_box/box_mid.tres +++ b/config/attack_box/box_mid.tres @@ -3,10 +3,10 @@ [ext_resource type="Script" path="res://script/config/attack_box_cfg.gd" id="1_hxvsy"] [sub_resource type="BoxShape3D" id="BoxShape3D_87jhu"] -size = Vector3(1.6, 1.2, 1.2) +size = Vector3(1.6, 0.8, 0.8) [resource] script = ExtResource("1_hxvsy") shape = SubResource("BoxShape3D_87jhu") -offset = Vector2(0.8, 0.6) +offset = Vector2(0.8, 0.4) is_throw = false diff --git a/config/attack_box/box_normal.tres b/config/attack_box/box_normal.tres index 1085de0..3e5f506 100644 --- a/config/attack_box/box_normal.tres +++ b/config/attack_box/box_normal.tres @@ -3,10 +3,10 @@ [ext_resource type="Script" path="res://script/config/attack_box_cfg.gd" id="1_d4mqn"] [sub_resource type="BoxShape3D" id="BoxShape3D_87jhu"] -size = Vector3(1.6, 1.2, 1.2) +size = Vector3(1.2, 0.8, 0.6) [resource] script = ExtResource("1_d4mqn") shape = SubResource("BoxShape3D_87jhu") -offset = Vector2(0.8, 0.6) +offset = Vector2(0.6, 0.4) is_throw = false diff --git a/config/attack_box/box_small.tres b/config/attack_box/box_small.tres index 03924b7..cc9de6f 100644 --- a/config/attack_box/box_small.tres +++ b/config/attack_box/box_small.tres @@ -3,10 +3,10 @@ [ext_resource type="Script" path="res://script/config/attack_box_cfg.gd" id="1_gmrbh"] [sub_resource type="BoxShape3D" id="BoxShape3D_87jhu"] -size = Vector3(1.2, 0.8, 1) +size = Vector3(0.8, 0.8, 0.4) [resource] script = ExtResource("1_gmrbh") shape = SubResource("BoxShape3D_87jhu") -offset = Vector2(0.6, 0.4) +offset = Vector2(0.4, 0.4) is_throw = false diff --git a/config/attack_box/circle_foot.tres b/config/attack_box/circle_foot.tres new file mode 100644 index 0000000..bef169a --- /dev/null +++ b/config/attack_box/circle_foot.tres @@ -0,0 +1,13 @@ +[gd_resource type="Resource" script_class="AttackBoxCfg" load_steps=3 format=3 uid="uid://dq3pnbyfx4irr"] + +[ext_resource type="Script" path="res://script/config/attack_box_cfg.gd" id="1_utw7p"] + +[sub_resource type="CylinderShape3D" id="CylinderShape3D_pmh6g"] +height = 0.2 +radius = 0.25 + +[resource] +script = ExtResource("1_utw7p") +shape = SubResource("CylinderShape3D_pmh6g") +offset = Vector2(0, 0) +is_throw = false diff --git a/config/attack_box/circle_large.tres b/config/attack_box/circle_large.tres new file mode 100644 index 0000000..3401d9e --- /dev/null +++ b/config/attack_box/circle_large.tres @@ -0,0 +1,13 @@ +[gd_resource type="Resource" script_class="AttackBoxCfg" load_steps=3 format=3 uid="uid://hg1w2k1u3wn"] + +[ext_resource type="Script" path="res://script/config/attack_box_cfg.gd" id="1_aqwel"] + +[sub_resource type="CylinderShape3D" id="CylinderShape3D_pmh6g"] +height = 0.8 +radius = 1.0 + +[resource] +script = ExtResource("1_aqwel") +shape = SubResource("CylinderShape3D_pmh6g") +offset = Vector2(0, 0) +is_throw = false diff --git a/config/attack_box/circle_mid.tres b/config/attack_box/circle_mid.tres index ba0b55d..4579679 100644 --- a/config/attack_box/circle_mid.tres +++ b/config/attack_box/circle_mid.tres @@ -3,8 +3,8 @@ [ext_resource type="Script" path="res://script/config/attack_box_cfg.gd" id="1_w2uwt"] [sub_resource type="CylinderShape3D" id="CylinderShape3D_pmh6g"] -height = 1.0 -radius = 1.5 +height = 0.8 +radius = 0.6 [resource] script = ExtResource("1_w2uwt") diff --git a/config/attack_box/circle_normal.tres b/config/attack_box/circle_normal.tres index aca3a10..6556652 100644 --- a/config/attack_box/circle_normal.tres +++ b/config/attack_box/circle_normal.tres @@ -3,7 +3,8 @@ [ext_resource type="Script" path="res://script/config/attack_box_cfg.gd" id="1_8rhve"] [sub_resource type="CylinderShape3D" id="CylinderShape3D_pmh6g"] -height = 1.0 +height = 0.8 +radius = 0.25 [resource] script = ExtResource("1_8rhve") diff --git a/config/character_mp/normal.tres b/config/character_mp/normal.tres index 22db85a..b410078 100644 --- a/config/character_mp/normal.tres +++ b/config/character_mp/normal.tres @@ -6,7 +6,7 @@ script = ExtResource("1_sfq22") mp_max = 5 mp_sub_max = 100.0 -recover_speed = 50.0 +recover_speed = 20.0 recover_cd = 1.0 add_rate_attack = 0.0 add_rate_hit = 2.0 diff --git a/config/skill_core/monster03_slash01.tres b/config/skill_core/monster03_slash01.tres index 00fd3d7..7dac4bd 100644 --- a/config/skill_core/monster03_slash01.tres +++ b/config/skill_core/monster03_slash01.tres @@ -1,7 +1,7 @@ [gd_resource type="Resource" script_class="SkillCfg" load_steps=6 format=3 uid="uid://b62nw6qww2qxq"] [ext_resource type="Resource" uid="uid://bv4uoey1liqoq" path="res://config/attack/sharp_heavy_hit_blow.tres" id="1_idhfy"] -[ext_resource type="Resource" uid="uid://bnfnjdw0tms3h" path="res://config/attack_box/box_large.tres" id="2_k02dw"] +[ext_resource type="Resource" uid="uid://diedb7vw7eyxp" path="res://config/attack_box/box_mid.tres" id="2_rmdjw"] [ext_resource type="Script" path="res://script/config/skill_cfg.gd" id="3_qlpem"] [ext_resource type="Animation" uid="uid://dyyt3nsvoye62" path="res://resource/skill_animation/monster03_slash01.tres" id="4_xr54j"] [ext_resource type="SpriteFrames" uid="uid://bac4ype7w4wr7" path="res://resource/animation/character/monster03_skill.aseprite" id="5_30t6c"] @@ -14,7 +14,7 @@ range = 1.0 free_lock = false ignore_push = false attack1 = ExtResource("1_idhfy") -attack1_box = ExtResource("2_k02dw") +attack1_box = ExtResource("2_rmdjw") stance_from = 100 stance_to = 0 break_level = 3 diff --git a/config/skill_core/monster03_slash02.tres b/config/skill_core/monster03_slash02.tres index c17e443..a8447c5 100644 --- a/config/skill_core/monster03_slash02.tres +++ b/config/skill_core/monster03_slash02.tres @@ -2,7 +2,7 @@ [ext_resource type="Resource" uid="uid://btg40rn2f36c2" path="res://config/attack/sharp_normal_hit_back.tres" id="1_sp2tj"] [ext_resource type="Resource" uid="uid://bv4uoey1liqoq" path="res://config/attack/sharp_heavy_hit_blow.tres" id="1_txo8b"] -[ext_resource type="Resource" uid="uid://bnfnjdw0tms3h" path="res://config/attack_box/box_large.tres" id="2_8iiyr"] +[ext_resource type="Resource" uid="uid://bqejjllfy03h3" path="res://config/attack_box/box_normal.tres" id="2_6lahv"] [ext_resource type="Resource" uid="uid://diedb7vw7eyxp" path="res://config/attack_box/box_mid.tres" id="2_tp3t7"] [ext_resource type="Script" path="res://script/config/skill_cfg.gd" id="3_oagn5"] [ext_resource type="SpriteFrames" uid="uid://bac4ype7w4wr7" path="res://resource/animation/character/monster03_skill.aseprite" id="5_jfqys"] @@ -16,9 +16,9 @@ range = 2.0 free_lock = false ignore_push = true attack1 = ExtResource("1_sp2tj") -attack1_box = ExtResource("2_tp3t7") +attack1_box = ExtResource("2_6lahv") attack2 = ExtResource("1_txo8b") -attack2_box = ExtResource("2_8iiyr") +attack2_box = ExtResource("2_tp3t7") stance_from = 100 stance_to = 0 break_level = 3 diff --git a/config/skill_core/monster03_slash03.tres b/config/skill_core/monster03_slash03.tres index 7c5f078..a754ba6 100644 --- a/config/skill_core/monster03_slash03.tres +++ b/config/skill_core/monster03_slash03.tres @@ -1,7 +1,7 @@ [gd_resource type="Resource" script_class="SkillCfg" load_steps=6 format=3 uid="uid://1hson47yrtgq"] [ext_resource type="Resource" uid="uid://qmivx7ntfrki" path="res://config/attack/sharp_mid_hit.tres" id="1_iexxu"] -[ext_resource type="Resource" uid="uid://bnfnjdw0tms3h" path="res://config/attack_box/box_large.tres" id="2_p4b1w"] +[ext_resource type="Resource" uid="uid://hg1w2k1u3wn" path="res://config/attack_box/circle_large.tres" id="2_r82bc"] [ext_resource type="Script" path="res://script/config/skill_cfg.gd" id="3_n02wr"] [ext_resource type="Animation" uid="uid://co8bivpp1fm6g" path="res://resource/skill_animation/monster03_slash03.tres" id="4_cip05"] [ext_resource type="SpriteFrames" uid="uid://bac4ype7w4wr7" path="res://resource/animation/character/monster03_skill.aseprite" id="5_0ny0c"] @@ -14,7 +14,7 @@ range = 4.0 free_lock = false ignore_push = false attack1 = ExtResource("1_iexxu") -attack1_box = ExtResource("2_p4b1w") +attack1_box = ExtResource("2_r82bc") stance_from = 100 stance_to = 0 break_level = 3 diff --git a/config/skill_player_weapon/hero01_fist_air_attack02.tres b/config/skill_player_weapon/hero01_fist_air_attack02.tres index c011f86..00a6711 100644 --- a/config/skill_player_weapon/hero01_fist_air_attack02.tres +++ b/config/skill_player_weapon/hero01_fist_air_attack02.tres @@ -1,7 +1,7 @@ [gd_resource type="Resource" script_class="SkillWeaponCfg" load_steps=7 format=3 uid="uid://d1q7buaerirow"] [ext_resource type="Resource" uid="uid://dib6g7t6p5ac2" path="res://config/attack/blunt_normal_hit.tres" id="1_cut8n"] -[ext_resource type="Resource" uid="uid://bqejjllfy03h3" path="res://config/attack_box/box_normal.tres" id="2_bgip4"] +[ext_resource type="Resource" uid="uid://dja8jwx16njmf" path="res://config/attack_box/box_small.tres" id="2_8enki"] [ext_resource type="Script" path="res://script/config/skill_weapon_cfg.gd" id="3_agxba"] [ext_resource type="Animation" uid="uid://dia1xwl6foafg" path="res://resource/skill_animation/hero01_fist_air_attack02.tres" id="4_jbb00"] [ext_resource type="SpriteFrames" uid="uid://bhsotj76tuovy" path="res://resource/animation/character/hero01_fist_attack.aseprite" id="5_byipk"] @@ -17,10 +17,12 @@ range = 0.0 free_lock = false ignore_push = false attack1 = ExtResource("1_cut8n") -attack1_box = ExtResource("2_bgip4") +attack1_box = ExtResource("2_8enki") stance_from = 11 stance_to = 12 break_level = 3 +is_charging = false +mp_cost = 0 refresh_animation = false sprite_frames = ExtResource("5_byipk") animation_name = "fist_air_attack02" diff --git a/config/skill_player_weapon/hero01_fist_air_skill01.tres b/config/skill_player_weapon/hero01_fist_air_skill01.tres index e651b4c..4f7a477 100644 --- a/config/skill_player_weapon/hero01_fist_air_skill01.tres +++ b/config/skill_player_weapon/hero01_fist_air_skill01.tres @@ -1,7 +1,7 @@ [gd_resource type="Resource" script_class="SkillWeaponCfg" load_steps=8 format=3 uid="uid://dkxgra6y2u30l"] [ext_resource type="Resource" uid="uid://by6jd5xqjml2m" path="res://config/attack/blunt_starfall_1.tres" id="1_dfu42"] -[ext_resource type="Resource" uid="uid://57sukcw6ewqo" path="res://config/attack_box/circle_normal.tres" id="2_cvjvy"] +[ext_resource type="Resource" uid="uid://dq3pnbyfx4irr" path="res://config/attack_box/circle_foot.tres" id="2_doldq"] [ext_resource type="Script" path="res://script/config/skill_weapon_cfg.gd" id="2_mje6b"] [ext_resource type="Resource" uid="uid://d26ok8as50xe5" path="res://config/attack/blunt_starfall_2.tres" id="3_m2yio"] [ext_resource type="Animation" uid="uid://dxgqn5fa7aokj" path="res://resource/skill_animation/hero01_fist_air_skill01.tres" id="3_q461t"] @@ -18,7 +18,7 @@ range = 0.0 free_lock = false ignore_push = true attack1 = ExtResource("1_dfu42") -attack1_box = ExtResource("2_cvjvy") +attack1_box = ExtResource("2_doldq") attack2 = ExtResource("3_m2yio") attack2_box = ExtResource("4_lpsn0") stance_from = 10 diff --git a/config/skill_player_weapon/hero01_fist_attack01.tres b/config/skill_player_weapon/hero01_fist_attack01.tres index 847f885..ee93c8b 100644 --- a/config/skill_player_weapon/hero01_fist_attack01.tres +++ b/config/skill_player_weapon/hero01_fist_attack01.tres @@ -1,7 +1,7 @@ [gd_resource type="Resource" script_class="SkillWeaponCfg" load_steps=7 format=3 uid="uid://7e4fnj5sg72s"] [ext_resource type="Resource" uid="uid://dib6g7t6p5ac2" path="res://config/attack/blunt_normal_hit.tres" id="1_k0cmy"] -[ext_resource type="Resource" uid="uid://bqejjllfy03h3" path="res://config/attack_box/box_normal.tres" id="2_ixt4v"] +[ext_resource type="Resource" uid="uid://dja8jwx16njmf" path="res://config/attack_box/box_small.tres" id="2_erxj5"] [ext_resource type="Script" path="res://script/config/skill_weapon_cfg.gd" id="2_yc8jq"] [ext_resource type="Animation" uid="uid://t01a4jvp8srr" path="res://resource/skill_animation/hero01_fist_attack01.tres" id="3_b2pdb"] [ext_resource type="SpriteFrames" uid="uid://bhsotj76tuovy" path="res://resource/animation/character/hero01_fist_attack.aseprite" id="4_ymqrn"] @@ -17,10 +17,12 @@ range = 0.0 free_lock = false ignore_push = false attack1 = ExtResource("1_k0cmy") -attack1_box = ExtResource("2_ixt4v") +attack1_box = ExtResource("2_erxj5") stance_from = 0 stance_to = 1 break_level = 3 +is_charging = false +mp_cost = 0 refresh_animation = false sprite_frames = ExtResource("4_ymqrn") animation_name = "fist_attack01" diff --git a/config/skill_player_weapon/hero01_fist_attack03.tres b/config/skill_player_weapon/hero01_fist_attack03.tres index 7a80892..e462a1e 100644 --- a/config/skill_player_weapon/hero01_fist_attack03.tres +++ b/config/skill_player_weapon/hero01_fist_attack03.tres @@ -1,8 +1,8 @@ [gd_resource type="Resource" script_class="SkillWeaponCfg" load_steps=7 format=3 uid="uid://dekpkk8o6o8hk"] [ext_resource type="Resource" uid="uid://duu05cr8gk5v4" path="res://config/attack/blunt_mid_hit_blow.tres" id="1_am4eq"] +[ext_resource type="Resource" uid="uid://bqejjllfy03h3" path="res://config/attack_box/box_normal.tres" id="2_7j3rd"] [ext_resource type="Script" path="res://script/config/skill_weapon_cfg.gd" id="2_fde7v"] -[ext_resource type="Resource" uid="uid://diedb7vw7eyxp" path="res://config/attack_box/box_mid.tres" id="2_ja1d4"] [ext_resource type="Animation" uid="uid://c6mk8tfdpniys" path="res://resource/skill_animation/hero01_fist_attack03.tres" id="3_6rajt"] [ext_resource type="SpriteFrames" uid="uid://bhsotj76tuovy" path="res://resource/animation/character/hero01_fist_attack.aseprite" id="4_orcy6"] [ext_resource type="Resource" uid="uid://c6alg8pmqfdxm" path="res://config/weapon/fist.tres" id="5_r5lmk"] @@ -17,10 +17,12 @@ range = 0.0 free_lock = false ignore_push = false attack1 = ExtResource("1_am4eq") -attack1_box = ExtResource("2_ja1d4") +attack1_box = ExtResource("2_7j3rd") stance_from = 2 stance_to = 3 break_level = 3 +is_charging = false +mp_cost = 0 refresh_animation = false sprite_frames = ExtResource("4_orcy6") animation_name = "fist_attack03" diff --git a/config/skill_player_weapon/hero01_fist_attack04.tres b/config/skill_player_weapon/hero01_fist_attack04.tres index c069056..252cfbc 100644 --- a/config/skill_player_weapon/hero01_fist_attack04.tres +++ b/config/skill_player_weapon/hero01_fist_attack04.tres @@ -1,8 +1,8 @@ [gd_resource type="Resource" script_class="SkillWeaponCfg" load_steps=6 format=3 uid="uid://b4aysymwqtvtd"] [ext_resource type="Resource" uid="uid://duu05cr8gk5v4" path="res://config/attack/blunt_mid_hit_blow.tres" id="1_s12sc"] +[ext_resource type="Resource" uid="uid://bqejjllfy03h3" path="res://config/attack_box/box_normal.tres" id="2_ldfkh"] [ext_resource type="Script" path="res://script/config/skill_weapon_cfg.gd" id="2_mhuew"] -[ext_resource type="Resource" uid="uid://diedb7vw7eyxp" path="res://config/attack_box/box_mid.tres" id="2_ur730"] [ext_resource type="Animation" uid="uid://6u3dhxly760l" path="res://resource/skill_animation/hero01_fist_attack04.tres" id="3_bst70"] [ext_resource type="Resource" uid="uid://c6alg8pmqfdxm" path="res://config/weapon/fist.tres" id="5_gn3tt"] @@ -16,7 +16,7 @@ range = 0.0 free_lock = false ignore_push = false attack1 = ExtResource("1_s12sc") -attack1_box = ExtResource("2_ur730") +attack1_box = ExtResource("2_ldfkh") stance_from = 3 stance_to = 4 break_level = 3 diff --git a/config/skill_player_weapon/hero01_fist_attack05.tres b/config/skill_player_weapon/hero01_fist_attack05.tres index 484d677..b490dde 100644 --- a/config/skill_player_weapon/hero01_fist_attack05.tres +++ b/config/skill_player_weapon/hero01_fist_attack05.tres @@ -1,7 +1,7 @@ [gd_resource type="Resource" script_class="SkillWeaponCfg" load_steps=7 format=3 uid="uid://0n2jnkdrwa2l"] [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://diedb7vw7eyxp" path="res://config/attack_box/box_mid.tres" id="2_xua7v"] +[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="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"] @@ -17,10 +17,12 @@ range = 0.0 free_lock = false ignore_push = false attack1 = ExtResource("1_5lwhl") -attack1_box = ExtResource("2_xua7v") +attack1_box = ExtResource("2_g7bbg") stance_from = 4 stance_to = 5 break_level = 3 +is_charging = false +mp_cost = 0 refresh_animation = false sprite_frames = ExtResource("4_mhr07") animation_name = "fist_attack05" diff --git a/config/skill_player_weapon/hero01_fist_skill01.tres b/config/skill_player_weapon/hero01_fist_skill01.tres index 16fb88e..4b008ea 100644 --- a/config/skill_player_weapon/hero01_fist_skill01.tres +++ b/config/skill_player_weapon/hero01_fist_skill01.tres @@ -1,7 +1,7 @@ [gd_resource type="Resource" script_class="SkillWeaponCfg" load_steps=7 format=3 uid="uid://bw582o3eyj6b5"] [ext_resource type="Resource" uid="uid://fjjpp1wuesoq" path="res://config/attack/blunt_throw_check_hit.tres" id="1_8bqc0"] -[ext_resource type="Resource" uid="uid://bqejjllfy03h3" path="res://config/attack_box/box_normal.tres" id="2_owe8i"] +[ext_resource type="Resource" uid="uid://dja8jwx16njmf" path="res://config/attack_box/box_small.tres" id="2_gikwn"] [ext_resource type="Script" path="res://script/config/skill_weapon_cfg.gd" id="3_0nei0"] [ext_resource type="Animation" uid="uid://cj0lnanjp7xfo" path="res://resource/skill_animation/hero01_fist_skill01.tres" id="4_mq2ab"] [ext_resource type="SpriteFrames" uid="uid://cajgs8smbkjan" path="res://resource/animation/character/hero01_fist_skill01.aseprite" id="5_34tga"] @@ -17,10 +17,12 @@ range = 0.0 free_lock = false ignore_push = false attack1 = ExtResource("1_8bqc0") -attack1_box = ExtResource("2_owe8i") +attack1_box = ExtResource("2_gikwn") stance_from = 1 stance_to = 99 break_level = 3 +is_charging = false +mp_cost = 0 refresh_animation = false sprite_frames = ExtResource("5_34tga") animation_name = "" diff --git a/config/skill_player_weapon/hero01_long_attack04.tres b/config/skill_player_weapon/hero01_long_attack04.tres index e93936d..cc590c1 100644 --- a/config/skill_player_weapon/hero01_long_attack04.tres +++ b/config/skill_player_weapon/hero01_long_attack04.tres @@ -3,7 +3,7 @@ [ext_resource type="Resource" uid="uid://bv4uoey1liqoq" path="res://config/attack/sharp_heavy_hit_blow.tres" id="1_8ipjq"] [ext_resource type="Resource" uid="uid://c87w2x5qfqdns" path="res://config/attack/blunt_normal_hit_back.tres" id="1_44ai1"] [ext_resource type="Script" path="res://script/config/skill_weapon_cfg.gd" id="1_xsxbs"] -[ext_resource type="Resource" uid="uid://bqejjllfy03h3" path="res://config/attack_box/box_normal.tres" id="2_5jvmg"] +[ext_resource type="Resource" uid="uid://dja8jwx16njmf" path="res://config/attack_box/box_small.tres" id="2_bjopd"] [ext_resource type="Animation" uid="uid://dk1o3gqhjmuvh" path="res://resource/skill_animation/hero01_long_attack04.tres" id="2_sam6s"] [ext_resource type="SpriteFrames" uid="uid://ce83cuqwgwwi4" path="res://resource/animation/character/hero01_long_attack.aseprite" id="3_w7h1m"] [ext_resource type="Resource" uid="uid://bnfnjdw0tms3h" path="res://config/attack_box/box_large.tres" id="4_7j0pm"] @@ -19,12 +19,14 @@ range = 0.0 free_lock = false ignore_push = false attack1 = ExtResource("1_44ai1") -attack1_box = ExtResource("2_5jvmg") +attack1_box = ExtResource("2_bjopd") attack2 = ExtResource("1_8ipjq") attack2_box = ExtResource("4_7j0pm") stance_from = 3 stance_to = 4 break_level = 3 +is_charging = false +mp_cost = 0 refresh_animation = false sprite_frames = ExtResource("3_w7h1m") animation_name = "long_attack04" diff --git a/config/skill_player_weapon/hero01_long_skill01.tres b/config/skill_player_weapon/hero01_long_skill01.tres index 57ce363..5cb1f28 100644 --- a/config/skill_player_weapon/hero01_long_skill01.tres +++ b/config/skill_player_weapon/hero01_long_skill01.tres @@ -3,7 +3,7 @@ [ext_resource type="Resource" uid="uid://2bkub7vmxjeu" path="res://config/attack/sharp_mid_hit_blow.tres" id="1_blbi2"] [ext_resource type="Script" path="res://script/config/skill_weapon_cfg.gd" id="1_ud5ph"] [ext_resource type="Animation" uid="uid://bjnkrte7660pt" path="res://resource/skill_animation/hero01_long_skill01.tres" id="2_ewts2"] -[ext_resource type="Resource" uid="uid://decgfcx2xsj8i" path="res://config/attack_box/circle_mid.tres" id="2_uxcyk"] +[ext_resource type="Resource" uid="uid://hg1w2k1u3wn" path="res://config/attack_box/circle_large.tres" id="2_fayd5"] [ext_resource type="SpriteFrames" uid="uid://dhfqj1dxldqao" path="res://resource/animation/character/hero01_long_skill01.aseprite" id="3_qwjfl"] [ext_resource type="Resource" uid="uid://cy3wwalxeyro0" path="res://config/weapon/long.tres" id="4_3bf64"] @@ -17,10 +17,12 @@ range = 0.0 free_lock = false ignore_push = false attack1 = ExtResource("1_blbi2") -attack1_box = ExtResource("2_uxcyk") +attack1_box = ExtResource("2_fayd5") stance_from = 1 stance_to = 2 break_level = 3 +is_charging = false +mp_cost = 0 refresh_animation = false sprite_frames = ExtResource("3_qwjfl") animation_name = "long_skill01" diff --git a/resource/animation/character/hero01_move.aseprite b/resource/animation/character/hero01_move.aseprite index 8d4ea90..4d1a42e 100644 Binary files a/resource/animation/character/hero01_move.aseprite and b/resource/animation/character/hero01_move.aseprite differ diff --git a/resource/animation/character/hero01_move.png b/resource/animation/character/hero01_move.png index 8f867f1..6f6a171 100644 Binary files a/resource/animation/character/hero01_move.png and b/resource/animation/character/hero01_move.png differ diff --git a/resource/skill_animation/monster03_slash02.tres b/resource/skill_animation/monster03_slash02.tres index 1351df5..e894d47 100644 --- a/resource/skill_animation/monster03_slash02.tres +++ b/resource/skill_animation/monster03_slash02.tres @@ -52,7 +52,7 @@ tracks/3/keys = { "times": PackedFloat32Array(0.1, 0.8, 1.1, 1.3, 1.6, 1.8), "transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1), "update": 1, -"values": [-0.5, -1.0, -0.5, -1.0, -0.5, -1.0] +"values": [-0.5, -1.0, -0.8, -1.0, -0.8, -1.0] } tracks/4/type = "value" tracks/4/imported = false @@ -64,7 +64,7 @@ tracks/4/keys = { "times": PackedFloat32Array(0.7, 0.9, 1.2, 1.4, 1.7, 1.9), "transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1), "update": 1, -"values": [3.0, 0.0, 2.0, 0.0, 3.0, 0.0] +"values": [1.0, 0.0, 2.0, 0.0, 3.0, 0.0] } tracks/5/type = "method" tracks/5/imported = false diff --git a/resource/ui/hud/break_level.png b/resource/ui/hud/break_level.png new file mode 100644 index 0000000..d748b70 Binary files /dev/null and b/resource/ui/hud/break_level.png differ diff --git a/resource/ui/hud/break_level.png.import b/resource/ui/hud/break_level.png.import new file mode 100644 index 0000000..6a5f752 --- /dev/null +++ b/resource/ui/hud/break_level.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dqqd56qoquts7" +path="res://.godot/imported/break_level.png-6c1bb817b614823045841c5fbd1a01d4.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://resource/ui/hud/break_level.png" +dest_files=["res://.godot/imported/break_level.png-6c1bb817b614823045841c5fbd1a01d4.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=0 +compress/normal_map=2 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=false +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=0 diff --git a/scene/ai/bullet01.tscn b/scene/ai/bullet01.tscn index ab85eee..7091e83 100644 --- a/scene/ai/bullet01.tscn +++ b/scene/ai/bullet01.tscn @@ -14,7 +14,7 @@ [node name="BeehaveTree" type="Node" node_paths=PackedStringArray("blackboard")] script = ExtResource("1_r673b") -blackboard = NodePath("@Node@76945") +blackboard = NodePath("@Node@19487") [node name="SelectorComposite" type="Node" parent="."] script = ExtResource("2_5ltau") diff --git a/scene/ai/monster01.tscn b/scene/ai/monster01.tscn index 7eb4c19..e98c12f 100644 --- a/scene/ai/monster01.tscn +++ b/scene/ai/monster01.tscn @@ -7,7 +7,7 @@ [node name="BeehaveTree" type="Node" node_paths=PackedStringArray("blackboard")] script = ExtResource("1_bbyao") -blackboard = NodePath("@Node@77274") +blackboard = NodePath("@Node@19488") [node name="SequenceComposite" type="Node" parent="."] script = ExtResource("2_04nig") diff --git a/scene/ai/monster03.tscn b/scene/ai/monster03.tscn index 753816a..b9783af 100644 --- a/scene/ai/monster03.tscn +++ b/scene/ai/monster03.tscn @@ -11,7 +11,7 @@ [node name="BeehaveTree" type="Node" node_paths=PackedStringArray("blackboard")] script = ExtResource("1_tkdjh") -blackboard = NodePath("@Node@81414") +blackboard = NodePath("@Node@19489") [node name="SequenceComposite" type="Node" parent="."] script = ExtResource("2_mxprp") diff --git a/scene/launcher.tscn b/scene/launcher.tscn index bf7fd96..32cdfbf 100644 --- a/scene/launcher.tscn +++ b/scene/launcher.tscn @@ -19,7 +19,7 @@ [ext_resource type="Script" path="res://script/manager/ai_manager.gd" id="11_fm4d1"] [ext_resource type="Script" path="res://script/manager/input_manager.gd" id="12_vfqm4"] [ext_resource type="Script" path="res://script/character/status.gd" id="18_nr8sb"] -[ext_resource type="SpriteFrames" uid="uid://bac4ype7w4wr7" path="res://resource/animation/character/monster03_skill.aseprite" id="19_6w5yx"] +[ext_resource type="SpriteFrames" uid="uid://ce83cuqwgwwi4" path="res://resource/animation/character/hero01_long_attack.aseprite" id="20_0ashe"] [ext_resource type="SpriteFrames" uid="uid://2cb8lknel0ih" path="res://resource/animation/character/basic_move.aseprite" id="20_4ni1a"] [ext_resource type="AnimationLibrary" uid="uid://croik07a1qko5" path="res://resource/skill_animation_library/animation_library.tres" id="22_qyapv"] [ext_resource type="Script" path="res://script/character/skill.gd" id="23_783eu"] @@ -207,7 +207,7 @@ script = ExtResource("5_n3qhi") unique_name_in_owner = true script = ExtResource("18_nr8sb") speed_up_rate = -1.0 -skill_float_speed = 0.1 +skill_move_speed = 2.0 [node name="View" type="AnimatedSprite3D" parent="EditorTool/Character"] unique_name_in_owner = true @@ -219,13 +219,12 @@ pixel_size = 0.02 double_sided = false alpha_cut = 2 texture_filter = 0 -sprite_frames = ExtResource("19_6w5yx") -animation = &"skill02" -frame = 28 +sprite_frames = ExtResource("20_0ashe") +animation = &"long_attack01" [node name="Throw" type="AnimatedSprite3D" parent="EditorTool/Character"] unique_name_in_owner = true -transform = Transform3D(1, 0, 0, 0, 1, -1.50996e-07, 0, 1.50996e-07, 1, 0, 0, 0) +transform = Transform3D(1, 0, 0, 0, -1, 1.50996e-07, 0, -1.50996e-07, -1, 0, 0, 0) pixel_size = 0.02 sprite_frames = ExtResource("20_4ni1a") animation = &"idle_loop" diff --git a/scene/ui/item/headbar.tscn b/scene/ui/item/headbar.tscn index 4b72f9c..164aed1 100644 --- a/scene/ui/item/headbar.tscn +++ b/scene/ui/item/headbar.tscn @@ -1,8 +1,9 @@ -[gd_scene load_steps=4 format=3 uid="uid://dy0u26ba7dle"] +[gd_scene load_steps=5 format=3 uid="uid://dy0u26ba7dle"] [ext_resource type="Script" path="res://script/ui/hud/headbar.gd" id="1_k0rtd"] [ext_resource type="Texture2D" uid="uid://cwhu1ec03t3c8" path="res://resource/ui/hud/headbar_hp_empty.png" id="2_g5t31"] [ext_resource type="Texture2D" uid="uid://b4ly1exl0owck" path="res://resource/ui/hud/headbar_hp.png" id="3_vh1p5"] +[ext_resource type="Texture2D" uid="uid://dqqd56qoquts7" path="res://resource/ui/hud/break_level.png" id="4_wo8oo"] [node name="HeadBar" type="Control"] layout_mode = 3 @@ -55,7 +56,20 @@ texture_under = ExtResource("2_g5t31") texture_progress = ExtResource("3_vh1p5") tint_progress = Color(0, 1, 1, 1) -[node name="StunBar" type="TextureProgressBar" parent="."] +[node name="BreakLevel" type="Sprite2D" parent="."] +unique_name_in_owner = true +position = Vector2(-21, 0) +texture = ExtResource("4_wo8oo") +hframes = 3 +vframes = 3 + +[node name="DebugInfo" type="Control" parent="."] +unique_name_in_owner = true +anchors_preset = 0 +offset_right = 40.0 +offset_bottom = 40.0 + +[node name="StunBar" type="TextureProgressBar" parent="DebugInfo"] unique_name_in_owner = true layout_mode = 1 anchors_preset = 8 @@ -63,10 +77,10 @@ anchor_left = 0.5 anchor_top = 0.5 anchor_right = 0.5 anchor_bottom = 0.5 -offset_left = 24.0 -offset_top = 8.0 -offset_right = 56.0 -offset_bottom = 12.0 +offset_left = 4.0 +offset_top = -12.0 +offset_right = 36.0 +offset_bottom = -8.0 grow_horizontal = 2 grow_vertical = 2 value = 50.0 @@ -78,7 +92,7 @@ texture_under = ExtResource("2_g5t31") texture_progress = ExtResource("3_vh1p5") tint_progress = Color(0.866667, 0.933333, 0.105882, 1) -[node name="MpSubBar" type="TextureProgressBar" parent="."] +[node name="MpSubBar" type="TextureProgressBar" parent="DebugInfo"] unique_name_in_owner = true layout_mode = 1 anchors_preset = 8 @@ -86,10 +100,9 @@ anchor_left = 0.5 anchor_top = 0.5 anchor_right = 0.5 anchor_bottom = 0.5 -offset_left = 24.0 -offset_top = 16.0 -offset_right = 56.0 -offset_bottom = 20.0 +offset_left = 4.0 +offset_top = -4.0 +offset_right = 36.0 grow_horizontal = 2 grow_vertical = 2 value = 50.0 @@ -100,7 +113,7 @@ stretch_margin_bottom = 10 texture_under = ExtResource("2_g5t31") texture_progress = ExtResource("3_vh1p5") -[node name="MpBar" type="TextureProgressBar" parent="."] +[node name="MpBar" type="TextureProgressBar" parent="DebugInfo"] unique_name_in_owner = true layout_mode = 1 anchors_preset = 8 @@ -108,10 +121,10 @@ anchor_left = 0.5 anchor_top = 0.5 anchor_right = 0.5 anchor_bottom = 0.5 -offset_left = 24.0 -offset_top = 12.0 -offset_right = 56.0 -offset_bottom = 16.0 +offset_left = 4.0 +offset_top = -8.0 +offset_right = 36.0 +offset_bottom = -4.0 grow_horizontal = 2 grow_vertical = 2 value = 50.0 @@ -123,7 +136,7 @@ texture_under = ExtResource("2_g5t31") texture_progress = ExtResource("3_vh1p5") tint_progress = Color(0.0941176, 1, 0.992157, 1) -[node name="PosLabel" type="Label" parent="."] +[node name="PosLabel" type="Label" parent="DebugInfo"] unique_name_in_owner = true layout_mode = 0 offset_left = 24.0 @@ -133,7 +146,7 @@ offset_bottom = 6.0 theme_override_font_sizes/font_size = 10 text = "123,123" -[node name="RoleLabel" type="Label" parent="."] +[node name="RoleLabel" type="Label" parent="DebugInfo"] unique_name_in_owner = true layout_mode = 0 offset_left = 24.0 diff --git a/script/character/battle.gd b/script/character/battle.gd index 008c6c4..e5b9af0 100644 --- a/script/character/battle.gd +++ b/script/character/battle.gd @@ -115,11 +115,23 @@ func add_attack(from: int, to: int, dir: Vector2, attack: AttackCfg) -> HitResul var pause_time: float = attack.pause_time var is_remote: bool = character_from != character_from.get_character_owner() - #造成伤害 + #基本伤害 var damage: float = attack.damage_rate * cfg_from.attack + + #硬直等级 + var break_level_def: int = cfg_to.shield.break_level_on if has_shield else cfg_to.shield.break_level_off + break_level_def += character_to.get_status("skill_break_level_add") + var break_level_sub: int = clampi(attack.break_level - break_level_def, 0, 3) + is_break_skill = break_level_sub > 0 + if break_level_sub < 0: + damage = 0 + elif break_level_sub == 0: + damage *= 0.5 + + #造成伤害 if has_shield: damage = min(shield, damage) - character_to.set_status("shield", shield-damage) + character_to.set_shield(shield-damage) is_break_shield = damage == shield if is_break_shield: character_to.remove_buff("shield_recover_cd") @@ -159,7 +171,7 @@ func add_attack(from: int, to: int, dir: Vector2, attack: AttackCfg) -> HitResul character_to.add_mp_sub(damage * cfg_to.mp.add_rate_hit, true) #投技检测 - if attack.is_throw_check and not character_to.get_status("is_be_throw") and status.throw_target == 0: + if is_break_skill and attack.is_throw_check and not character_to.get_status("is_be_throw") and status.throw_target == 0: character_to.set_status("is_be_throw", true) status.throw_target = character_to.id() @@ -168,10 +180,6 @@ func add_attack(from: int, to: int, dir: Vector2, attack: AttackCfg) -> HitResul character_to.set_status("is_be_throw", false) status.throw_target = 0 - #硬直等级 - var break_level_def: int = cfg_to.shield.break_level_on if has_shield else cfg_to.shield.break_level_off - var break_level_sub: int = clampi(attack.break_level - break_level_def, 0, 3) - is_break_skill = break_level_sub > 0 if is_break_skill: #取消技能 if character_to.get_status("is_skill_running"): @@ -317,7 +325,7 @@ func hold(): skill.on_hold() func stop(): move.stop() -func change_dir(): +func change_dir(): status.skill_dir = status.move_dir status.is_right = status.move_dir.x > 0 diff --git a/script/character/buff.gd b/script/character/buff.gd index 6741816..afabd82 100644 --- a/script/character/buff.gd +++ b/script/character/buff.gd @@ -139,7 +139,7 @@ func on_update_shield_recover(rate)->void: shield_add = min(status.shield_max - status.shield, shield_add) if shield_add == status.shield_max - status.shield: remove_buff("shield_recover") - character.set_status("shield", status.shield+shield_add) + character.set_shield( status.shield+shield_add) func on_end_mp_recover_cd(rate)->void: add_buff("mp_recover", -1) diff --git a/script/character/character.gd b/script/character/character.gd index 7d00c84..71a6da9 100644 --- a/script/character/character.gd +++ b/script/character/character.gd @@ -127,12 +127,16 @@ func get_status(status_name: String) -> Variant: return status.get_status(status func set_status(status_name: String, value): status.set_status(status_name, value) +func set_shield(value: float): + status.set_shield(value) + + func set_pos(pos: Vector3): position = pos SignalManager.character_pos_changed.emit(id(), pos()) -func move_to(dir: Vector2): set_status("move_dir", dir) +func move_to(dir: Vector2): set_status("move_dir", dir.normalized()) func move_stop(): diff --git a/script/character/skill.gd b/script/character/skill.gd index a841376..be48326 100644 --- a/script/character/skill.gd +++ b/script/character/skill.gd @@ -74,6 +74,7 @@ func cast_skill(cfg: SkillCfg, cast_dir: Vector2, action_key: String = "") -> bo status.stance = cfg.stance_to status.is_charging = cfg.is_charging status.skill_action_key = action_key + status.set_skill_break_level_add(cfg.mp_cost) #todo character.set_body_scale(cfg.get_owner()) if cfg.is_charging: buff.add_buff("charging", -1) @@ -98,6 +99,7 @@ func break_skill(): status.is_charging = false status.charging_level = 0 status.skill_action_key = "" + status.set_skill_break_level_add(0) buff.remove_buff("charging") if status.throw_target != 0: var character_to: Character = Global.character_mgr.get_character(status.throw_target) @@ -115,6 +117,7 @@ func cancel_skill(): func on_attack_miss(): # 攻击未命中时跳帧 _frame_forward() + status.set_skill_break_level_add(-1)#todo func on_hold() -> void: diff --git a/script/character/status.gd b/script/character/status.gd index ac01d10..08c94e7 100644 --- a/script/character/status.gd +++ b/script/character/status.gd @@ -23,6 +23,7 @@ class_name Status @export var is_dead: bool #是否死亡 @export var target: int #目标角色 @export var throw_target: int #投技目标 +@export var break_level_def: int #硬直抗性等级 @export_category("表现状态") @export var basic_offset: Vector3 #基本偏移值 @export var shake_offset: Vector3 #抖动偏移值 @@ -65,6 +66,7 @@ class_name Status @export var skill_move_stop: bool #技能位移速度是否停止生效 @export var skill_float_speed: float #技能y位移速度 @export var skill_action_key: String #技能输入指令 +@export var skill_break_level_add: int #技能额外打断等级 @export_category("玩家技能状态") @export var input_dir: Vector2 #指令方向 @export var stance: Enum.EStance #技能姿态 @@ -101,4 +103,21 @@ func set_status(status_name: String, value: Variant): func emit_status(status_name: String): SignalManager.character_status_changed.emit(id, status_name, get_status(status_name)) - + + +func set_shield(value: float): + shield = value + refresh_break_level_def() + emit_status("shield") + + +func set_skill_break_level_add(value: int): + skill_break_level_add = value + refresh_break_level_def() + emit_status("skill_break_level_add") + + +func refresh_break_level_def(): + break_level_def = cfg.shield.break_level_on if shield>0 else cfg.shield.break_level_off + break_level_def += skill_break_level_add + emit_status("break_level_def") diff --git a/script/ui/hud/headbar.gd b/script/ui/hud/headbar.gd index ecfd8d2..4bb67dd 100644 --- a/script/ui/hud/headbar.gd +++ b/script/ui/hud/headbar.gd @@ -4,12 +4,19 @@ class_name Headbar @onready var hit_text_scene: PackedScene = preload("res://scene/ui/item/hit_text.tscn") @onready var hp_bar: TextureProgressBar = (%HpBar as TextureProgressBar) @onready var shield_bar: TextureProgressBar = (%ShieldBar as TextureProgressBar) +@onready var break_level: Sprite2D = (%BreakLevel as Sprite2D) +#debug info @onready var stun_bar: TextureProgressBar = (%StunBar as TextureProgressBar) @onready var mp_bar: TextureProgressBar = (%MpBar as TextureProgressBar) @onready var mp_sub_bar: TextureProgressBar = (%MpSubBar as TextureProgressBar) @onready var pos_lable: Label = (%PosLabel as Label) @onready var role_lable: Label = (%RoleLabel as Label) + +func set_debug_info_show(is_show: bool) -> void: + var debug_info: Control = (%DebugInfo as Control) + debug_info.visible = is_show + var hit_text_damage_cache: HitText @@ -27,6 +34,10 @@ func on_shield_changed(value): func on_shield_max_changed(value): shield_bar.max_value = value +func on_break_level_def_changed(value): + break_level.frame = clamp(value + 4, 0, 8) + + func on_stun_changed(value): stun_bar.value = value diff --git a/script/ui/hud/headbar_page.gd b/script/ui/hud/headbar_page.gd index dd31c3b..c82fc54 100644 --- a/script/ui/hud/headbar_page.gd +++ b/script/ui/hud/headbar_page.gd @@ -30,11 +30,12 @@ func _process(delta): func on_character_create(id: int, type: int, pos: Vector3) -> void: if type != Enum.ECharacterType.Monster: return - var new_headbar_meta = HeadbarMeta.new() + var new_headbar_meta = HeadbarMeta.new() + var new_headbar: Headbar = headbar_scene.instantiate() as Headbar new_headbar_meta.pos = pos - var new_headbar = headbar_scene.instantiate() - add_child(new_headbar) new_headbar_meta.headbar = new_headbar + new_headbar.set_debug_info_show(get_tree().debug_collisions_hint) + add_child(new_headbar) on_character_ui_pos_changed(id, pos) headbar_map[id] = new_headbar_meta