Enemy viewer revamp, loading screen improvement
This commit is contained in:
@@ -10,4 +10,24 @@ public partial class EnemyLoreInfo : Resource
|
||||
|
||||
[Export]
|
||||
public string Description { get; set; }
|
||||
|
||||
[Export]
|
||||
public string MaximumHP { get; set; }
|
||||
|
||||
[Export] public string ATK { get; set; }
|
||||
|
||||
[Export] public string DEF { get; set; }
|
||||
|
||||
[Export]
|
||||
public string Affinity { get; set; }
|
||||
|
||||
[Export]
|
||||
public string Weakness { get; set; }
|
||||
|
||||
[Export]
|
||||
public string Drop1 { get; set; }
|
||||
|
||||
[Export]
|
||||
public string Drop2 { get; set; }
|
||||
|
||||
}
|
||||
|
||||
@@ -41,6 +41,8 @@ public abstract partial class EnemyModelView : Node3D, IEnemyModelView
|
||||
[Export]
|
||||
public bool CanMove { get; set; } = false;
|
||||
|
||||
[Export] public EnemyLoreInfo EnemyLoreInfo { get; set; } = default!;
|
||||
|
||||
public void OnReady()
|
||||
{
|
||||
if (AnimationTree != null)
|
||||
@@ -50,32 +52,50 @@ public abstract partial class EnemyModelView : Node3D, IEnemyModelView
|
||||
}
|
||||
}
|
||||
|
||||
public virtual Vector2 GetSize()
|
||||
{
|
||||
return Vector2.Zero;
|
||||
}
|
||||
|
||||
public virtual void PlayPrimaryAttackAnimation()
|
||||
{
|
||||
if (!AnimationTree.HasAnimation("primary_attack"))
|
||||
return;
|
||||
_walkSFX.Stop();
|
||||
_stateMachine.Travel(_primaryAttackName, false);
|
||||
}
|
||||
|
||||
public virtual void PlaySecondaryAttackAnimation()
|
||||
{
|
||||
if (!AnimationTree.HasAnimation("secondary_attack"))
|
||||
return;
|
||||
_walkSFX.Stop();
|
||||
_stateMachine.Travel(_secondaryAttackName, false);
|
||||
}
|
||||
|
||||
public virtual void PlayPrimarySkillAnimation()
|
||||
{
|
||||
if (!AnimationTree.HasAnimation("teleport"))
|
||||
return;
|
||||
|
||||
_walkSFX.Stop();
|
||||
_stateMachine.Travel(_primarySkillName, false);
|
||||
}
|
||||
|
||||
public virtual void PlayIdleAnimation()
|
||||
{
|
||||
if (!AnimationTree.HasAnimation("idle_front"))
|
||||
return;
|
||||
|
||||
_walkSFX.Stop();
|
||||
_stateMachine.Travel(_idleName, false);
|
||||
}
|
||||
|
||||
public virtual void PlayWalkAnimation()
|
||||
{
|
||||
if (!AnimationTree.HasAnimation("idle_front_walking"))
|
||||
return;
|
||||
|
||||
if (!_walkSFX.Playing)
|
||||
_walkSFX.Play();
|
||||
_stateMachine.Travel(_walkingName, false);
|
||||
@@ -89,6 +109,9 @@ public abstract partial class EnemyModelView : Node3D, IEnemyModelView
|
||||
|
||||
public virtual void PlayActivateAnimation()
|
||||
{
|
||||
if (!AnimationTree.HasAnimation(_activateFront))
|
||||
return;
|
||||
|
||||
_walkSFX.Stop();
|
||||
_stateMachine.Travel(_activateName, false);
|
||||
}
|
||||
|
||||
@@ -10,10 +10,10 @@ public partial class EnemyModelView2D : EnemyModelView, IEnemyModelView
|
||||
{
|
||||
public override void _Notification(int what) => this.Notify(what);
|
||||
|
||||
[Export] public EnemyLoreInfo EnemyLoreInfo { get; set; } = default!;
|
||||
|
||||
[Node] public AnimatedSprite2D AnimatedSprite { get; set; } = default!;
|
||||
|
||||
[Node] public Sprite3D Sprite3D { get; set; } = default!;
|
||||
|
||||
[Node] public Area3D Hitbox { get; set; } = default!;
|
||||
|
||||
[Node] public AnimationPlayer AnimationPlayer { get; set; } = default!;
|
||||
@@ -30,8 +30,14 @@ public partial class EnemyModelView2D : EnemyModelView, IEnemyModelView
|
||||
|
||||
public new void OnReady()
|
||||
{
|
||||
Hitbox.AreaEntered += Hitbox_AreaEntered;
|
||||
base.OnReady();
|
||||
Hitbox.AreaEntered += Hitbox_AreaEntered;
|
||||
base.OnReady();
|
||||
}
|
||||
|
||||
|
||||
public override Vector2 GetSize()
|
||||
{
|
||||
return Sprite3D.GetItemRect().Size;
|
||||
}
|
||||
|
||||
private void Hitbox_AreaEntered(Area3D area) => OnPlayerHit(new AttackEventArgs(AttackData));
|
||||
@@ -40,102 +46,102 @@ public partial class EnemyModelView2D : EnemyModelView, IEnemyModelView
|
||||
|
||||
public override void PlayHitAnimation()
|
||||
{
|
||||
LoadShader("res://src/vfx/shaders/DamageHit.gdshader");
|
||||
var tweener = GetTree().CreateTween();
|
||||
tweener.TweenMethod(Callable.From((float x) => SetShaderValue(x)), 0.0f, 1.0f, 1.0f);
|
||||
LoadShader("res://src/vfx/shaders/DamageHit.gdshader");
|
||||
var tweener = GetTree().CreateTween();
|
||||
tweener.TweenMethod(Callable.From((float x) => SetShaderValue(x)), 0.0f, 1.0f, 1.0f);
|
||||
}
|
||||
|
||||
public override void PlayDeathAnimation()
|
||||
{
|
||||
LoadShader("res://src/vfx/shaders/PixelMelt.gdshader");
|
||||
var tweener = GetTree().CreateTween();
|
||||
tweener.TweenMethod(Callable.From((float x) => SetShaderValue(x)), 0.0f, 1.0f, 0.8f);
|
||||
LoadShader("res://src/vfx/shaders/PixelMelt.gdshader");
|
||||
var tweener = GetTree().CreateTween();
|
||||
tweener.TweenMethod(Callable.From((float x) => SetShaderValue(x)), 0.0f, 1.0f, 0.8f);
|
||||
}
|
||||
|
||||
private EnemyDirection GetEnemyDirection(
|
||||
Basis enemyBasis,
|
||||
Vector3 cameraDirection,
|
||||
float rotateUpperThreshold,
|
||||
float rotateLowerThreshold)
|
||||
Basis enemyBasis,
|
||||
Vector3 cameraDirection,
|
||||
float rotateUpperThreshold,
|
||||
float rotateLowerThreshold)
|
||||
{
|
||||
var enemyForwardDirection = enemyBasis.Z;
|
||||
var enemyLeftDirection = enemyBasis.X;
|
||||
var enemyForwardDirection = enemyBasis.Z;
|
||||
var enemyLeftDirection = enemyBasis.X;
|
||||
|
||||
var leftDotProduct = enemyLeftDirection.Dot(cameraDirection);
|
||||
var forwardDotProduct = enemyForwardDirection.Dot(cameraDirection);
|
||||
var leftDotProduct = enemyLeftDirection.Dot(cameraDirection);
|
||||
var forwardDotProduct = enemyForwardDirection.Dot(cameraDirection);
|
||||
|
||||
// Check if forward facing. If the dot product is -1, the enemy is facing the camera.
|
||||
if (forwardDotProduct < _lowerThreshold)
|
||||
{
|
||||
SetForward();
|
||||
return EnemyDirection.Forward;
|
||||
}
|
||||
// Check if forward facing. If the dot product is -1, the enemy is facing the camera.
|
||||
if (forwardDotProduct < _lowerThreshold)
|
||||
{
|
||||
SetForward();
|
||||
return EnemyDirection.Forward;
|
||||
}
|
||||
|
||||
// Check if backward facing. If the dot product is 1, the enemy is facing the same direction as the camera.
|
||||
else if (forwardDotProduct > rotateUpperThreshold)
|
||||
{
|
||||
SetBack();
|
||||
return EnemyDirection.Backward;
|
||||
}
|
||||
else
|
||||
{
|
||||
// If the dot product of the perpendicular direction is positive (up to 1), the enemy is facing to the left (since it's mirrored).
|
||||
if (leftDotProduct < _lowerThreshold)
|
||||
{
|
||||
SetRight();
|
||||
return EnemyDirection.Left;
|
||||
}
|
||||
// Check if backward facing. If the dot product is 1, the enemy is facing the same direction as the camera.
|
||||
else if (forwardDotProduct > rotateUpperThreshold)
|
||||
{
|
||||
SetBack();
|
||||
return EnemyDirection.Backward;
|
||||
}
|
||||
else
|
||||
{
|
||||
// If the dot product of the perpendicular direction is positive (up to 1), the enemy is facing to the left (since it's mirrored).
|
||||
if (leftDotProduct < _lowerThreshold)
|
||||
{
|
||||
SetRight();
|
||||
return EnemyDirection.Left;
|
||||
}
|
||||
|
||||
// Check if side facing. If the dot product is close to zero in the positive or negative direction, its close to the threshold for turning.
|
||||
if (leftDotProduct > rotateUpperThreshold)
|
||||
{
|
||||
SetLeft();
|
||||
return EnemyDirection.Right;
|
||||
}
|
||||
}
|
||||
// Check if side facing. If the dot product is close to zero in the positive or negative direction, its close to the threshold for turning.
|
||||
if (leftDotProduct > rotateUpperThreshold)
|
||||
{
|
||||
SetLeft();
|
||||
return EnemyDirection.Right;
|
||||
}
|
||||
}
|
||||
|
||||
return _enemyDirection;
|
||||
return _enemyDirection;
|
||||
}
|
||||
|
||||
private void LoadShader(string shaderPath)
|
||||
{
|
||||
var shader = GD.Load<Shader>(shaderPath);
|
||||
var sprites = FindChildren("*", "AnimatedSprite2D", true).Cast<AnimatedSprite2D>();
|
||||
foreach (var sprite in sprites)
|
||||
{
|
||||
sprite.Material = new ShaderMaterial();
|
||||
var shaderMaterial = (ShaderMaterial)sprite.Material;
|
||||
shaderMaterial.Shader = shader;
|
||||
}
|
||||
var shader = GD.Load<Shader>(shaderPath);
|
||||
var sprites = FindChildren("*", "AnimatedSprite2D", true).Cast<AnimatedSprite2D>();
|
||||
foreach (var sprite in sprites)
|
||||
{
|
||||
sprite.Material = new ShaderMaterial();
|
||||
var shaderMaterial = (ShaderMaterial)sprite.Material;
|
||||
shaderMaterial.Shader = shader;
|
||||
}
|
||||
}
|
||||
|
||||
private void SetShaderValue(float shaderValue)
|
||||
{
|
||||
var sprites = FindChildren("*", "AnimatedSprite2D", true).Cast<AnimatedSprite2D>();
|
||||
foreach (var sprite in sprites)
|
||||
{
|
||||
var shaderMaterial = (ShaderMaterial)sprite.Material;
|
||||
shaderMaterial.SetShaderParameter("progress", shaderValue);
|
||||
}
|
||||
var sprites = FindChildren("*", "AnimatedSprite2D", true).Cast<AnimatedSprite2D>();
|
||||
foreach (var sprite in sprites)
|
||||
{
|
||||
var shaderMaterial = (ShaderMaterial)sprite.Material;
|
||||
shaderMaterial.SetShaderParameter("progress", shaderValue);
|
||||
}
|
||||
}
|
||||
|
||||
private void SetForward()
|
||||
{
|
||||
_enemyDirection = EnemyDirection.Forward;
|
||||
_enemyDirection = EnemyDirection.Forward;
|
||||
}
|
||||
|
||||
private void SetLeft()
|
||||
{
|
||||
_enemyDirection = EnemyDirection.Left;
|
||||
_enemyDirection = EnemyDirection.Left;
|
||||
}
|
||||
|
||||
private void SetRight()
|
||||
{
|
||||
_enemyDirection = EnemyDirection.Right;
|
||||
_enemyDirection = EnemyDirection.Right;
|
||||
}
|
||||
|
||||
private void SetBack()
|
||||
{
|
||||
_enemyDirection = EnemyDirection.Backward;
|
||||
_enemyDirection = EnemyDirection.Backward;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -13,6 +13,12 @@ public partial class EnemyModelView3D : EnemyModelView
|
||||
|
||||
[Node] public MeshInstance3D MeshInstance { get; set; } = default!;
|
||||
|
||||
public override Vector2 GetSize()
|
||||
{
|
||||
var aabb = MeshInstance.GetAabb();
|
||||
return new Vector2(aabb.Size.X, aabb.Position.Abs().Y);
|
||||
}
|
||||
|
||||
private void ChangeMaterial()
|
||||
{
|
||||
var material = new StandardMaterial3D
|
||||
|
||||
@@ -7,6 +7,8 @@ namespace Zennysoft.Game.Ma;
|
||||
|
||||
public interface IEnemyModelView : INode3D
|
||||
{
|
||||
public EnemyLoreInfo EnemyLoreInfo { get; }
|
||||
|
||||
public void PlayIdleAnimation();
|
||||
|
||||
public void PlayWalkAnimation();
|
||||
|
||||
@@ -658,6 +658,7 @@ script = ExtResource("1_oh25a")
|
||||
EnemyLoreInfo = SubResource("Resource_ivy74")
|
||||
|
||||
[node name="Sprite3D" type="Sprite3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(6, 0, 0, 0, 6, 0, 0, 0, 6, 0, 0, 0)
|
||||
pixel_size = 0.001
|
||||
billboard = 2
|
||||
|
||||
@@ -1179,6 +1179,7 @@ script = ExtResource("1_o4cc2")
|
||||
EnemyLoreInfo = SubResource("Resource_gby04")
|
||||
|
||||
[node name="Sprite3D" type="Sprite3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.086869, 0)
|
||||
billboard = 2
|
||||
shaded = true
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=421 format=3 uid="uid://bup8c4x1na3aw"]
|
||||
[gd_scene load_steps=420 format=3 uid="uid://bup8c4x1na3aw"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cvr1qimxpignl" path="res://src/enemy/EnemyModelView2D.cs" id="1_718m1"]
|
||||
[ext_resource type="Script" uid="uid://dlsgyx4i1jmp3" path="res://src/enemy/EnemyLoreInfo.cs" id="2_krqul"]
|
||||
@@ -209,12 +209,6 @@ Name = "Filth Eater"
|
||||
Description = "yuck"
|
||||
metadata/_custom_type_script = "uid://dlsgyx4i1jmp3"
|
||||
|
||||
[sub_resource type="Resource" id="Resource_e5pq0"]
|
||||
script = ExtResource("3_4h5gj")
|
||||
Damage = 10
|
||||
ElementType = 0
|
||||
metadata/_custom_type_script = "uid://ctshiyffvt4y5"
|
||||
|
||||
[sub_resource type="ViewportTexture" id="ViewportTexture_7tggm"]
|
||||
viewport_path = NodePath("Sprite3D/SubViewportContainer/SubViewport")
|
||||
|
||||
@@ -3309,9 +3303,9 @@ _data = {
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.5, 0)
|
||||
script = ExtResource("1_718m1")
|
||||
EnemyLoreInfo = SubResource("Resource_pyy2h")
|
||||
AttackData = SubResource("Resource_e5pq0")
|
||||
|
||||
[node name="Sprite3D" type="Sprite3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 0.0862446, 0)
|
||||
billboard = 2
|
||||
shaded = true
|
||||
|
||||
@@ -1828,6 +1828,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.31442, 0)
|
||||
script = ExtResource("1_oh25a")
|
||||
|
||||
[node name="Sprite3D" type="Sprite3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, -1.31336, 0)
|
||||
pixel_size = 0.005
|
||||
billboard = 1
|
||||
|
||||
@@ -1471,6 +1471,7 @@ _data = {
|
||||
script = ExtResource("1_ueqp5")
|
||||
|
||||
[node name="Sprite3D" type="Sprite3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 0.0275542, 0)
|
||||
billboard = 2
|
||||
alpha_cut = 1
|
||||
|
||||
@@ -14,8 +14,8 @@ public partial class ChariotModelView : EnemyModelView2D, IEnemyModelView
|
||||
|
||||
public override void PlayActivateAnimation()
|
||||
{
|
||||
_stateMachine.Travel(_activateName);
|
||||
var scrollStateMachine = (AnimationNodeStateMachinePlayback)ScrollAnimationTree.Get(_parametersPlayback);
|
||||
scrollStateMachine.Travel(_activateName);
|
||||
_stateMachine.Travel(_activateName);
|
||||
var scrollStateMachine = (AnimationNodeStateMachinePlayback)ScrollAnimationTree.Get(_parametersPlayback);
|
||||
scrollStateMachine.Travel(_activateName);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
[gd_scene load_steps=505 format=3 uid="uid://byd7cwxq1be6f"]
|
||||
[gd_scene load_steps=503 format=3 uid="uid://byd7cwxq1be6f"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cvr1qimxpignl" path="res://src/enemy/EnemyModelView2D.cs" id="1_6dej3"]
|
||||
[ext_resource type="Texture2D" uid="uid://dnd6d5cx7x7i8" path="res://src/enemy/enemy_types/07. chinthe/animations/CHINTHE - RERENDER/BACK/0400.png" id="2_3sdh3"]
|
||||
[ext_resource type="Script" uid="uid://ctshiyffvt4y5" path="res://src/system/AttackDataResource.cs" id="2_keq07"]
|
||||
[ext_resource type="Texture2D" uid="uid://c0unwba144tls" path="res://src/enemy/enemy_types/07. chinthe/animations/CHINTHE - RERENDER/BACK/0402.png" id="3_dbwem"]
|
||||
[ext_resource type="Texture2D" uid="uid://ca1im2so1vkym" path="res://src/enemy/enemy_types/07. chinthe/animations/CHINTHE - RERENDER/BACK/0404.png" id="4_y7pe6"]
|
||||
[ext_resource type="Texture2D" uid="uid://cgnm3v0t63aiw" path="res://src/enemy/enemy_types/07. chinthe/animations/CHINTHE - RERENDER/BACK/0406.png" id="5_xu4hf"]
|
||||
@@ -401,12 +400,6 @@
|
||||
[ext_resource type="AnimationNodeStateMachine" uid="uid://cbq8xog50cjjy" path="res://src/enemy/animation_state_machines/PrimaryAttackStateMachine.tres" id="394_ldtka"]
|
||||
[ext_resource type="Texture2D" uid="uid://c7pf2dib2ilhs" path="res://src/vfx/Enemy/CHINTHE_BLAST.png" id="395_ymova"]
|
||||
|
||||
[sub_resource type="Resource" id="Resource_w4c47"]
|
||||
script = ExtResource("2_keq07")
|
||||
Damage = 10
|
||||
ElementType = 0
|
||||
metadata/_custom_type_script = "uid://ctshiyffvt4y5"
|
||||
|
||||
[sub_resource type="ViewportTexture" id="ViewportTexture_h1kaf"]
|
||||
viewport_path = NodePath("Sprite3D/SubViewportContainer/SubViewport")
|
||||
|
||||
@@ -3071,6 +3064,7 @@ advance_mode = 2
|
||||
[sub_resource type="AnimationNodeStateMachine" id="AnimationNodeStateMachine_li182"]
|
||||
states/Start/position = Vector2(273, 100)
|
||||
transitions = ["Start", "End", SubResource("AnimationNodeStateMachineTransition_li182")]
|
||||
graph_offset = Vector2(-179, 5)
|
||||
|
||||
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_li182"]
|
||||
animation = &"teleport in"
|
||||
@@ -3231,7 +3225,7 @@ states/Start/position = Vector2(199, 100)
|
||||
states/Walking/node = SubResource("AnimationNodeStateMachine_7dl50")
|
||||
states/Walking/position = Vector2(348, 400.144)
|
||||
transitions = ["Start", "Unactivated Idle", SubResource("AnimationNodeStateMachineTransition_umemc"), "Unactivated Idle", "Activate", SubResource("AnimationNodeStateMachineTransition_t3xhd"), "Activate", "Idle", SubResource("AnimationNodeStateMachineTransition_5jjkq"), "Primary Attack", "Idle", SubResource("AnimationNodeStateMachineTransition_keq07"), "Idle", "Primary Skill", SubResource("AnimationNodeStateMachineTransition_manul"), "Primary Skill", "Teleport In", SubResource("AnimationNodeStateMachineTransition_auprl"), "Teleport In", "Idle", SubResource("AnimationNodeStateMachineTransition_i5vf2"), "Idle", "Primary Attack", SubResource("AnimationNodeStateMachineTransition_jbhro"), "Stop Walk", "Idle", SubResource("AnimationNodeStateMachineTransition_yu6fp"), "Idle", "Walking", SubResource("AnimationNodeStateMachineTransition_sgkk0"), "Walking", "Stop Walk", SubResource("AnimationNodeStateMachineTransition_8e7of")]
|
||||
graph_offset = Vector2(-196.563, 38.1444)
|
||||
graph_offset = Vector2(-331.563, 123.457)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_tawq7"]
|
||||
atlas = ExtResource("395_ymova")
|
||||
@@ -3494,9 +3488,9 @@ rings = 8
|
||||
|
||||
[node name="EnemyModelView" type="Node3D"]
|
||||
script = ExtResource("1_6dej3")
|
||||
AttackData = SubResource("Resource_w4c47")
|
||||
|
||||
[node name="Sprite3D" type="Sprite3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 0, 0)
|
||||
pixel_size = 0.005
|
||||
billboard = 2
|
||||
|
||||
@@ -2003,6 +2003,7 @@ script = ExtResource("1_h27bt")
|
||||
EnemyLoreInfo = SubResource("Resource_f45wt")
|
||||
|
||||
[node name="Sprite3D" type="Sprite3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.765249, 0)
|
||||
pixel_size = 0.02
|
||||
billboard = 2
|
||||
|
||||
@@ -1946,6 +1946,7 @@ script = ExtResource("1_a8qtn")
|
||||
EnemyLoreInfo = SubResource("Resource_f45wt")
|
||||
|
||||
[node name="Sprite3D" type="Sprite3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, -0.941682, 0)
|
||||
pixel_size = 0.015
|
||||
billboard = 2
|
||||
|
||||
@@ -2007,6 +2007,7 @@ script = ExtResource("1_s0qsg")
|
||||
EnemyLoreInfo = SubResource("Resource_f45wt")
|
||||
|
||||
[node name="Sprite3D" type="Sprite3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, -0.765249, 0)
|
||||
billboard = 2
|
||||
shaded = true
|
||||
|
||||
@@ -2082,7 +2082,7 @@ script = ExtResource("1_wl7dh")
|
||||
EnemyLoreInfo = SubResource("Resource_f45wt")
|
||||
|
||||
[node name="Sprite3D" type="Sprite3D" parent="."]
|
||||
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, -1.11516, 0)
|
||||
unique_name_in_owner = true
|
||||
billboard = 2
|
||||
texture_filter = 0
|
||||
render_priority = 100
|
||||
@@ -2090,28 +2090,25 @@ texture = SubResource("ViewportTexture_h1kaf")
|
||||
|
||||
[node name="SubViewportContainer" type="SubViewportContainer" parent="Sprite3D"]
|
||||
visibility_layer = 0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
offset_right = 512.0
|
||||
offset_bottom = 512.0
|
||||
|
||||
[node name="SubViewport" type="SubViewport" parent="Sprite3D/SubViewportContainer"]
|
||||
disable_3d = true
|
||||
transparent_bg = true
|
||||
handle_input_locally = false
|
||||
size = Vector2i(1000, 1000)
|
||||
render_target_update_mode = 4
|
||||
|
||||
[node name="AnimatedSprite" type="AnimatedSprite2D" parent="Sprite3D/SubViewportContainer/SubViewport"]
|
||||
unique_name_in_owner = true
|
||||
texture_filter = 1
|
||||
position = Vector2(507, 425)
|
||||
scale = Vector2(0.5, 0.5)
|
||||
sprite_frames = SubResource("SpriteFrames_6drt6")
|
||||
animation = &"idle_front"
|
||||
offset = Vector2(250, 150)
|
||||
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="Sprite3D/SubViewportContainer/SubViewport"]
|
||||
position = Vector2(508, 425)
|
||||
scale = Vector2(0.5, 0.5)
|
||||
sprite_frames = SubResource("SpriteFrames_d844v")
|
||||
offset = Vector2(250, 150)
|
||||
|
||||
[node name="Hitbox" type="Area3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
|
||||
@@ -175,7 +175,7 @@ length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("MeshInstance:material_override")
|
||||
tracks/0/path = NodePath("EdenPillar/MeshInstance:material_override")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
@@ -187,7 +187,7 @@ tracks/0/keys = {
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("MeshInstance:material_override:transparency")
|
||||
tracks/1/path = NodePath("EdenPillar/MeshInstance:material_override:transparency")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
@@ -199,7 +199,7 @@ tracks/1/keys = {
|
||||
tracks/2/type = "value"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("MeshInstance:transparency")
|
||||
tracks/2/path = NodePath("EdenPillar/MeshInstance:transparency")
|
||||
tracks/2/interp = 1
|
||||
tracks/2/loop_wrap = true
|
||||
tracks/2/keys = {
|
||||
@@ -215,7 +215,7 @@ step = 0.0833333
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("MeshInstance:transparency")
|
||||
tracks/0/path = NodePath("EdenPillar/MeshInstance:transparency")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
@@ -227,7 +227,7 @@ tracks/0/keys = {
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("MeshInstance:material_override")
|
||||
tracks/1/path = NodePath("EdenPillar/MeshInstance:material_override")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
@@ -244,7 +244,7 @@ step = 0.0833333
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("MeshInstance:material_override")
|
||||
tracks/0/path = NodePath("EdenPillar/MeshInstance:material_override")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
@@ -256,7 +256,7 @@ tracks/0/keys = {
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("MeshInstance:material_override:transparency")
|
||||
tracks/1/path = NodePath("EdenPillar/MeshInstance:material_override:transparency")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
@@ -268,7 +268,7 @@ tracks/1/keys = {
|
||||
tracks/2/type = "value"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("MeshInstance:transparency")
|
||||
tracks/2/path = NodePath("EdenPillar/MeshInstance:transparency")
|
||||
tracks/2/interp = 1
|
||||
tracks/2/loop_wrap = true
|
||||
tracks/2/keys = {
|
||||
@@ -288,28 +288,32 @@ _data = {
|
||||
[sub_resource type="AnimationNodeStateMachine" id="AnimationNodeStateMachine_qhmtu"]
|
||||
|
||||
[node name="EdenPillarModelView" type="Node3D"]
|
||||
transform = Transform3D(0.9, 0, 0, 0, 0.9, 0, 0, 0, 0.9, 0, 0, 0)
|
||||
script = ExtResource("1_qhmtu")
|
||||
|
||||
[node name="MeshInstance" type="MeshInstance3D" parent="."]
|
||||
[node name="EdenPillar" type="Node3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -4.28807, 0)
|
||||
|
||||
[node name="MeshInstance" type="MeshInstance3D" parent="EdenPillar"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(-2.29567e-08, 0.525188, 0.290134, -0.6, -2.62268e-08, 0, 1.26821e-08, -0.290134, 0.525188, -0.00582695, 4.44911, -0.0565475)
|
||||
transform = Transform3D(-2.29567e-08, 0.525188, 0.290134, -0.6, -2.62268e-08, -5.45934e-14, 1.26821e-08, -0.290134, 0.525188, -0.00582695, 4.44911, -0.0565475)
|
||||
mesh = SubResource("ArrayMesh_8pgwy")
|
||||
skeleton = NodePath("")
|
||||
|
||||
[node name="Firing" type="AudioStreamPlayer3D" parent="."]
|
||||
[node name="Firing" type="AudioStreamPlayer3D" parent="EdenPillar"]
|
||||
|
||||
[node name="WalkSFX" type="AudioStreamPlayer3D" parent="."]
|
||||
[node name="WalkSFX" type="AudioStreamPlayer3D" parent="EdenPillar"]
|
||||
unique_name_in_owner = true
|
||||
autoplay = true
|
||||
bus = &"SFX"
|
||||
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="EdenPillar"]
|
||||
unique_name_in_owner = true
|
||||
root_node = NodePath("../..")
|
||||
libraries = {
|
||||
&"": SubResource("AnimationLibrary_mi284")
|
||||
}
|
||||
|
||||
[node name="AnimationTree" type="AnimationTree" parent="."]
|
||||
[node name="AnimationTree" type="AnimationTree" parent="EdenPillar"]
|
||||
unique_name_in_owner = true
|
||||
root_node = NodePath("../..")
|
||||
tree_root = SubResource("AnimationNodeStateMachine_qhmtu")
|
||||
|
||||
@@ -2891,6 +2891,7 @@ _data = {
|
||||
script = ExtResource("1_yke7o")
|
||||
|
||||
[node name="Sprite3D" type="Sprite3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 0.0366734, 0)
|
||||
pixel_size = 0.005
|
||||
billboard = 1
|
||||
|
||||
@@ -3404,6 +3404,7 @@ animations = [{
|
||||
script = ExtResource("1_h8pla")
|
||||
|
||||
[node name="Sprite3D" type="Sprite3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 1.12245, 0)
|
||||
billboard = 2
|
||||
alpha_cut = 1
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 22 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 2.0 MiB After Width: | Height: | Size: 417 KiB |
@@ -1,8 +1,7 @@
|
||||
[gd_scene load_steps=69 format=3 uid="uid://dobiqowi8mhfi"]
|
||||
[gd_scene load_steps=67 format=3 uid="uid://dobiqowi8mhfi"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cvr1qimxpignl" path="res://src/enemy/EnemyModelView2D.cs" id="1_7w22e"]
|
||||
[ext_resource type="Script" uid="uid://dlsgyx4i1jmp3" path="res://src/enemy/EnemyLoreInfo.cs" id="2_ca1o5"]
|
||||
[ext_resource type="Script" uid="uid://ctshiyffvt4y5" path="res://src/system/AttackDataResource.cs" id="3_3rk4a"]
|
||||
[ext_resource type="Texture2D" uid="uid://bokmaslnp1a4u" path="res://src/enemy/enemy_types/13. gold sproingy/animations/GOLD_SPROING_FRONT/Layer 1.png" id="3_kfpgw"]
|
||||
[ext_resource type="Texture2D" uid="uid://bi5by5os5u7py" path="res://src/enemy/enemy_types/13. gold sproingy/animations/GOLD_SPROING_BACK/Layer 1.png" id="3_w6gcy"]
|
||||
[ext_resource type="Texture2D" uid="uid://ca5uvl08g0147" path="res://src/enemy/enemy_types/13. gold sproingy/animations/GOLD_SPROING_BACK/Layer 2.png" id="4_2o8qa"]
|
||||
@@ -58,12 +57,6 @@ Name = "Sproingy"
|
||||
Description = "He's smaller than I expected..."
|
||||
metadata/_custom_type_script = "uid://dlsgyx4i1jmp3"
|
||||
|
||||
[sub_resource type="Resource" id="Resource_8wbs7"]
|
||||
script = ExtResource("3_3rk4a")
|
||||
Damage = 10
|
||||
ElementType = 0
|
||||
metadata/_custom_type_script = "uid://ctshiyffvt4y5"
|
||||
|
||||
[sub_resource type="ViewportTexture" id="ViewportTexture_etb7g"]
|
||||
viewport_path = NodePath("Sprite3D/SubViewportContainer/SubViewport")
|
||||
|
||||
@@ -608,9 +601,9 @@ transitions = ["Start", "Idle", SubResource("AnimationNodeStateMachineTransition
|
||||
[node name="EnemyModelView" type="Node3D"]
|
||||
script = ExtResource("1_7w22e")
|
||||
EnemyLoreInfo = SubResource("Resource_ivy74")
|
||||
AttackData = SubResource("Resource_8wbs7")
|
||||
|
||||
[node name="Sprite3D" type="Sprite3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(6, 0, 0, 0, 6, 0, 0, 0, 6, 0, 0, 0)
|
||||
pixel_size = 0.001
|
||||
billboard = 2
|
||||
|
||||
@@ -988,7 +988,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.0996386, -0.279526, -1.53144)
|
||||
bones/0/position = Vector3(0.0996386, -0.294616, -1.53144)
|
||||
bones/0/rotation = Quaternion(0.0256267, -0.805691, 0.0118477, 0.591662)
|
||||
bones/0/scale = Vector3(1, 1, 1)
|
||||
bones/1/name = "spine0"
|
||||
@@ -1017,7 +1017,7 @@ bones/4/parent = 3
|
||||
bones/4/rest = Transform3D(0.901905, -0.410135, 0.135488, 0.412416, 0.910915, 0.0120912, -0.128377, 0.0449723, 0.990705, 2.5332e-07, 0.990515, -7.07805e-08)
|
||||
bones/4/enabled = true
|
||||
bones/4/position = Vector3(2.5332e-07, 0.990515, -7.07805e-08)
|
||||
bones/4/rotation = Quaternion(0.00787143, 0.0673259, 0.209846, 0.975382)
|
||||
bones/4/rotation = Quaternion(0.00648616, 0.0665248, 0.207275, 0.975997)
|
||||
bones/4/scale = Vector3(1, 1, 1)
|
||||
bones/5/name = "neck4"
|
||||
bones/5/parent = 4
|
||||
@@ -1031,7 +1031,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.343022, 0.0521047, -0.494747, 0.796772)
|
||||
bones/6/rotation = Quaternion(-0.341528, 0.0519651, -0.490475, 0.800058)
|
||||
bones/6/scale = Vector3(1, 1, 1)
|
||||
bones/7/name = "Bone.007"
|
||||
bones/7/parent = 6
|
||||
@@ -1066,7 +1066,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.806075, -0.07973, -0.0234888, 0.585948)
|
||||
bones/11/rotation = Quaternion(-0.806907, -0.0812587, -0.0235244, 0.584589)
|
||||
bones/11/scale = Vector3(1, 1, 1)
|
||||
bones/12/name = "arm2_L"
|
||||
bones/12/parent = 11
|
||||
@@ -1093,7 +1093,7 @@ bones/15/name = "arm1_R"
|
||||
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.202609, 3.65099, 0.0754982)
|
||||
bones/15/position = Vector3(-0.199309, 3.62561, 0.0802962)
|
||||
bones/15/rotation = Quaternion(-0.502686, 0.531044, 0.680821, -0.0422068)
|
||||
bones/15/scale = Vector3(1, 1, 1)
|
||||
bones/16/name = "arm2_R"
|
||||
@@ -1108,7 +1108,7 @@ bones/17/parent = 16
|
||||
bones/17/rest = Transform3D(0.998789, 0.0488077, -0.00615137, -0.0491113, 0.996528, -0.0672226, 0.00284903, 0.0674433, 0.997719, -5.21541e-08, 3.04263, -1.31503e-06)
|
||||
bones/17/enabled = true
|
||||
bones/17/position = Vector3(-5.21541e-08, 3.04263, -1.31503e-06)
|
||||
bones/17/rotation = Quaternion(-0.0459497, 0.097357, 0.264908, 0.958245)
|
||||
bones/17/rotation = Quaternion(-0.0422391, 0.0972348, 0.266217, 0.958066)
|
||||
bones/17/scale = Vector3(1, 1, 1)
|
||||
bones/18/name = "hand_R"
|
||||
bones/18/parent = 17
|
||||
@@ -1121,7 +1121,7 @@ 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.147751, -0.282267, -1.49267)
|
||||
bones/19/position = Vector3(0.147751, -0.291, -1.49267)
|
||||
bones/19/rotation = Quaternion(0.427793, 0.34021, 0.687061, -0.478745)
|
||||
bones/19/scale = Vector3(1, 1, 1)
|
||||
bones/20/name = "leg1_L"
|
||||
@@ -1129,14 +1129,14 @@ 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.437808, -0.325257, -0.369348, 0.752405)
|
||||
bones/20/rotation = Quaternion(-0.437352, -0.325827, -0.370051, 0.752079)
|
||||
bones/20/scale = Vector3(1, 1, 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.0475168, 0.00188995, 0.38009, 0.923726)
|
||||
bones/21/rotation = Quaternion(-0.0476923, 0.00188875, 0.381494, 0.923138)
|
||||
bones/21/scale = Vector3(1, 1, 1)
|
||||
bones/22/name = "foot1_L"
|
||||
bones/22/parent = 21
|
||||
@@ -1170,7 +1170,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.0289172, -0.298136, -1.59603)
|
||||
bones/26/position = Vector3(0.0289172, -0.303958, -1.59603)
|
||||
bones/26/rotation = Quaternion(0.695067, -0.09936, -0.377924, -0.603475)
|
||||
bones/26/scale = Vector3(1, 1, 1)
|
||||
bones/27/name = "leg1_R"
|
||||
@@ -1178,14 +1178,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.317636, 0.174004, 0.183885, 0.913793)
|
||||
bones/27/rotation = Quaternion(-0.316952, 0.174488, 0.183941, 0.913926)
|
||||
bones/27/scale = Vector3(1, 1, 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.268021, 0.0202226, -0.17488, 0.947192)
|
||||
bones/28/rotation = Quaternion(-0.269003, 0.0202141, -0.17552, 0.946795)
|
||||
bones/28/scale = Vector3(1, 1, 1)
|
||||
bones/29/name = "foot1_R"
|
||||
bones/29/parent = 28
|
||||
@@ -1222,12 +1222,12 @@ mesh = SubResource("ArrayMesh_6e63x")
|
||||
skin = SubResource("Skin_yvw71")
|
||||
|
||||
[node name="BoneAttachment3D" type="BoneAttachment3D" parent="Armature/Skeleton3D"]
|
||||
transform = Transform3D(-0.370165, -0.13327, -0.919357, -0.258559, -0.935769, 0.239755, -0.892258, 0.326457, 0.311931, -2.00356, 8.78487, 6.14065)
|
||||
transform = Transform3D(-0.370165, -0.13327, -0.919357, -0.263026, -0.934123, 0.241313, -0.890952, 0.33114, 0.310726, -2.00357, 8.77889, 6.15984)
|
||||
bone_name = "TOP OF SKULL"
|
||||
bone_idx = 8
|
||||
|
||||
[node name="BoneAttachment3D2" type="BoneAttachment3D" parent="Armature/Skeleton3D"]
|
||||
transform = Transform3D(0.960238, 0.142738, 0.239935, -0.230152, -0.0817476, 0.969715, 0.158029, -0.986379, -0.0456457, -2.41576, 1.74228, -8.89334)
|
||||
transform = Transform3D(0.960238, 0.142738, 0.239935, -0.23139, -0.073971, 0.970045, 0.15621, -0.986993, -0.0380017, -2.41575, 1.72785, -8.91814)
|
||||
bone_name = "hand_R"
|
||||
bone_idx = 18
|
||||
|
||||
|
||||
@@ -206,7 +206,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.260276, -1.05389, -1.96769)
|
||||
bones/0/position = Vector3(-0.260019, -1.02446, -1.96967)
|
||||
bones/0/rotation = Quaternion(0.0915277, -0.692111, -0.0341586, 0.715149)
|
||||
bones/0/scale = Vector3(1, 1, 1)
|
||||
bones/1/name = "spine0"
|
||||
@@ -249,7 +249,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.0520092, -0.295864, -0.744301, 0.596469)
|
||||
bones/6/rotation = Quaternion(-0.0605755, -0.299004, -0.744536, 0.593796)
|
||||
bones/6/scale = Vector3(1, 1, 1)
|
||||
bones/7/name = "Bone.007"
|
||||
bones/7/parent = 6
|
||||
@@ -284,7 +284,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.779476, -0.0570599, 0.0822994, 0.618375)
|
||||
bones/11/rotation = Quaternion(-0.781165, -0.058524, 0.0789656, 0.616539)
|
||||
bones/11/scale = Vector3(1, 0.999999, 1)
|
||||
bones/12/name = "arm2_L"
|
||||
bones/12/parent = 11
|
||||
@@ -312,7 +312,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.21553, 0.745444, 0.613412, -0.146924)
|
||||
bones/15/rotation = Quaternion(-0.21398, 0.743041, 0.616062, -0.150233)
|
||||
bones/15/scale = Vector3(1, 1, 1)
|
||||
bones/16/name = "arm2_R"
|
||||
bones/16/parent = 15
|
||||
@@ -339,22 +339,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.381562, -1.20042, -1.71619)
|
||||
bones/19/rotation = Quaternion(0.627767, 0.292688, 0.544975, -0.472487)
|
||||
bones/19/position = Vector3(-0.357863, -1.178, -1.79428)
|
||||
bones/19/rotation = Quaternion(0.622974, 0.298676, 0.553029, -0.465678)
|
||||
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.327925, -0.422597, -0.300857, 0.789533)
|
||||
bones/20/rotation = Quaternion(-0.322869, -0.42834, -0.292442, 0.791681)
|
||||
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.0605445, 0.00129802, 0.49011, 0.869554)
|
||||
bones/21/rotation = Quaternion(-0.0604396, 0.00129875, 0.489262, 0.870039)
|
||||
bones/21/scale = Vector3(1, 1, 1)
|
||||
bones/22/name = "foot1_L"
|
||||
bones/22/parent = 21
|
||||
@@ -388,7 +388,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.0218232, -1.11395, -2.01917)
|
||||
bones/26/position = Vector3(-0.0914828, -1.11395, -2.0187)
|
||||
bones/26/rotation = Quaternion(0.608697, -0.3155, -0.575514, -0.445793)
|
||||
bones/26/scale = Vector3(1, 1, 1)
|
||||
bones/27/name = "leg1_R"
|
||||
@@ -396,14 +396,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.201704, 0.42497, 0.137533, 0.871666)
|
||||
bones/27/rotation = Quaternion(-0.203553, 0.423945, 0.138932, 0.871513)
|
||||
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.0627068, -0.00116495, -0.500645, 0.863378)
|
||||
bones/28/rotation = Quaternion(-0.0631419, -0.00116218, -0.50412, 0.861322)
|
||||
bones/28/scale = Vector3(1, 1, 1)
|
||||
bones/29/name = "foot1_R"
|
||||
bones/29/parent = 28
|
||||
@@ -435,7 +435,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.271443, -0.0440478, -0.961446, -0.333033, -0.932944, 0.136766, -0.902999, 0.357318, 0.238571, -1.68503, 8.20202, 4.95649)
|
||||
transform = Transform3D(-0.281277, -0.0594146, -0.957786, -0.331575, -0.930592, 0.155103, -0.900522, 0.361205, 0.242053, -1.67626, 8.23547, 4.95359)
|
||||
bone_name = "TOP OF SKULL"
|
||||
bone_idx = 8
|
||||
|
||||
@@ -458,7 +458,7 @@ mesh = SubResource("ArrayMesh_5ew54")
|
||||
skin = SubResource("Skin_e330f")
|
||||
|
||||
[node name="BoneAttachment3D2" type="BoneAttachment3D" parent="Armature/Skeleton3D"]
|
||||
transform = Transform3D(-0.0477638, -0.00543313, -0.998843, -0.0797991, -0.996767, 0.00923727, -0.995664, 0.080149, 0.0471753, -6.32381, -1.21705, -0.163401)
|
||||
transform = Transform3D(-0.046878, 0.0046197, -0.998889, -0.0819302, -0.996637, -0.000764847, -0.995533, 0.0818041, 0.0470983, -6.27641, -1.24577, -0.158031)
|
||||
bone_name = "hand_R"
|
||||
bone_idx = 18
|
||||
|
||||
|
||||
@@ -340,47 +340,41 @@ script = ExtResource("1_r5yku")
|
||||
|
||||
[node name="LeftArms" type="Node3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.25727, -7.67419, 0)
|
||||
|
||||
[node name="Arm1" parent="LeftArms" instance=ExtResource("1_ell80")]
|
||||
unique_name_in_owner = true
|
||||
AttackData = null
|
||||
|
||||
[node name="Arm2" parent="LeftArms" instance=ExtResource("2_kblru")]
|
||||
unique_name_in_owner = true
|
||||
AttackData = null
|
||||
|
||||
[node name="Arm3" parent="LeftArms" instance=ExtResource("3_nqxqr")]
|
||||
unique_name_in_owner = true
|
||||
AttackData = null
|
||||
|
||||
[node name="Arm4" parent="LeftArms" instance=ExtResource("4_r5yku")]
|
||||
unique_name_in_owner = true
|
||||
AttackData = null
|
||||
|
||||
[node name="Arm5" parent="LeftArms" instance=ExtResource("5_5oa7x")]
|
||||
unique_name_in_owner = true
|
||||
AttackData = null
|
||||
|
||||
[node name="RightArms" type="Node3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.25727, -7.67419, 0)
|
||||
|
||||
[node name="Arm6" parent="RightArms" instance=ExtResource("6_h1yna")]
|
||||
unique_name_in_owner = true
|
||||
AttackData = null
|
||||
|
||||
[node name="Arm7" parent="RightArms" instance=ExtResource("7_6s6sq")]
|
||||
unique_name_in_owner = true
|
||||
AttackData = null
|
||||
|
||||
[node name="Arm8" parent="RightArms" instance=ExtResource("8_e82oe")]
|
||||
unique_name_in_owner = true
|
||||
AttackData = null
|
||||
|
||||
[node name="Arm9" parent="RightArms" instance=ExtResource("9_c826n")]
|
||||
unique_name_in_owner = true
|
||||
AttackData = null
|
||||
|
||||
[node name="DEMON WALL BASE + PIPES" type="Node3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.25727, -7.67419, 0)
|
||||
|
||||
[node name="SMALL FACES" type="MeshInstance3D" parent="DEMON WALL BASE + PIPES"]
|
||||
mesh = SubResource("ArrayMesh_xb46g")
|
||||
@@ -432,10 +426,11 @@ skeleton = NodePath("")
|
||||
|
||||
[node name="Rotation" type="Node3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.11577, 9.46987, 4.38761)
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.141497, 1.79568, 4.38761)
|
||||
|
||||
[node name="OpposingWall" type="AnimatableBody3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.25727, -7.67419, 0)
|
||||
visible = false
|
||||
collision_layer = 2
|
||||
collision_mask = 2
|
||||
@@ -459,5 +454,6 @@ anim_player = NodePath("../AnimationPlayer")
|
||||
|
||||
[node name="WalkSFX" type="AudioStreamPlayer3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.25727, -7.67419, 0)
|
||||
autoplay = true
|
||||
bus = &"SFX"
|
||||
|
||||
@@ -1996,6 +1996,7 @@ states/Idle/position = Vector2(481, 100)
|
||||
"states/Secondary Attack/node" = ExtResource("336_oklrx")
|
||||
"states/Secondary Attack/position" = Vector2(601, 252)
|
||||
transitions = ["Start", "Idle", SubResource("AnimationNodeStateMachineTransition_wr22k"), "Idle", "Primary Attack", SubResource("AnimationNodeStateMachineTransition_s1m3f"), "Idle", "Secondary Attack", SubResource("AnimationNodeStateMachineTransition_chae2"), "Primary Attack", "Idle", SubResource("AnimationNodeStateMachineTransition_rh3bi"), "Secondary Attack", "Idle", SubResource("AnimationNodeStateMachineTransition_ar8mh")]
|
||||
graph_offset = Vector2(0, 25.9753)
|
||||
|
||||
[sub_resource type="Animation" id="Animation_lsphj"]
|
||||
length = 0.001
|
||||
@@ -2065,7 +2066,7 @@ script = ExtResource("1_vf7er")
|
||||
EnemyLoreInfo = ExtResource("2_ejhrk")
|
||||
|
||||
[node name="Sprite3D" type="Sprite3D" parent="."]
|
||||
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, -1.11516, 0)
|
||||
unique_name_in_owner = true
|
||||
billboard = 2
|
||||
texture_filter = 0
|
||||
render_priority = 100
|
||||
@@ -2080,21 +2081,18 @@ offset_bottom = 40.0
|
||||
disable_3d = true
|
||||
transparent_bg = true
|
||||
handle_input_locally = false
|
||||
size = Vector2i(1000, 1000)
|
||||
render_target_update_mode = 4
|
||||
|
||||
[node name="AnimatedSprite" type="AnimatedSprite2D" parent="Sprite3D/SubViewportContainer/SubViewport"]
|
||||
unique_name_in_owner = true
|
||||
texture_filter = 1
|
||||
position = Vector2(507, 440)
|
||||
scale = Vector2(0.5, 0.5)
|
||||
sprite_frames = SubResource("SpriteFrames_6drt6")
|
||||
animation = &"idle_front"
|
||||
offset = Vector2(250, 150)
|
||||
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="Sprite3D/SubViewportContainer/SubViewport"]
|
||||
position = Vector2(508, 440)
|
||||
scale = Vector2(0.5, 0.5)
|
||||
sprite_frames = SubResource("SpriteFrames_d844v")
|
||||
offset = Vector2(250, 150)
|
||||
|
||||
[node name="Hitbox" type="Area3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
|
||||
Reference in New Issue
Block a user