Update ESS to the latest to get CharacterSkeleton3D's attach point rework.

This commit is contained in:
Relintai 2020-06-16 13:40:16 +02:00
parent 2d46c1bb10
commit 3f132e4828
5 changed files with 43 additions and 37 deletions

2
HEADS
View File

@ -1 +1 @@
{"engine": {"3.2": "2e8480d56afcd7ddbcb38b225158f25102a46832", "master": "8c73e813134001e575b6f59e3b0100471c007410"}, "world_generator": {"master": "97f10512f8832394389e1109154b8af34a2ef2c6"}, "entity_spell_system": {"master": "022775d9166936fa2468a6d0c90052373c76e236"}, "ui_extensions": {"master": "6fe4f69fea8d71043b08d959b8085404c9c4fe47"}, "voxelman": {"master": "cdc918a5b89a226bad0510f270ddc0d06097f07e"}, "texture_packer": {"master": "e3047f7dfab861767c5295ea93d2f1404e8de66e"}, "fastnoise": {"master": "d0e3f1c759332cf0d9a5d7e0e71d0b0278310651"}, "mesh_data_resource": {"master": "3cc9f15f05be53380e20763efc0be753b621b8a2"}, "procedural_animations": {"master": "fb01ca303dd733217fa59cbee391cbde439db35b"}, "ess_data": {"master": "3bd637fdd3304b64a18287a49a6b7387acf2f5de"}, "props": {"master": "b2bcb5ea6469b19298cd849c1232ddb5ad26f71c"}, "mesh_utils": {"master": "e540e84f9b9505cbba14d1abcd7777ea0b9963e6"}, "broken_seals_module": {"master": "14c239fd8716988b837c2fcfe20fe7d9f11dd515"}, "thread_pool": {"master": "c2aa3018961655165d31aa4586bf1c2a76ed57c1"}} {"engine": {"3.2": "893cf84278b0354af44849aae58e06c576ed36ab", "master": "8c73e813134001e575b6f59e3b0100471c007410"}, "world_generator": {"master": "97f10512f8832394389e1109154b8af34a2ef2c6"}, "entity_spell_system": {"master": "68a674da8c6f512b05bc8e0f620e28a3ac5ed504"}, "ui_extensions": {"master": "6fe4f69fea8d71043b08d959b8085404c9c4fe47"}, "voxelman": {"master": "cdc918a5b89a226bad0510f270ddc0d06097f07e"}, "texture_packer": {"master": "e3047f7dfab861767c5295ea93d2f1404e8de66e"}, "fastnoise": {"master": "d0e3f1c759332cf0d9a5d7e0e71d0b0278310651"}, "mesh_data_resource": {"master": "3cc9f15f05be53380e20763efc0be753b621b8a2"}, "procedural_animations": {"master": "fb01ca303dd733217fa59cbee391cbde439db35b"}, "ess_data": {"master": "3bd637fdd3304b64a18287a49a6b7387acf2f5de"}, "props": {"master": "b2bcb5ea6469b19298cd849c1232ddb5ad26f71c"}, "mesh_utils": {"master": "e540e84f9b9505cbba14d1abcd7777ea0b9963e6"}, "broken_seals_module": {"master": "14c239fd8716988b837c2fcfe20fe7d9f11dd515"}, "thread_pool": {"master": "c2aa3018961655165d31aa4586bf1c2a76ed57c1"}}

View File

@ -123,25 +123,28 @@ graph_offset = Vector2( -567.129, -394.651 )
[sub_resource type="AnimationNodeStateMachinePlayback" id=28] [sub_resource type="AnimationNodeStateMachinePlayback" id=28]
[node name="character" type="CharacterSkeleton3D"] [node name="character" type="CharacterSkeleton3D"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.00126277, 0, -0.000325084 ) entity_type = 1
model_dirty = true model_dirty = true
animation_player_path = NodePath("armature/AnimationPlayer") animation_player_path = NodePath("armature/AnimationPlayer")
animation_tree_path = NodePath("AnimationTree") animation_tree_path = NodePath("AnimationTree")
attach_point_paths/0_left_hand = NodePath("armature/Armature/Skeleton/LeftHandAttachment/LeftHandAP")
attach_point_paths/1_right_hand = NodePath("armature/Armature/Skeleton/RightHandAttachment/RightHandAP")
attach_point_paths/2_torso = NodePath("armature/Armature/Skeleton/NeckAttachment/TorsoAP")
attach_point_paths/3_root = NodePath("armature/Armature/Skeleton/RootAttachment/RootAP")
attach_point_paths/4_right_hip = NodePath("armature/Armature/Skeleton/RightHipAttachment/Spatial")
attach_point_paths/5_left_hip = NodePath("")
attach_point_paths/6_spine_2 = NodePath("armature/Armature/Skeleton/BoneAttachment/Spine2AP")
script = ExtResource( 8 ) script = ExtResource( 8 )
automatic_build = true automatic_build = true
mesh_instance_path = NodePath("armature/Armature/Skeleton/MeshInstance") mesh_instance_path = NodePath("armature/Armature/Skeleton/MeshInstance")
skeleton_path = NodePath("armature/Armature/Skeleton") skeleton_path = NodePath("armature/Armature/Skeleton")
materials = [ ExtResource( 3 ), ExtResource( 3 ), ExtResource( 7 ) ] materials = [ ExtResource( 3 ), ExtResource( 3 ), ExtResource( 7 ) ]
left_hand_attach_point_path = NodePath("armature/Armature/Skeleton/LeftHandAttachment/LeftHandAP")
right_hand_attach_point_path = NodePath("armature/Armature/Skeleton/RightHandAttachment/RightHandAP")
torso_attach_point_path = NodePath("armature/Armature/Skeleton/NeckAttachment/TorsoAP")
root_attach_point_path = NodePath("armature/Armature/Skeleton/RootAttachment/RootAP")
viss = [ ExtResource( 1 ) ] viss = [ ExtResource( 1 ) ]
[node name="armature" parent="." instance=ExtResource( 6 )] [node name="armature" parent="." instance=ExtResource( 6 )]
[node name="Skeleton" parent="armature/Armature" index="0"] [node name="Skeleton" parent="armature/Armature" index="0"]
transform = Transform( 1, -3.11065e-18, 4.60995e-26, 3.11065e-18, 1, 5.33895e-43, -4.60995e-26, -3.90962e-43, 1, 0, -6.02229e-16, 0 ) transform = Transform( 1, -2.45436e-18, 2.70992e-26, 2.45436e-18, 1, 4.87652e-43, -2.70992e-26, -4.2039e-43, 1, 0, -7.08191e-16, 0 )
bones/0/bound_children = [ NodePath("RootAttachment") ] bones/0/bound_children = [ NodePath("RootAttachment") ]
bones/1/bound_children = [ NodePath("RightHipAttachment") ] bones/1/bound_children = [ NodePath("RightHipAttachment") ]
bones/10/bound_children = [ NodePath("BoneAttachment") ] bones/10/bound_children = [ NodePath("BoneAttachment") ]
@ -152,7 +155,7 @@ bones/24/bound_children = [ NodePath("RightHandAttachment") ]
[node name="MeshInstance" type="MeshInstance" parent="armature/Armature/Skeleton" index="0"] [node name="MeshInstance" type="MeshInstance" parent="armature/Armature/Skeleton" index="0"]
[node name="LeftHandAttachment" type="BoneAttachment" parent="armature/Armature/Skeleton" index="1"] [node name="LeftHandAttachment" type="BoneAttachment" parent="armature/Armature/Skeleton" index="1"]
transform = Transform( 0.102987, 0.118427, -0.987588, 0.0569165, -0.991907, -0.11299, -0.993048, -0.0445756, -0.108898, 0.229464, 0.769383, -0.00984082 ) transform = Transform( 0.10303, 0.117911, -0.987644, 0.0568446, -0.991968, -0.112476, -0.993047, -0.0445561, -0.108909, 0.22966, 0.76902, -0.00977726 )
bone_name = "left_hand" bone_name = "left_hand"
[node name="LeftHandAP" type="Spatial" parent="armature/Armature/Skeleton/LeftHandAttachment"] [node name="LeftHandAP" type="Spatial" parent="armature/Armature/Skeleton/LeftHandAttachment"]
@ -160,7 +163,7 @@ transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.04, -0.09 )
script = ExtResource( 2 ) script = ExtResource( 2 )
[node name="RightHandAttachment" type="BoneAttachment" parent="armature/Armature/Skeleton" index="2"] [node name="RightHandAttachment" type="BoneAttachment" parent="armature/Armature/Skeleton" index="2"]
transform = Transform( -0.0407421, -0.029358, -0.998714, -0.127057, -0.991235, 0.0343064, -0.991072, 0.128297, 0.0366658, -0.229627, 0.768894, -0.00684395 ) transform = Transform( -0.040853, -0.030264, -0.998682, -0.126988, -0.991209, 0.0352172, -0.991076, 0.128265, 0.0366622, -0.230199, 0.768953, -0.00691995 )
bone_name = "right_hand" bone_name = "right_hand"
[node name="RightHandAP" type="Spatial" parent="armature/Armature/Skeleton/RightHandAttachment"] [node name="RightHandAP" type="Spatial" parent="armature/Armature/Skeleton/RightHandAttachment"]
@ -176,7 +179,7 @@ transform = Transform( 1, 0, 0, 0, -1.62921e-07, 1, 0, -1, -1.62921e-07, 0, 0, 0
script = ExtResource( 2 ) script = ExtResource( 2 )
[node name="NeckAttachment" type="BoneAttachment" parent="armature/Armature/Skeleton" index="4"] [node name="NeckAttachment" type="BoneAttachment" parent="armature/Armature/Skeleton" index="4"]
transform = Transform( 0.999969, -0.0078202, -0.000732227, 0.00785113, 0.997217, 0.0731269, 0.000158323, -0.0731357, 0.997322, 0.0010987, 1.31599, 7.29295e-05 ) transform = Transform( 0.999967, -0.00808941, -0.000806057, 0.00812439, 0.997212, 0.073122, 0.000212305, -0.0731316, 0.997322, 0.00110909, 1.3156, 7.62992e-05 )
bone_name = "neck" bone_name = "neck"
[node name="TorsoAP" type="Spatial" parent="armature/Armature/Skeleton/NeckAttachment"] [node name="TorsoAP" type="Spatial" parent="armature/Armature/Skeleton/NeckAttachment"]
@ -184,7 +187,7 @@ transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.04, -0.09 )
script = ExtResource( 2 ) script = ExtResource( 2 )
[node name="RightHipAttachment" type="BoneAttachment" parent="armature/Armature/Skeleton" index="5"] [node name="RightHipAttachment" type="BoneAttachment" parent="armature/Armature/Skeleton" index="5"]
transform = Transform( 0.99969, 0.0248843, 1.18032e-08, -0.0248843, 0.99969, 4.71708e-07, -6.14104e-11, -4.71855e-07, 1, 0.00261466, 0.774483, 0 ) transform = Transform( 0.999719, 0.0237236, 1.12527e-08, -0.0237236, 0.999719, 4.71721e-07, -5.85487e-11, -4.71855e-07, 1, 0.00307471, 0.774089, 0 )
bone_name = "pelvis" bone_name = "pelvis"
[node name="Spatial" type="Spatial" parent="armature/Armature/Skeleton/RightHipAttachment"] [node name="Spatial" type="Spatial" parent="armature/Armature/Skeleton/RightHipAttachment"]
@ -197,13 +200,13 @@ material/0 = null
material/1 = null material/1 = null
[node name="BoneAttachment" type="BoneAttachment" parent="armature/Armature/Skeleton" index="6"] [node name="BoneAttachment" type="BoneAttachment" parent="armature/Armature/Skeleton" index="6"]
transform = Transform( 0.999967, -0.00812464, -3.21407e-05, 0.00812291, 0.999892, -0.00106342, 4.07692e-05, 0.00106339, 0.999999, 0.00262286, 1.12841, -0.000126548 ) transform = Transform( 0.999964, -0.00839859, -8.57934e-05, 0.00839617, 0.999886, -0.0010678, 9.47524e-05, 0.00106741, 0.999999, 0.00268464, 1.12802, -0.000123932 )
bone_name = "spine_2" bone_name = "spine_2"
[node name="Spatial" type="Spatial" parent="armature/Armature/Skeleton/BoneAttachment"] [node name="Spine2AP" type="Spatial" parent="armature/Armature/Skeleton/BoneAttachment"]
transform = Transform( -0.430811, -0.000122875, 0.129993, 8.54071e-05, -0.45, -0.000142502, 0.130026, -0.000112184, 0.430809, 0.000957399, -0.0715881, -0.0057677 ) transform = Transform( -0.430811, -0.000122875, 0.129993, 8.54071e-05, -0.45, -0.000142502, 0.130026, -0.000112184, 0.430809, 0.000957399, -0.0715881, -0.0057677 )
[node name="MeshInstance" type="MeshInstance" parent="armature/Armature/Skeleton/BoneAttachment/Spatial"] [node name="MeshInstance" type="MeshInstance" parent="armature/Armature/Skeleton/BoneAttachment/Spine2AP"]
transform = Transform( 0.914344, -0.295324, -0.277032, 0.283891, -0.0205529, 0.958773, -0.288935, -0.954992, 0.065061, -0.0775848, 0.00327253, -0.254833 ) transform = Transform( 0.914344, -0.295324, -0.277032, 0.283891, -0.0205529, 0.958773, -0.288935, -0.954992, 0.065061, -0.0775848, 0.00327253, -0.254833 )
mesh = ExtResource( 4 ) mesh = ExtResource( 4 )
material/0 = null material/0 = null

View File

@ -39,15 +39,6 @@ var skeleton : Skeleton
export(Array, Material) var materials : Array export(Array, Material) var materials : Array
var _materials : Array = Array() var _materials : Array = Array()
export (NodePath) var left_hand_attach_point_path : NodePath
var left_hand_attach_point : CharacterSkeketonAttachPoint
export (NodePath) var right_hand_attach_point_path : NodePath
var right_hand_attach_point : CharacterSkeketonAttachPoint
export (NodePath) var torso_attach_point_path : NodePath
var torso_attach_point : CharacterSkeketonAttachPoint
export (NodePath) var root_attach_point_path : NodePath
var root_attach_point : CharacterSkeketonAttachPoint
export(Array, ModelVisual) var viss : Array export(Array, ModelVisual) var viss : Array
var meshes : Array var meshes : Array
@ -110,11 +101,6 @@ func _enter_tree():
skeleton = get_node(skeleton_path) as Skeleton skeleton = get_node(skeleton_path) as Skeleton
mesh_instance = get_node(mesh_instance_path) as MeshInstance mesh_instance = get_node(mesh_instance_path) as MeshInstance
left_hand_attach_point = get_node(left_hand_attach_point_path) as CharacterSkeketonAttachPoint
right_hand_attach_point = get_node(right_hand_attach_point_path) as CharacterSkeketonAttachPoint
torso_attach_point = get_node(torso_attach_point_path) as CharacterSkeketonAttachPoint
root_attach_point = get_node(root_attach_point_path) as CharacterSkeketonAttachPoint
if _materials.size() != materials.size(): if _materials.size() != materials.size():
for m in materials: for m in materials:
_materials.append(m.duplicate()) _materials.append(m.duplicate())
@ -158,9 +144,9 @@ func build():
var data : Array = Array() var data : Array = Array()
for skele_point in range(EntityEnums.SKELETON_POINTS_MAX): for skele_point in range(ESS.skeletons_bones_index_get(entity_type).count(',') + 1):
var bone_name : String = get_bone_name(skele_point) var bone_name : String = get_bone_name(skele_point)
if bone_name == "": if bone_name == "":
print("Bone name error") print("Bone name error")
continue continue
@ -245,6 +231,22 @@ func get_bone_name(skele_point : int) -> String:
return "" return ""
func _common_attach_point_index_get(point):
if point == EntityEnums.COMMON_SKELETON_POINT_LEFT_HAND:
return 0
elif point == EntityEnums.COMMON_SKELETON_POINT_ROOT:
return 3
elif point == EntityEnums.COMMON_SKELETON_POINT_SPINE_2:
return 6
elif point == EntityEnums.COMMON_SKELETON_POINT_RIGHT_HAND:
return 1
elif point == EntityEnums.COMMON_SKELETON_POINT_BACK:
return 6
elif point == EntityEnums.COMMON_SKELETON_POINT_RIGHT_HIP:
return 4
return 3
func set_lod_level(level : int) -> void: func set_lod_level(level : int) -> void:
if _current_lod_level == level: if _current_lod_level == level:
return return

View File

@ -378,6 +378,7 @@ data/ess_resource_db_path="res://data/resource_db.tres"
data/ess_entity_spawner_path="res://player/bs_entity_spawner.tres" data/ess_entity_spawner_path="res://player/bs_entity_spawner.tres"
enums/stats="Agility,Strength,Stamina,Intellect,Spirit,Health,Mana,Speed,Global Cooldown,Haste,Haste Rating,Resilience,Armor,Attack Power,Spell Power,Melee Crit,Melee Crit bonus,Spell Crit,Spell Crit Bonus,Block,Parry,Damage Reduction,Melee Damage Reduction,Spell Damage Reduction,Damage Taken,Heal Taken,Melee Damage,Spell Damage,Holy Resist,Shadow Resist,Nature Resist,Fire Resist,Frost Resist,Lightning Resist,Chaos Resist,Silence Resist,Fear Resist,Stun Resist,Energy,Rage,XP Rate" enums/stats="Agility,Strength,Stamina,Intellect,Spirit,Health,Mana,Speed,Global Cooldown,Haste,Haste Rating,Resilience,Armor,Attack Power,Spell Power,Melee Crit,Melee Crit bonus,Spell Crit,Spell Crit Bonus,Block,Parry,Damage Reduction,Melee Damage Reduction,Spell Damage Reduction,Damage Taken,Heal Taken,Melee Damage,Spell Damage,Holy Resist,Shadow Resist,Nature Resist,Fire Resist,Frost Resist,Lightning Resist,Chaos Resist,Silence Resist,Fear Resist,Stun Resist,Energy,Rage,XP Rate"
enums/skeletons_bones=PoolStringArray( "", "root,pelvis,spine,spine_1,spine_2,neck,head,left_clavicle,left_upper_arm,left_forearm,left_hand,left_thumb_base,left_thumb_end,left_fingers_base,left_fingers_end,right_clavicle,right_upper_arm,right_forearm,right_hand,right_thumb_base,right_thumb_end,right_fingers_base,right_fingers_end,left_thigh,left_calf,left_foot,right_thigh,right_calf,right_foot" ) enums/skeletons_bones=PoolStringArray( "", "root,pelvis,spine,spine_1,spine_2,neck,head,left_clavicle,left_upper_arm,left_forearm,left_hand,left_thumb_base,left_thumb_end,left_fingers_base,left_fingers_end,right_clavicle,right_upper_arm,right_forearm,right_hand,right_thumb_base,right_thumb_end,right_fingers_base,right_fingers_end,left_thigh,left_calf,left_foot,right_thigh,right_calf,right_foot" )
enums/skeletons_bone_attachment_points=PoolStringArray( "", "left_hand,right_hand,torso,root,right_hip,left_hip,spine_2" )
profiles/automatic_save=true profiles/automatic_save=true
[importer_defaults] [importer_defaults]

View File

@ -215,20 +215,20 @@ func add_spell_cast_effect(info : SpellCastInfo) -> void:
if basic_spell_effect != null: if basic_spell_effect != null:
if basic_spell_effect.spell_cast_effect_left_hand != null: if basic_spell_effect.spell_cast_effect_left_hand != null:
info.caster.get_character_skeleton().left_hand_attach_point.add_effect(basic_spell_effect.spell_cast_effect_left_hand) info.caster.get_character_skeleton().common_attach_point_add_effect(EntityEnums.COMMON_SKELETON_POINT_LEFT_HAND, basic_spell_effect.spell_cast_effect_left_hand)
if basic_spell_effect.spell_cast_effect_right_hand != null: if basic_spell_effect.spell_cast_effect_right_hand != null:
info.caster.get_character_skeleton().right_hand_attach_point.add_effect(basic_spell_effect.spell_cast_effect_right_hand) info.caster.get_character_skeleton().common_attach_point_add_effect(EntityEnums.COMMON_SKELETON_POINT_RIGHT_HAND, basic_spell_effect.spell_cast_effect_right_hand)
func remove_spell_cast_effect(info : SpellCastInfo) -> void: func remove_spell_cast_effect(info : SpellCastInfo) -> void:
var basic_spell_effect : SpellEffectVisualBasic = visual_spell_effects as SpellEffectVisualBasic var basic_spell_effect : SpellEffectVisualBasic = visual_spell_effects as SpellEffectVisualBasic
if basic_spell_effect != null: if basic_spell_effect != null:
if basic_spell_effect.spell_cast_effect_left_hand != null: if basic_spell_effect.spell_cast_effect_left_hand != null:
info.caster.get_character_skeleton().left_hand_attach_point.remove_effect(basic_spell_effect.spell_cast_effect_left_hand) info.caster.get_character_skeleton().common_attach_point_remove_effect(EntityEnums.COMMON_SKELETON_POINT_LEFT_HAND, basic_spell_effect.spell_cast_effect_left_hand)
if basic_spell_effect.spell_cast_effect_right_hand != null: if basic_spell_effect.spell_cast_effect_right_hand != null:
info.caster.get_character_skeleton().right_hand_attach_point.remove_effect(basic_spell_effect.spell_cast_effect_right_hand) info.caster.get_character_skeleton().common_attach_point_remove_effect(EntityEnums.COMMON_SKELETON_POINT_RIGHT_HAND, basic_spell_effect.spell_cast_effect_right_hand)
func _notification_ccast(what, info): func _notification_ccast(what, info):
if what == SpellEnums.NOTIFICATION_CAST_STARTED: if what == SpellEnums.NOTIFICATION_CAST_STARTED:
@ -249,10 +249,10 @@ func _notification_ccast(what, info):
if bse != null: if bse != null:
if bse.torso_spell_cast_finish_effect != null: if bse.torso_spell_cast_finish_effect != null:
info.target.get_character_skeleton().torso_attach_point.add_effect_timed(bse.torso_spell_cast_finish_effect, bse.torso_spell_cast_finish_effect_time) info.target.get_character_skeleton().common_attach_point_add_effect_timed(EntityEnums.COMMON_SKELETON_POINT_TORSO, bse.torso_spell_cast_finish_effect_time)
if bse.root_spell_cast_finish_effect != null: if bse.root_spell_cast_finish_effect != null:
info.target.get_character_skeleton().root_attach_point.add_effect_timed(bse.root_spell_cast_finish_effect, bse.root_spell_cast_finish_effect_time) info.target.get_character_skeleton().common_attach_point_add_effect_timed(EntityEnums.COMMON_SKELETON_POINT_ROOT, bse.root_spell_cast_finish_effect_time)
func _son_spell_hit(info): func _son_spell_hit(info):