Hit/Death animations for bosses
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
<Project Sdk="Godot.NET.Sdk/4.4.0-dev.1">
|
||||
<Project Sdk="Godot.NET.Sdk/4.4.0-dev.3">
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
<TargetFramework Condition=" '$(GodotTargetPlatform)' == 'android' ">net8.0</TargetFramework>
|
||||
|
||||
37
GameJamDungeon.csproj.old.1
Normal file
37
GameJamDungeon.csproj.old.1
Normal file
@@ -0,0 +1,37 @@
|
||||
<Project Sdk="Godot.NET.Sdk/4.4.0-dev.1">
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
<TargetFramework Condition=" '$(GodotTargetPlatform)' == 'android' ">net8.0</TargetFramework>
|
||||
<TargetFramework Condition=" '$(GodotTargetPlatform)' == 'ios' ">net8.0</TargetFramework>
|
||||
<EnableDynamicLoading>true</EnableDynamicLoading>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Chickensoft.AutoInject" Version="2.3.0" />
|
||||
<PackageReference Include="Chickensoft.GodotNodeInterfaces" Version="2.2.23" />
|
||||
<PackageReference Include="Chickensoft.Introspection.Generator" Version="1.7.0" />
|
||||
<PackageReference Include="Chickensoft.LogicBlocks" Version="5.6.0" />
|
||||
<PackageReference Include="Chickensoft.LogicBlocks.DiagramGenerator" Version="5.6.0" />
|
||||
<PackageReference Include="Chickensoft.SaveFileBuilder" Version="1.1.0" />
|
||||
<PackageReference Include="GodotSharp.SourceGenerators" Version="2.4.0" />
|
||||
<PackageReference Include="SSH.NET" Version="2024.1.0" />
|
||||
<PackageReference Include="System.IO.Abstractions" Version="21.0.29" />
|
||||
<PackageReference Include="Zeroconf" Version="3.6.11" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Folder Include="src\items\weapons\models\" />
|
||||
<Folder Include="src\map\dungeon\corridor\" />
|
||||
<Folder Include="src\ui\dialogue\" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include=".editorconfig" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Update="Godot.SourceGenerators" Version="4.4.0-dev.2" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Update="GodotSharp" Version="4.4.0-dev.2" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Update="GodotSharpEditor" Version="4.4.0-dev.2" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
@@ -10,6 +10,8 @@ namespace GameJamDungeon
|
||||
{
|
||||
public AnimationTree AnimationTree { get; }
|
||||
|
||||
public AnimationPlayer HitAnimation { get; }
|
||||
|
||||
public Timer AttackTimer { get; }
|
||||
|
||||
public void Activate();
|
||||
@@ -56,13 +58,9 @@ namespace GameJamDungeon
|
||||
{
|
||||
BossBinding = BossLogic.Bind();
|
||||
BossBinding
|
||||
.Handle((in BossLogic.Output.HitByPlayer output) =>
|
||||
{
|
||||
|
||||
})
|
||||
.Handle((in BossLogic.Output.Defeated output) =>
|
||||
{
|
||||
QueueFree();
|
||||
HitAnimation.Play("Defeated");
|
||||
});
|
||||
this.Provide();
|
||||
BossLogic.Start();
|
||||
@@ -70,13 +68,19 @@ namespace GameJamDungeon
|
||||
CurrentHP.Sync += OnHPChanged;
|
||||
AttackTimer.Timeout += AttackTimer_Timeout;
|
||||
Hitbox.AreaEntered += Hitbox_AreaEntered;
|
||||
HitAnimation.AnimationFinished += HitAnimation_AnimationFinished;
|
||||
}
|
||||
|
||||
private void HitAnimation_AnimationFinished(StringName animName)
|
||||
{
|
||||
if (animName == "Defeated")
|
||||
QueueFree();
|
||||
}
|
||||
|
||||
private void Hitbox_AreaEntered(Area3D area)
|
||||
{
|
||||
if (area is IHitbox)
|
||||
{
|
||||
HitAnimation.Play("Hit");
|
||||
var isCriticalHit = false;
|
||||
var rng = new RandomNumberGenerator();
|
||||
rng.Randomize();
|
||||
|
||||
@@ -15,6 +15,7 @@ namespace GameJamDungeon
|
||||
public Transition On(in Input.HitByPlayer input)
|
||||
{
|
||||
var enemy = Get<IBoss>();
|
||||
enemy.HitAnimation.Play("Hit");
|
||||
enemy.CurrentHP.OnNext(enemy.CurrentHP.Value - input.Damage);
|
||||
GD.Print("Current HP: " + enemy.CurrentHP.Value);
|
||||
Output(new Output.HitByPlayer());
|
||||
|
||||
4
src/enemy/enemy_types/horse_head/BossHit.tres
Normal file
4
src/enemy/enemy_types/horse_head/BossHit.tres
Normal file
@@ -0,0 +1,4 @@
|
||||
[gd_resource type="StandardMaterial3D" format=3 uid="uid://brwu51ylevbmg"]
|
||||
|
||||
[resource]
|
||||
albedo_color = Color(1, 0, 0, 0)
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,33 +1,195 @@
|
||||
shader_type spatial;
|
||||
render_mode unshaded,cull_disabled;
|
||||
render_mode blend_mix, depth_draw_opaque, cull_back, diffuse_lambert, specular_schlick_ggx;
|
||||
|
||||
uniform float alpha : hint_range(0.0, 1.0) = 0.0;
|
||||
uniform sampler2D albedo_texture : source_color, filter_linear,repeat_disable;
|
||||
uniform sampler2D SCREEN_TEXTURE : hint_screen_texture, filter_nearest,repeat_disable;
|
||||
uniform float particle_h_frames = 8;
|
||||
uniform float particle_v_frames = 8;
|
||||
uniform bool particles_anim_loop = false;
|
||||
uniform float still_frame = -1;
|
||||
uniform sampler2D tex_frg_2;
|
||||
uniform sampler2D tex_frg_27 : source_color;
|
||||
uniform sampler2D tex_frg_24;
|
||||
uniform float Soft_limit = 0.10000000149012;
|
||||
uniform float blend_scale = 0.10000000149012;
|
||||
uniform float emission_falloff_multiplier = 1;
|
||||
uniform sampler2D tex_frg_25 : source_color;
|
||||
uniform sampler2D tex_frg_26 : source_color;
|
||||
uniform sampler2D tex_frg_16;
|
||||
uniform sampler2D tex_frg_17;
|
||||
uniform sampler2D depth_texture : source_color, hint_depth_texture;
|
||||
|
||||
uniform sampler2D noise_texture;
|
||||
|
||||
uniform float speed : hint_range(0.0, 2.0, 0.005) = 0.5;
|
||||
uniform float distortion : hint_range(0.0, 0.3, 0.005) = 0.03;
|
||||
|
||||
uniform vec3 uv1_scale = vec3(1,1,1);
|
||||
uniform vec3 uv1_offset;
|
||||
|
||||
|
||||
void vertex() {
|
||||
UV=UV*uv1_scale.xy+uv1_offset.xy;
|
||||
|
||||
// Input:3
|
||||
vec3 n_out3p0 = VERTEX;
|
||||
|
||||
|
||||
// FloatParameter:5
|
||||
float n_out5p0 = particle_h_frames;
|
||||
|
||||
|
||||
// FloatParameter:6
|
||||
float n_out6p0 = particle_v_frames;
|
||||
|
||||
|
||||
// BooleanParameter:7
|
||||
bool n_out7p0 = particles_anim_loop;
|
||||
|
||||
|
||||
// Input:8
|
||||
float n_out8p0 = TIME;
|
||||
|
||||
|
||||
// FloatParameter:10
|
||||
float n_out10p0 = still_frame;
|
||||
|
||||
|
||||
vec3 n_out2p0;
|
||||
// Expression:2
|
||||
n_out2p0 = vec3(0.0, 0.0, 0.0);
|
||||
{
|
||||
mat4 mat_world = mat4(normalize(INV_VIEW_MATRIX[0])*length(MODEL_MATRIX[0]),normalize(INV_VIEW_MATRIX[1])*length(MODEL_MATRIX[0]),normalize(INV_VIEW_MATRIX[2])*length(MODEL_MATRIX[2]),MODEL_MATRIX[3]);
|
||||
//mat_world = mat_world * mat4( vec4(cos(INSTANCE_CUSTOM.x),-sin(INSTANCE_CUSTOM.x), 0.0, 0.0), vec4(sin(INSTANCE_CUSTOM.x), cos(INSTANCE_CUSTOM.x), 0.0, 0.0),vec4(0.0, 0.0, 1.0, 0.0),vec4(0.0, 0.0, 0.0, 1.0));
|
||||
MODELVIEW_MATRIX = VIEW_MATRIX * mat_world;
|
||||
|
||||
float h_frames = float(particle_h_frames);
|
||||
float v_frames = float(particle_v_frames);
|
||||
float particle_total_frames = float(particle_h_frames * particle_v_frames);
|
||||
float particle_frame = floor(INSTANCE_CUSTOM.y * float(particle_total_frames));
|
||||
if(still_frame > -0.01f){
|
||||
particle_frame = floor(still_frame);
|
||||
}else if (!particles_anim_loop) {
|
||||
particle_frame = clamp(particle_frame, 0.0, particle_total_frames - 1.0);
|
||||
} else {
|
||||
particle_frame = mod(particle_frame, particle_total_frames);
|
||||
}
|
||||
UV /= vec2(h_frames, v_frames);
|
||||
UV += vec2(mod(particle_frame, h_frames) / h_frames, floor(particle_frame / h_frames) / v_frames);
|
||||
|
||||
n_out2p0=INSTANCE_CUSTOM.xyz;
|
||||
|
||||
}
|
||||
|
||||
|
||||
// Output:0
|
||||
COLOR.rgb = n_out2p0;
|
||||
|
||||
|
||||
}
|
||||
|
||||
void fragment() {
|
||||
vec2 noiseValue = (texture(noise_texture, UV + (TIME * speed)).rg * 2.0) - 1.0; // Range: -1.0 to 1.0
|
||||
|
||||
vec2 noiseDistortion = (noiseValue * distortion);
|
||||
// Texture2D:2
|
||||
vec4 n_out2p0 = texture(tex_frg_2, UV);
|
||||
float n_out2p4 = n_out2p0.a;
|
||||
|
||||
|
||||
vec3 n_out10p0;
|
||||
// ColorFunc:10
|
||||
{
|
||||
vec3 c = vec3(n_out2p0.xyz);
|
||||
float max1 = max(c.r, c.g);
|
||||
float max2 = max(max1, c.b);
|
||||
n_out10p0 = vec3(max2, max2, max2);
|
||||
}
|
||||
|
||||
|
||||
// Texture2D:27
|
||||
vec4 n_out27p0 = texture(tex_frg_27, vec2(n_out10p0.xy));
|
||||
|
||||
|
||||
// Texture2D:24
|
||||
vec4 n_out24p0 = texture(tex_frg_24, vec2(n_out10p0.xy));
|
||||
|
||||
|
||||
// FloatParameter:22
|
||||
float n_out22p0 = Soft_limit;
|
||||
|
||||
|
||||
// FloatParameter:23
|
||||
float n_out23p0 = blend_scale;
|
||||
|
||||
|
||||
float n_out19p0;
|
||||
// Expression:19
|
||||
n_out19p0 = 0.0;
|
||||
{
|
||||
|
||||
|
||||
|
||||
//float depth = texture(depth_texture, SCREEN_UV, 0.0).r;
|
||||
float depth = texture(depth_texture, SCREEN_UV).x;
|
||||
|
||||
vec4 upos = INV_PROJECTION_MATRIX * vec4(SCREEN_UV * 2.0 - 1.0, depth * 2.0 - 1.0, 1.0);
|
||||
float pixel_position = upos.z / upos.w;
|
||||
|
||||
vec4 zpos = INV_PROJECTION_MATRIX * vec4(SCREEN_UV * 2.0 - 1.0, FRAGCOORD.z * 2.0 - 1.0, 1.0);
|
||||
float cur_pos = zpos.z/zpos.w;
|
||||
n_out22p0 = n_out22p0+(1.0-n_out24p0.x)*n_out23p0;
|
||||
float help = clamp(abs(cur_pos-pixel_position)*(1.0/n_out22p0),0.0,1.0);
|
||||
n_out19p0 = help;
|
||||
}
|
||||
|
||||
|
||||
// FloatOp:20
|
||||
float n_out20p0 = n_out2p4 * n_out19p0;
|
||||
|
||||
|
||||
// FloatParameter:15
|
||||
float n_out15p0 = emission_falloff_multiplier;
|
||||
|
||||
|
||||
// Input:5
|
||||
vec4 n_out5p0 = COLOR;
|
||||
|
||||
|
||||
vec2 n_out6p0;
|
||||
// Expression:6
|
||||
n_out6p0 = vec2(0.0, 0.0);
|
||||
{
|
||||
//n_out6p0.z = 0.0;
|
||||
n_out6p0.xy = vec2(vec2(n_out5p0.xy).y);
|
||||
}
|
||||
|
||||
|
||||
// Texture2D:25
|
||||
vec4 n_out25p0 = texture(tex_frg_25, n_out6p0);
|
||||
|
||||
|
||||
// FloatOp:13
|
||||
float n_out13p0 = n_out15p0 * n_out25p0.x;
|
||||
|
||||
|
||||
// FloatOp:14
|
||||
float n_out14p0 = n_out10p0.x + n_out13p0;
|
||||
|
||||
|
||||
// Texture2D:26
|
||||
vec4 n_out26p0 = texture(tex_frg_26, vec2(n_out14p0));
|
||||
|
||||
|
||||
// VectorOp:12
|
||||
vec3 n_in12p1 = vec3(5.00000, 5.00000, 5.00000);
|
||||
vec3 n_out12p0 = vec3(n_out26p0.xyz) * n_in12p1;
|
||||
|
||||
|
||||
// Texture2D:16
|
||||
vec4 n_out16p0 = texture(tex_frg_16, UV);
|
||||
|
||||
|
||||
// Texture2D:17
|
||||
vec4 n_out17p0 = texture(tex_frg_17, UV);
|
||||
|
||||
|
||||
// VectorOp:18
|
||||
vec3 n_out18p0 = vec3(n_out16p0.xyz) - vec3(n_out17p0.xyz);
|
||||
|
||||
|
||||
// Output:0
|
||||
ALBEDO = vec3(n_out27p0.xyz);
|
||||
ALPHA = n_out20p0;
|
||||
EMISSION = n_out12p0;
|
||||
NORMAL = n_out18p0;
|
||||
|
||||
|
||||
vec4 color = texture(SCREEN_TEXTURE, SCREEN_UV + noiseDistortion);
|
||||
|
||||
ALBEDO = vec3(color.rgb);
|
||||
ALPHA = alpha * texture(albedo_texture, UV).r;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
[gd_scene load_steps=34 format=4 uid="uid://6dnsw37d1uw4"]
|
||||
[gd_scene load_steps=32 format=4 uid="uid://6dnsw37d1uw4"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dp6hwvuhfkji8" path="res://src/enemy/enemy_types/ox_face/models/OX FACE_Metal054C_1K-JPG_Color.jpg" id="1_iwcva"]
|
||||
[ext_resource type="Script" path="res://src/boss/Boss.cs" id="1_xakg1"]
|
||||
[ext_resource type="Texture2D" uid="uid://cqmo71mabu36n" path="res://src/enemy/enemy_types/ox_face/models/OX FACE_Metal054C_1K-JPG_Displacement.jpg" id="2_cgb4w"]
|
||||
[ext_resource type="Script" path="res://src/enemy/EnemyStatResource.cs" id="2_hdr5w"]
|
||||
[ext_resource type="Shader" path="res://src/enemy/enemy_types/ox_face/BossDie.gdshader" id="3_yv522"]
|
||||
[ext_resource type="Material" uid="uid://brwu51ylevbmg" path="res://src/enemy/enemy_types/horse_head/BossHit.tres" id="3_hub8w"]
|
||||
[ext_resource type="AnimationLibrary" uid="uid://bw3wtqy3lcbfi" path="res://src/enemy/enemy_types/horse_head/OxFace.res" id="4_4vicn"]
|
||||
|
||||
[sub_resource type="Resource" id="Resource_xpwds"]
|
||||
@@ -32,20 +32,6 @@ DropsSoulGemChance = 0.75
|
||||
radius = 9.4071
|
||||
height = 34.1332
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_pgx1n"]
|
||||
render_priority = 0
|
||||
shader = ExtResource("3_yv522")
|
||||
shader_parameter/alpha = 0.929
|
||||
shader_parameter/speed = 0.5
|
||||
shader_parameter/distortion = 0.03
|
||||
shader_parameter/uv1_scale = Vector3(1, 1, 1)
|
||||
shader_parameter/uv1_offset = null
|
||||
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_mgq32"]
|
||||
transparency = 1
|
||||
cull_mode = 2
|
||||
albedo_color = Color(1, 0, 0, 0)
|
||||
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_y7226"]
|
||||
resource_name = "Material"
|
||||
cull_mode = 2
|
||||
@@ -236,14 +222,26 @@ step = 0.0833333
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Armature/Skeleton3D/Cube_035:material_overlay:albedo_color")
|
||||
tracks/0/path = NodePath("Armature/Skeleton3D/Cube_035:transparency")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 0.166667, 0.25),
|
||||
"transitions": PackedFloat32Array(1, 1, 1),
|
||||
"times": PackedFloat32Array(0, 0.250008),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [Color(1, 0, 0, 0), Color(1, 0, 0, 0.678431), Color(1, 0, 0, 0)]
|
||||
"values": [0.7, 0.0]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("Armature/Skeleton3D/Cube_035:material_override")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0, 0.250008),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 1,
|
||||
"values": [ExtResource("3_hub8w"), null]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_kml6n"]
|
||||
@@ -251,25 +249,61 @@ length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Armature/Skeleton3D/Cube_035:material_overlay:albedo_color")
|
||||
tracks/0/path = NodePath("Armature/Skeleton3D/Cube_035:transparency")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Color(1, 0, 0, 0)]
|
||||
"values": [0.0]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("Armature/Skeleton3D/Cube_035:material_override")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [null]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_o4lik"]
|
||||
resource_name = "Defeated"
|
||||
step = 0.0833333
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Armature/Skeleton3D/Cube_035:transparency")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 1),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [0.0, 1.0]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("Armature/Skeleton3D/Cube_035:material_override")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [ExtResource("3_hub8w")]
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_q1mdo"]
|
||||
_data = {
|
||||
"Defeated": SubResource("Animation_o4lik"),
|
||||
"Hit": SubResource("Animation_g7bmo"),
|
||||
"RESET": SubResource("Animation_kml6n")
|
||||
&"Hit": SubResource("Animation_g7bmo"),
|
||||
&"RESET": SubResource("Animation_kml6n"),
|
||||
&"Defeated": SubResource("Animation_o4lik")
|
||||
}
|
||||
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_hcxtl"]
|
||||
@@ -293,7 +327,7 @@ bones/0/name = "spine1"
|
||||
bones/0/parent = -1
|
||||
bones/0/rest = Transform3D(1.49012e-06, 0.00846654, -0.999964, 2.93367e-08, 0.999964, 0.00846654, 1, -4.23752e-08, 1.49012e-06, 0.000155807, -0.00105953, -2.01735)
|
||||
bones/0/enabled = true
|
||||
bones/0/position = Vector3(-0.260123, -1.03648, -1.96886)
|
||||
bones/0/position = Vector3(-0.259293, -0.9415, -1.97527)
|
||||
bones/0/rotation = Quaternion(0.0915277, -0.692111, -0.0341586, 0.715149)
|
||||
bones/0/scale = Vector3(1, 1, 1)
|
||||
bones/1/name = "spine0"
|
||||
@@ -336,7 +370,7 @@ bones/6/parent = 5
|
||||
bones/6/rest = Transform3D(0.0598389, 0.98531, 0.15995, -0.975271, 0.0235553, 0.219755, 0.212759, -0.169144, 0.962353, 3.65078e-07, 1.40318, 0)
|
||||
bones/6/enabled = true
|
||||
bones/6/position = Vector3(3.65078e-07, 1.40318, 0)
|
||||
bones/6/rotation = Quaternion(-0.0490641, -0.294779, -0.744205, 0.597375)
|
||||
bones/6/rotation = Quaternion(-0.0775798, -0.305162, -0.744802, 0.588326)
|
||||
bones/6/scale = Vector3(1, 1, 1)
|
||||
bones/7/name = "Bone.007"
|
||||
bones/7/parent = 6
|
||||
@@ -371,7 +405,7 @@ bones/11/parent = 1
|
||||
bones/11/rest = Transform3D(0.981457, 0.0769315, -0.175568, 0.18837, -0.217537, 0.957703, 0.035485, -0.973015, -0.227995, -1.09896e-07, 3.84743, -2.10479e-07)
|
||||
bones/11/enabled = true
|
||||
bones/11/position = Vector3(-1.09896e-07, 3.84743, -2.10479e-07)
|
||||
bones/11/rotation = Quaternion(-0.780451, -0.0579031, 0.0803799, 0.617319)
|
||||
bones/11/rotation = Quaternion(-0.785983, -0.0627684, 0.0692775, 0.61114)
|
||||
bones/11/scale = Vector3(1, 0.999999, 1)
|
||||
bones/12/name = "arm2_L"
|
||||
bones/12/parent = 11
|
||||
@@ -399,7 +433,7 @@ bones/15/parent = 1
|
||||
bones/15/rest = Transform3D(-0.98213, 0.0512573, -0.181089, -0.187541, -0.185921, 0.964501, 0.0157694, 0.981227, 0.192212, 0.00107862, 3.8461, -0.0821097)
|
||||
bones/15/enabled = true
|
||||
bones/15/position = Vector3(0.00107886, 3.8461, -0.0821095)
|
||||
bones/15/rotation = Quaternion(-0.214633, 0.744054, 0.614949, -0.148841)
|
||||
bones/15/rotation = Quaternion(-0.209446, 0.735953, 0.623668, -0.159823)
|
||||
bones/15/scale = Vector3(1, 1, 1)
|
||||
bones/16/name = "arm2_R"
|
||||
bones/16/parent = 15
|
||||
@@ -426,22 +460,22 @@ bones/19/name = "hip_L"
|
||||
bones/19/parent = -1
|
||||
bones/19/rest = Transform3D(0.138486, 0.897208, 0.419333, -0.129033, -0.403458, 0.905854, 0.981923, -0.179556, 0.059896, 0.000155807, -0.00105953, -2.01735)
|
||||
bones/19/enabled = true
|
||||
bones/19/position = Vector3(-0.367541, -1.18715, -1.76239)
|
||||
bones/19/rotation = Quaternion(0.624945, 0.296236, 0.549751, -0.468468)
|
||||
bones/19/position = Vector3(-0.291048, -1.11479, -2.01443)
|
||||
bones/19/rotation = Quaternion(0.608889, 0.315283, 0.575225, -0.446057)
|
||||
bones/19/scale = Vector3(1, 1, 1)
|
||||
bones/20/name = "leg1_L"
|
||||
bones/20/parent = 19
|
||||
bones/20/rest = Transform3D(0.945603, 0.113405, 0.304916, -0.324072, 0.410457, 0.852351, -0.0284943, -0.9048, 0.424881, 2.08616e-07, 2.00996, -7.1153e-07)
|
||||
bones/20/enabled = true
|
||||
bones/20/position = Vector3(2.08616e-07, 2.00996, -7.1153e-07)
|
||||
bones/20/rotation = Quaternion(-0.324943, -0.426, -0.295888, 0.790814)
|
||||
bones/20/rotation = Quaternion(-0.308277, -0.444276, -0.268297, 0.797246)
|
||||
bones/20/scale = Vector3(1, 0.999999, 1)
|
||||
bones/21/name = "leg2_L"
|
||||
bones/21/parent = 20
|
||||
bones/21/rest = Transform3D(0.990336, -0.138679, 0.00180777, 0.138628, 0.990193, 0.0173138, -0.00419111, -0.0168959, 0.999848, 5.96046e-08, 5.85994, -5.23403e-07)
|
||||
bones/21/enabled = true
|
||||
bones/21/position = Vector3(5.96046e-08, 5.85994, -5.23403e-07)
|
||||
bones/21/rotation = Quaternion(-0.060455, 0.00129866, 0.489385, 0.869969)
|
||||
bones/21/rotation = Quaternion(-0.0600648, 0.00130131, 0.486228, 0.871764)
|
||||
bones/21/scale = Vector3(1, 1, 1)
|
||||
bones/22/name = "foot1_L"
|
||||
bones/22/parent = 21
|
||||
@@ -475,7 +509,7 @@ bones/26/name = "hip_R"
|
||||
bones/26/parent = -1
|
||||
bones/26/rest = Transform3D(0.138486, -0.897208, -0.419333, 0.129033, -0.403458, 0.905854, -0.981923, -0.179556, 0.059896, -0.000155807, -0.00105953, -2.01735)
|
||||
bones/26/enabled = true
|
||||
bones/26/position = Vector3(-0.0630348, -1.11395, -2.0189)
|
||||
bones/26/position = Vector3(-0.287872, -1.11395, -2.01737)
|
||||
bones/26/rotation = Quaternion(0.608697, -0.3155, -0.575514, -0.445793)
|
||||
bones/26/scale = Vector3(1, 1, 1)
|
||||
bones/27/name = "leg1_R"
|
||||
@@ -483,14 +517,14 @@ bones/27/parent = 26
|
||||
bones/27/rest = Transform3D(0.945603, -0.113405, -0.304916, 0.324072, 0.410457, 0.852351, 0.0284943, -0.9048, 0.424881, -9.54606e-09, 2.00996, -3.52971e-07)
|
||||
bones/27/enabled = true
|
||||
bones/27/position = Vector3(-9.54606e-09, 2.00996, -3.52971e-07)
|
||||
bones/27/rotation = Quaternion(-0.202764, 0.424382, 0.138342, 0.871578)
|
||||
bones/27/rotation = Quaternion(-0.209211, 0.42082, 0.1429, 0.871046)
|
||||
bones/27/scale = Vector3(1, 0.999999, 1)
|
||||
bones/28/name = "leg2_R"
|
||||
bones/28/parent = 27
|
||||
bones/28/rest = Transform3D(0.990336, 0.138679, -0.00180777, -0.138628, 0.990193, 0.0173138, 0.00419111, -0.0168959, 0.999848, 4.51691e-08, 5.85994, -3.72529e-09)
|
||||
bones/28/enabled = true
|
||||
bones/28/position = Vector3(4.51691e-08, 5.85994, -3.72529e-09)
|
||||
bones/28/rotation = Quaternion(-0.0629586, -0.00116334, -0.502656, 0.86219)
|
||||
bones/28/rotation = Quaternion(-0.0643528, -0.00115432, -0.513787, 0.8555)
|
||||
bones/28/scale = Vector3(1, 1, 1)
|
||||
bones/29/name = "foot1_R"
|
||||
bones/29/parent = 28
|
||||
@@ -522,7 +556,7 @@ bones/32/rotation = Quaternion(0.456756, 0.539878, -0.539587, -0.456893)
|
||||
bones/32/scale = Vector3(1, 1, 1)
|
||||
|
||||
[node name="BoneAttachment3D" type="BoneAttachment3D" parent="Armature/Skeleton3D"]
|
||||
transform = Transform3D(-0.268055, -0.0387542, -0.962624, -0.333489, -0.933684, 0.130453, -0.903842, 0.355994, 0.237354, -1.68779, 8.21802, 4.95561)
|
||||
transform = Transform3D(-0.3007, -0.0897581, -0.949486, -0.328123, -0.925049, 0.191364, -0.895496, 0.369091, 0.24871, -1.65841, 8.32593, 4.94602)
|
||||
bone_name = "TOP OF SKULL"
|
||||
bone_idx = 8
|
||||
|
||||
@@ -533,14 +567,13 @@ light_energy = 15.248
|
||||
omni_range = 0.482
|
||||
|
||||
[node name="Cube_035" type="MeshInstance3D" parent="Armature/Skeleton3D"]
|
||||
material_override = SubResource("ShaderMaterial_pgx1n")
|
||||
material_overlay = SubResource("StandardMaterial3D_mgq32")
|
||||
custom_aabb = AABB(0, 4.26, 1.65, 0, 2.215, 3.215)
|
||||
mesh = SubResource("ArrayMesh_5ew54")
|
||||
skin = SubResource("Skin_e330f")
|
||||
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
||||
libraries = {
|
||||
"": ExtResource("4_4vicn")
|
||||
&"": ExtResource("4_4vicn")
|
||||
}
|
||||
|
||||
[node name="AnimationTree" type="AnimationTree" parent="."]
|
||||
@@ -556,7 +589,7 @@ wait_time = 3.5
|
||||
[node name="HitAnimation" type="AnimationPlayer" parent="."]
|
||||
unique_name_in_owner = true
|
||||
libraries = {
|
||||
"": SubResource("AnimationLibrary_q1mdo")
|
||||
&"": SubResource("AnimationLibrary_q1mdo")
|
||||
}
|
||||
|
||||
[node name="Hitbox" type="Area3D" parent="."]
|
||||
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user