Merge remote-tracking branch 'origin/NewStory' into NewStory
# Conflicts: # Assets/MEDIEVAL_ANIMATIONS_MEGA_PACK_new/Bow/Materials/Adam_body_Metal.mat # Assets/MEDIEVAL_ANIMATIONS_MEGA_PACK_new/Bow/Materials/Adam_head_metal.mat # Assets/MEDIEVAL_ANIMATIONS_MEGA_PACK_new/Bow/Materials/Bow.mat # Assets/MEDIEVAL_ANIMATIONS_MEGA_PACK_new/Bow/Materials/Eva_Body_Metal.mat # Assets/MEDIEVAL_ANIMATIONS_MEGA_PACK_new/Bow/Materials/Eva_Head_Metal.mat
This commit is contained in:
@@ -339,13 +339,12 @@ namespace DemonBoss.Magic
|
|||||||
Gizmos.DrawWireCube(transform.position + Vector3.up * 2f, Vector3.one * 0.5f);
|
Gizmos.DrawWireCube(transform.position + Vector3.up * 2f, Vector3.one * 0.5f);
|
||||||
|
|
||||||
// HP text in Scene View
|
// HP text in Scene View
|
||||||
#if UNITY_EDITOR
|
|
||||||
if (Application.isPlaying)
|
if (Application.isPlaying)
|
||||||
{
|
{
|
||||||
UnityEditor.Handles.Label(transform.position + Vector3.up * 2.5f, $"HP: {currentHealth}/{maxHealth}");
|
UnityEditor.Handles.Label(transform.position + Vector3.up * 2.5f, $"HP: {currentHealth}/{maxHealth}");
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
public void AddHealth(int value)
|
public void AddHealth(int value)
|
||||||
{
|
{
|
||||||
@@ -362,6 +361,5 @@ namespace DemonBoss.Magic
|
|||||||
throw new System.NotImplementedException();
|
throw new System.NotImplementedException();
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
213
Assets/AI/Demon/FireBall new.prefab
Normal file
213
Assets/AI/Demon/FireBall new.prefab
Normal file
@@ -0,0 +1,213 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!1 &1947871717301538
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 4209731392266258}
|
||||||
|
- component: {fileID: -5586632368230897359}
|
||||||
|
- component: {fileID: 6785567375430979834}
|
||||||
|
m_Layer: 30
|
||||||
|
m_Name: FireBall new
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &4209731392266258
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1947871717301538}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: -0.7071068, y: 0, z: 0, w: 0.7071068}
|
||||||
|
m_LocalPosition: {x: 6.67, y: 1, z: -53.73}
|
||||||
|
m_LocalScale: {x: 0.25, y: 0.25, z: 0.25}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children:
|
||||||
|
- {fileID: 6802751815913059821}
|
||||||
|
m_Father: {fileID: 0}
|
||||||
|
m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0}
|
||||||
|
--- !u!136 &-5586632368230897359
|
||||||
|
CapsuleCollider:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1947871717301538}
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_IncludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_ExcludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_LayerOverridePriority: 0
|
||||||
|
m_IsTrigger: 1
|
||||||
|
m_ProvidesContacts: 0
|
||||||
|
m_Enabled: 1
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Radius: 1
|
||||||
|
m_Height: 0
|
||||||
|
m_Direction: 1
|
||||||
|
m_Center: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!114 &6785567375430979834
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1947871717301538}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 1a863cb5e6092ec4a936c4eb21bb9166, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
targetTag: Player
|
||||||
|
targetHeightOffset: 1
|
||||||
|
speed: 12
|
||||||
|
lockTime: 0.5
|
||||||
|
maxLifeTime: 60
|
||||||
|
arrivalTolerance: 0.25
|
||||||
|
damage: 5
|
||||||
|
knockbackForce: 5
|
||||||
|
enableDebug: 0
|
||||||
|
--- !u!1001 &6802374026672139437
|
||||||
|
PrefabInstance:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Modification:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TransformParent: {fileID: 4209731392266258}
|
||||||
|
m_Modifications:
|
||||||
|
- target: {fileID: 1363404153839300, guid: 6fca1031e82d1264a8f6d8d1d7a7cced, type: 3}
|
||||||
|
propertyPath: m_Name
|
||||||
|
value: Effect12
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4179900483688768, guid: 6fca1031e82d1264a8f6d8d1d7a7cced, type: 3}
|
||||||
|
propertyPath: m_LocalPosition.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4179900483688768, guid: 6fca1031e82d1264a8f6d8d1d7a7cced, type: 3}
|
||||||
|
propertyPath: m_LocalPosition.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4179900483688768, guid: 6fca1031e82d1264a8f6d8d1d7a7cced, type: 3}
|
||||||
|
propertyPath: m_LocalPosition.z
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4179900483688768, guid: 6fca1031e82d1264a8f6d8d1d7a7cced, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.w
|
||||||
|
value: 1
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4179900483688768, guid: 6fca1031e82d1264a8f6d8d1d7a7cced, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4179900483688768, guid: 6fca1031e82d1264a8f6d8d1d7a7cced, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4179900483688768, guid: 6fca1031e82d1264a8f6d8d1d7a7cced, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.z
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4179900483688768, guid: 6fca1031e82d1264a8f6d8d1d7a7cced, type: 3}
|
||||||
|
propertyPath: m_LocalEulerAnglesHint.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4179900483688768, guid: 6fca1031e82d1264a8f6d8d1d7a7cced, type: 3}
|
||||||
|
propertyPath: m_LocalEulerAnglesHint.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4179900483688768, guid: 6fca1031e82d1264a8f6d8d1d7a7cced, type: 3}
|
||||||
|
propertyPath: m_LocalEulerAnglesHint.z
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 114430605913307632, guid: 6fca1031e82d1264a8f6d8d1d7a7cced,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: Speed
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 114430605913307632, guid: 6fca1031e82d1264a8f6d8d1d7a7cced,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: Distance
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 114430605913307632, guid: 6fca1031e82d1264a8f6d8d1d7a7cced,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: m_Enabled
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 114430605913307632, guid: 6fca1031e82d1264a8f6d8d1d7a7cced,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: CollidesWith.m_Bits
|
||||||
|
value: 256
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 114587680334040632, guid: 6fca1031e82d1264a8f6d8d1d7a7cced,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: m_Enabled
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 199693142139168640, guid: 6fca1031e82d1264a8f6d8d1d7a7cced,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: m_Materials.Array.size
|
||||||
|
value: 1
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 199728937019303074, guid: 6fca1031e82d1264a8f6d8d1d7a7cced,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: m_Materials.Array.size
|
||||||
|
value: 1
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
m_RemovedComponents:
|
||||||
|
- {fileID: 114430605913307632, guid: 6fca1031e82d1264a8f6d8d1d7a7cced, type: 3}
|
||||||
|
- {fileID: 114587680334040632, guid: 6fca1031e82d1264a8f6d8d1d7a7cced, type: 3}
|
||||||
|
m_RemovedGameObjects: []
|
||||||
|
m_AddedGameObjects: []
|
||||||
|
m_AddedComponents:
|
||||||
|
- targetCorrespondingSourceObject: {fileID: 1294706121055886, guid: 6fca1031e82d1264a8f6d8d1d7a7cced,
|
||||||
|
type: 3}
|
||||||
|
insertIndex: -1
|
||||||
|
addedObject: {fileID: 1570972138348746864}
|
||||||
|
m_SourcePrefab: {fileID: 100100000, guid: 6fca1031e82d1264a8f6d8d1d7a7cced, type: 3}
|
||||||
|
--- !u!1 &6801133233205277219 stripped
|
||||||
|
GameObject:
|
||||||
|
m_CorrespondingSourceObject: {fileID: 1294706121055886, guid: 6fca1031e82d1264a8f6d8d1d7a7cced,
|
||||||
|
type: 3}
|
||||||
|
m_PrefabInstance: {fileID: 6802374026672139437}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
--- !u!114 &1570972138348746864
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 6801133233205277219}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_Version: 3
|
||||||
|
m_UsePipelineSettings: 1
|
||||||
|
m_AdditionalLightsShadowResolutionTier: 2
|
||||||
|
m_LightLayerMask: 1
|
||||||
|
m_RenderingLayers: 1
|
||||||
|
m_CustomShadowLayers: 0
|
||||||
|
m_ShadowLayerMask: 1
|
||||||
|
m_ShadowRenderingLayers: 1
|
||||||
|
m_LightCookieSize: {x: 1, y: 1}
|
||||||
|
m_LightCookieOffset: {x: 0, y: 0}
|
||||||
|
m_SoftShadowQuality: 0
|
||||||
|
--- !u!4 &6802751815913059821 stripped
|
||||||
|
Transform:
|
||||||
|
m_CorrespondingSourceObject: {fileID: 4179900483688768, guid: 6fca1031e82d1264a8f6d8d1d7a7cced,
|
||||||
|
type: 3}
|
||||||
|
m_PrefabInstance: {fileID: 6802374026672139437}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
8
Assets/AI/Demon/FireBall new.prefab.meta
Normal file
8
Assets/AI/Demon/FireBall new.prefab.meta
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 10813082aa17ea94f9eb5edcc37ac632
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 100100000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -1,12 +1,13 @@
|
|||||||
using Invector.vCharacterController.AI.FSMBehaviour;
|
using Invector.vCharacterController.AI.FSMBehaviour;
|
||||||
using Lean.Pool;
|
using Lean.Pool;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
using UnityEngine.Animations;
|
||||||
|
using UnityEngine.Playables;
|
||||||
|
|
||||||
namespace DemonBoss.Magic
|
namespace DemonBoss.Magic
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Spawns a meteor behind the BOSS and launches it toward the player's position
|
/// Spawns a meteor behind the BOSS and launches it toward the player's position.
|
||||||
/// Similar mechanics to FireballProjectile but coming from above
|
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[CreateAssetMenu(menuName = "Invector/FSM/Actions/DemonBoss/Call Meteor")]
|
[CreateAssetMenu(menuName = "Invector/FSM/Actions/DemonBoss/Call Meteor")]
|
||||||
public class SA_CallMeteor : vStateAction
|
public class SA_CallMeteor : vStateAction
|
||||||
@@ -31,18 +32,37 @@ namespace DemonBoss.Magic
|
|||||||
[Tooltip("Tag used to find the target (usually Player)")]
|
[Tooltip("Tag used to find the target (usually Player)")]
|
||||||
public string targetTag = "Player";
|
public string targetTag = "Player";
|
||||||
|
|
||||||
|
[Header("One-off Overlay Clip (No Animator Params)")]
|
||||||
|
public AnimationClip overlayClip;
|
||||||
|
|
||||||
|
[Tooltip("Playback speed (1 = normal)")] public float overlaySpeed = 1f;
|
||||||
|
[Tooltip("Blend-in seconds (instant in this minimal impl)")] public float overlayFadeIn = 0.10f;
|
||||||
|
[Tooltip("Blend-out seconds (instant in this minimal impl)")] public float overlayFadeOut = 0.10f;
|
||||||
|
|
||||||
[Header("Debug")]
|
[Header("Debug")]
|
||||||
public bool enableDebug = false;
|
public bool enableDebug = false;
|
||||||
|
|
||||||
private Transform _boss;
|
private Transform _boss;
|
||||||
private Transform _target;
|
private Transform _target;
|
||||||
|
|
||||||
|
// --- Playables runtime ---
|
||||||
|
private PlayableGraph _overlayGraph;
|
||||||
|
|
||||||
|
private AnimationPlayableOutput _overlayOutput;
|
||||||
|
private AnimationClipPlayable _overlayPlayable;
|
||||||
|
private bool _overlayPlaying;
|
||||||
|
private float _overlayStopAtTime;
|
||||||
|
|
||||||
public override void DoAction(vIFSMBehaviourController fsm, vFSMComponentExecutionType execType = vFSMComponentExecutionType.OnStateUpdate)
|
public override void DoAction(vIFSMBehaviourController fsm, vFSMComponentExecutionType execType = vFSMComponentExecutionType.OnStateUpdate)
|
||||||
{
|
{
|
||||||
if (execType == vFSMComponentExecutionType.OnStateEnter)
|
if (execType == vFSMComponentExecutionType.OnStateEnter)
|
||||||
{
|
{
|
||||||
OnEnter(fsm);
|
OnEnter(fsm);
|
||||||
}
|
}
|
||||||
|
else if (execType == vFSMComponentExecutionType.OnStateUpdate)
|
||||||
|
{
|
||||||
|
if (_overlayPlaying && Time.time >= _overlayStopAtTime) StopOverlayWithFade();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnEnter(vIFSMBehaviourController fsm)
|
private void OnEnter(vIFSMBehaviourController fsm)
|
||||||
@@ -58,7 +78,14 @@ namespace DemonBoss.Magic
|
|||||||
|
|
||||||
if (enableDebug) Debug.Log($"[SA_CallMeteor] Boss: {_boss.name}, Target: {_target.name}");
|
if (enableDebug) Debug.Log($"[SA_CallMeteor] Boss: {_boss.name}, Target: {_target.name}");
|
||||||
|
|
||||||
SpawnMeteor();
|
// Fire overlay clip (no Animator params)
|
||||||
|
PlayOverlayOnce(_boss);
|
||||||
|
|
||||||
|
// Optional: wait for castDelay before spawning (simple timer via Invoke)
|
||||||
|
if (castDelay > 0f)
|
||||||
|
_boss.gameObject.AddComponent<DelayedInvoker>().Init(castDelay, SpawnMeteor);
|
||||||
|
else
|
||||||
|
SpawnMeteor();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void SpawnMeteor()
|
private void SpawnMeteor()
|
||||||
@@ -101,5 +128,78 @@ namespace DemonBoss.Magic
|
|||||||
if (enableDebug) Debug.LogError("[SA_CallMeteor] Meteor prefab missing MeteorProjectile component!");
|
if (enableDebug) Debug.LogError("[SA_CallMeteor] Meteor prefab missing MeteorProjectile component!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void PlayOverlayOnce(Transform owner)
|
||||||
|
{
|
||||||
|
if (overlayClip == null) return;
|
||||||
|
|
||||||
|
var animator = owner.GetComponent<Animator>();
|
||||||
|
if (animator == null) return;
|
||||||
|
|
||||||
|
StopOverlayImmediate();
|
||||||
|
|
||||||
|
_overlayGraph = PlayableGraph.Create("ActionOverlay(CallMeteor)");
|
||||||
|
_overlayGraph.SetTimeUpdateMode(DirectorUpdateMode.GameTime);
|
||||||
|
|
||||||
|
_overlayPlayable = AnimationClipPlayable.Create(_overlayGraph, overlayClip);
|
||||||
|
_overlayPlayable.SetApplyFootIK(false);
|
||||||
|
_overlayPlayable.SetApplyPlayableIK(false);
|
||||||
|
_overlayPlayable.SetSpeed(Mathf.Max(0.0001f, overlaySpeed));
|
||||||
|
|
||||||
|
_overlayOutput = AnimationPlayableOutput.Create(_overlayGraph, "AnimOut", animator);
|
||||||
|
_overlayOutput.SetSourcePlayable(_overlayPlayable);
|
||||||
|
|
||||||
|
_overlayOutput.SetWeight(1f);
|
||||||
|
_overlayGraph.Play();
|
||||||
|
_overlayPlaying = true;
|
||||||
|
|
||||||
|
float len = overlayClip.length / Mathf.Max(0.0001f, overlaySpeed);
|
||||||
|
_overlayStopAtTime = Time.time + len;
|
||||||
|
|
||||||
|
if (enableDebug) Debug.Log("[SA_CallMeteor] Overlay clip started via Playables");
|
||||||
|
}
|
||||||
|
|
||||||
|
private void StopOverlayImmediate()
|
||||||
|
{
|
||||||
|
if (_overlayGraph.IsValid())
|
||||||
|
{
|
||||||
|
_overlayGraph.Stop();
|
||||||
|
_overlayGraph.Destroy();
|
||||||
|
}
|
||||||
|
_overlayPlaying = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void StopOverlayWithFade()
|
||||||
|
{
|
||||||
|
if (!_overlayPlaying) { StopOverlayImmediate(); return; }
|
||||||
|
if (_overlayOutput.IsOutputNull() == false) _overlayOutput.SetWeight(0f);
|
||||||
|
StopOverlayImmediate();
|
||||||
|
if (enableDebug) Debug.Log("[SA_CallMeteor] Overlay clip stopped");
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Tiny helper MonoBehaviour to delay a callback without coroutines here.
|
||||||
|
/// </summary>
|
||||||
|
private sealed class DelayedInvoker : MonoBehaviour
|
||||||
|
{
|
||||||
|
private float _timeLeft;
|
||||||
|
private System.Action _callback;
|
||||||
|
|
||||||
|
public void Init(float delay, System.Action callback)
|
||||||
|
{
|
||||||
|
_timeLeft = delay;
|
||||||
|
_callback = callback;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Update()
|
||||||
|
{
|
||||||
|
_timeLeft -= Time.deltaTime;
|
||||||
|
if (_timeLeft <= 0f)
|
||||||
|
{
|
||||||
|
try { _callback?.Invoke(); }
|
||||||
|
finally { Destroy(this); }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,187 +1,376 @@
|
|||||||
using Invector.vCharacterController.AI.FSMBehaviour;
|
using Invector.vCharacterController.AI.FSMBehaviour;
|
||||||
using Lean.Pool;
|
using Lean.Pool;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
using UnityEngine.Animations;
|
||||||
|
using UnityEngine.Playables;
|
||||||
|
|
||||||
namespace DemonBoss.Magic
|
namespace DemonBoss.Magic
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// StateAction for Magic Shield spell - boss casts magical shield for 5 seconds
|
/// Magic Shield
|
||||||
/// During casting boss stands still, after completion returns to Combat
|
/// Spawns shield FX, holds for 'shieldDuration', then plays End and cleans up.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[CreateAssetMenu(menuName = "Invector/FSM/Actions/DemonBoss/Cast Shield")]
|
[CreateAssetMenu(menuName = "Invector/FSM/Actions/DemonBoss/Cast Shield (Start/Keep/End)")]
|
||||||
public class SA_CastShield : vStateAction
|
public class SA_CastShield : vStateAction
|
||||||
{
|
{
|
||||||
public override string categoryName => "DemonBoss/Magic";
|
public override string categoryName => "DemonBoss/Magic";
|
||||||
public override string defaultName => "Cast Shield";
|
public override string defaultName => "Cast Shield";
|
||||||
|
|
||||||
[Header("Shield Configuration")]
|
[Header("Shield Logic")]
|
||||||
[Tooltip("Prefab with magical shield particle effect")]
|
[Tooltip("Prefab with magical shield particle effect")]
|
||||||
public GameObject shieldFXPrefab;
|
public GameObject shieldFXPrefab;
|
||||||
|
|
||||||
[Tooltip("Shield duration in seconds")]
|
[Tooltip("Shield duration in seconds (time spent in Keep phase before End)")]
|
||||||
public float shieldDuration = 5f;
|
public float shieldDuration = 5f;
|
||||||
|
|
||||||
[Tooltip("Animator bool parameter name for blocking state")]
|
[Tooltip("Animator bool parameter name for blocking state (optional)")]
|
||||||
public string animatorBlockingBool = "IsBlocking";
|
public string animatorBlockingBool = "IsBlocking";
|
||||||
|
|
||||||
|
[Header("Animation Clips (no Animator params)")]
|
||||||
|
[Tooltip("One-shot intro")]
|
||||||
|
public AnimationClip startClip;
|
||||||
|
|
||||||
|
[Tooltip("Looping hold/maintain")]
|
||||||
|
public AnimationClip keepClip;
|
||||||
|
|
||||||
|
[Tooltip("One-shot outro")]
|
||||||
|
public AnimationClip endClip;
|
||||||
|
|
||||||
|
[Header("Playback & Fades")]
|
||||||
|
[Tooltip("Global playback speed for all clips")]
|
||||||
|
public float clipSpeed = 1f;
|
||||||
|
|
||||||
|
[Tooltip("Seconds to crossfade between phases")]
|
||||||
|
public float crossfadeTime = 0.12f;
|
||||||
|
|
||||||
|
[Tooltip("If the state exits early, still play End quickly before full teardown")]
|
||||||
|
public bool playEndOnEarlyExit = true;
|
||||||
|
|
||||||
[Header("Debug")]
|
[Header("Debug")]
|
||||||
[Tooltip("Enable debug logging")]
|
public bool debugLogs = false;
|
||||||
public bool enableDebug = false;
|
|
||||||
|
|
||||||
private GameObject spawnedShield;
|
// --- Runtime (shield/FX) ---
|
||||||
private Animator npcAnimator;
|
private Transform _npc;
|
||||||
private Transform npcTransform;
|
|
||||||
private float shieldStartTime;
|
|
||||||
private bool shieldActive = false;
|
|
||||||
|
|
||||||
/// <summary>
|
private Animator _anim;
|
||||||
/// Main action execution method called by FSM
|
private GameObject _spawnedShieldFX;
|
||||||
/// </summary>
|
private float _shieldStartTime;
|
||||||
public override void DoAction(vIFSMBehaviourController fsmBehaviour, vFSMComponentExecutionType executionType = vFSMComponentExecutionType.OnStateUpdate)
|
private bool _shieldActive;
|
||||||
|
|
||||||
|
// --- Playables graph state ---
|
||||||
|
private PlayableGraph _graph;
|
||||||
|
|
||||||
|
private AnimationPlayableOutput _output;
|
||||||
|
private AnimationMixerPlayable _mixer; // 2-way mixer for crossfades
|
||||||
|
|
||||||
|
private AnimationClipPlayable _pStart;
|
||||||
|
private AnimationClipPlayable _pKeep;
|
||||||
|
private AnimationClipPlayable _pEnd;
|
||||||
|
|
||||||
|
private enum Phase
|
||||||
|
{ None, Start, Keep, End, Done }
|
||||||
|
|
||||||
|
private Phase _phase = Phase.None;
|
||||||
|
|
||||||
|
// crossfade bookkeeping
|
||||||
|
private int _fromInput = -1; // 0 or 1
|
||||||
|
|
||||||
|
private int _toInput = -1; // 0 or 1
|
||||||
|
private float _fadeT0; // Time.time at fade start
|
||||||
|
private float _fadeDur; // seconds
|
||||||
|
private bool _fading;
|
||||||
|
|
||||||
|
// which clip is bound to each input
|
||||||
|
private AnimationClipPlayable _input0;
|
||||||
|
|
||||||
|
private AnimationClipPlayable _input1;
|
||||||
|
|
||||||
|
// timers for auto-advance
|
||||||
|
private float _phaseScheduledEnd = 0f; // absolute Time.time when Start/End should be done
|
||||||
|
|
||||||
|
public override void DoAction(vIFSMBehaviourController fsm, vFSMComponentExecutionType execType = vFSMComponentExecutionType.OnStateUpdate)
|
||||||
{
|
{
|
||||||
if (executionType == vFSMComponentExecutionType.OnStateEnter)
|
if (execType == vFSMComponentExecutionType.OnStateEnter) OnEnter(fsm);
|
||||||
|
else if (execType == vFSMComponentExecutionType.OnStateUpdate) OnUpdate(fsm);
|
||||||
|
else if (execType == vFSMComponentExecutionType.OnStateExit) OnExit(fsm);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------ FSM Hooks ------------------
|
||||||
|
|
||||||
|
private void OnEnter(vIFSMBehaviourController fsm)
|
||||||
|
{
|
||||||
|
_npc = fsm.transform;
|
||||||
|
_anim = _npc.GetComponent<Animator>();
|
||||||
|
|
||||||
|
if (_anim != null && !string.IsNullOrEmpty(animatorBlockingBool))
|
||||||
|
_anim.SetBool(animatorBlockingBool, true);
|
||||||
|
|
||||||
|
SpawnShieldFX();
|
||||||
|
|
||||||
|
_shieldStartTime = Time.time;
|
||||||
|
_shieldActive = true;
|
||||||
|
|
||||||
|
BuildGraphIfNeeded();
|
||||||
|
|
||||||
|
if (startClip != null)
|
||||||
{
|
{
|
||||||
OnStateEnter(fsmBehaviour);
|
EnterStart();
|
||||||
}
|
}
|
||||||
else if (executionType == vFSMComponentExecutionType.OnStateUpdate)
|
else if (keepClip != null)
|
||||||
{
|
{
|
||||||
OnStateUpdate(fsmBehaviour);
|
EnterKeep();
|
||||||
}
|
}
|
||||||
else if (executionType == vFSMComponentExecutionType.OnStateExit)
|
else
|
||||||
{
|
{
|
||||||
OnStateExit(fsmBehaviour);
|
if (debugLogs) Debug.Log("[SA_CastShield] No Start/Keep clips; waiting to End.");
|
||||||
|
_phase = Phase.Keep; // logical keep (no anim)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
private void OnUpdate(vIFSMBehaviourController fsm)
|
||||||
/// Called when entering state - starts shield casting
|
|
||||||
/// </summary>
|
|
||||||
private void OnStateEnter(vIFSMBehaviourController fsmBehaviour)
|
|
||||||
{
|
{
|
||||||
if (enableDebug) Debug.Log("[SA_CastShield] Entering shield casting state");
|
// handle crossfade
|
||||||
|
if (_fading)
|
||||||
// Store NPC references
|
|
||||||
npcTransform = fsmBehaviour.transform;
|
|
||||||
npcAnimator = npcTransform.GetComponent<Animator>();
|
|
||||||
|
|
||||||
var aiController = fsmBehaviour as Invector.vCharacterController.AI.vIControlAI;
|
|
||||||
if (aiController != null)
|
|
||||||
{
|
{
|
||||||
aiController.Stop();
|
float u = Mathf.Clamp01((Time.time - _fadeT0) / Mathf.Max(0.0001f, _fadeDur));
|
||||||
if (enableDebug) Debug.Log("[SA_CastShield] AI stopped");
|
if (_fromInput >= 0) _mixer.SetInputWeight(_fromInput, 1f - u);
|
||||||
|
if (_toInput >= 0) _mixer.SetInputWeight(_toInput, u);
|
||||||
|
if (u >= 1f) _fading = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (npcAnimator != null && !string.IsNullOrEmpty(animatorBlockingBool))
|
// auto-advance phases based on timers
|
||||||
|
if (_phase == Phase.Start && Time.time >= _phaseScheduledEnd)
|
||||||
{
|
{
|
||||||
npcAnimator.SetBool(animatorBlockingBool, true);
|
if (keepClip != null) CrossfadeToKeep();
|
||||||
if (enableDebug) Debug.Log($"[SA_CastShield] Set bool: {animatorBlockingBool} = true");
|
else BeginEnd(); // no keep; go straight to End window
|
||||||
}
|
}
|
||||||
|
else if (_phase == Phase.Keep)
|
||||||
SpawnShieldEffect(fsmBehaviour);
|
|
||||||
|
|
||||||
shieldStartTime = Time.time;
|
|
||||||
shieldActive = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Called every frame during state duration
|
|
||||||
/// </summary>
|
|
||||||
private void OnStateUpdate(vIFSMBehaviourController fsmBehaviour)
|
|
||||||
{
|
|
||||||
if (shieldActive && Time.time - shieldStartTime >= shieldDuration)
|
|
||||||
{
|
{
|
||||||
if (enableDebug) Debug.Log("[SA_CastShield] Shield time passed, finishing state");
|
// When shield timer is up, begin End
|
||||||
FinishShield(fsmBehaviour);
|
if (_shieldActive && (Time.time - _shieldStartTime) >= shieldDuration)
|
||||||
|
{
|
||||||
|
BeginEnd();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (_phase == Phase.End && Time.time >= _phaseScheduledEnd)
|
||||||
|
{
|
||||||
|
// End completed
|
||||||
|
_phase = Phase.Done;
|
||||||
|
TeardownGraph();
|
||||||
|
CleanupShieldFX();
|
||||||
|
_shieldActive = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
private void OnExit(vIFSMBehaviourController fsm)
|
||||||
/// Called when exiting state - cleanup
|
|
||||||
/// </summary>
|
|
||||||
private void OnStateExit(vIFSMBehaviourController fsmBehaviour)
|
|
||||||
{
|
{
|
||||||
if (enableDebug) Debug.Log("[SA_CastShield] Exiting shield state");
|
if (_anim != null && !string.IsNullOrEmpty(animatorBlockingBool))
|
||||||
|
_anim.SetBool(animatorBlockingBool, false);
|
||||||
|
|
||||||
if (npcAnimator != null && !string.IsNullOrEmpty(animatorBlockingBool))
|
// If we left early, optionally play End briefly (best-effort)
|
||||||
|
if (playEndOnEarlyExit && _phase != Phase.End && _phase != Phase.Done && endClip != null)
|
||||||
{
|
{
|
||||||
npcAnimator.SetBool(animatorBlockingBool, false);
|
if (debugLogs) Debug.Log("[SA_CastShield] Early exit: playing End quickly.");
|
||||||
if (enableDebug) Debug.Log($"[SA_CastShield] Set bool: {animatorBlockingBool} = false");
|
// build graph if it was never built (e.g., no Start/Keep)
|
||||||
|
BuildGraphIfNeeded();
|
||||||
|
CrossfadeTo(endClip, out _pEnd, quick: true);
|
||||||
|
_phase = Phase.End;
|
||||||
|
_phaseScheduledEnd = Time.time + Mathf.Min(endClip.length / SafeSpeed(), 0.25f); // quick outro
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// otherwise normal cleanup
|
||||||
|
TeardownGraph();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (shieldActive)
|
CleanupShieldFX();
|
||||||
{
|
_shieldActive = false;
|
||||||
CleanupShield();
|
|
||||||
}
|
|
||||||
|
|
||||||
var aiController = fsmBehaviour as Invector.vCharacterController.AI.vIControlAI;
|
|
||||||
if (aiController != null)
|
|
||||||
{
|
|
||||||
if (enableDebug) Debug.Log("[SA_CastShield] AI resumed");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
// ------------------ Phase Transitions ------------------
|
||||||
/// Spawns magical shield particle effect
|
|
||||||
/// </summary>
|
private void EnterStart()
|
||||||
private void SpawnShieldEffect(vIFSMBehaviourController fsmBehaviour)
|
|
||||||
{
|
{
|
||||||
if (shieldFXPrefab == null)
|
CrossfadeTo(startClip, out _pStart, quick: false);
|
||||||
|
_phase = Phase.Start;
|
||||||
|
_phaseScheduledEnd = Time.time + (startClip.length / SafeSpeed());
|
||||||
|
if (debugLogs) Debug.Log("[SA_CastShield] Start phase.");
|
||||||
|
}
|
||||||
|
|
||||||
|
private void CrossfadeToKeep()
|
||||||
|
{
|
||||||
|
if (keepClip == null)
|
||||||
{
|
{
|
||||||
Debug.LogWarning("[SA_CastShield] Missing shieldFXPrefab!");
|
BeginEnd();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
CrossfadeTo(keepClip, out _pKeep, quick: false, loop: true);
|
||||||
// Spawn shield at NPC's position and rotation
|
_phase = Phase.Keep;
|
||||||
Vector3 spawnPosition = npcTransform.position;
|
if (debugLogs) Debug.Log("[SA_CastShield] Switched to Keep (loop).");
|
||||||
Quaternion spawnRotation = npcTransform.rotation;
|
|
||||||
|
|
||||||
spawnedShield = LeanPool.Spawn(shieldFXPrefab, spawnPosition, spawnRotation);
|
|
||||||
|
|
||||||
if (enableDebug) Debug.Log($"[SA_CastShield] Shield spawned at NPC position: {spawnPosition}");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
private void EnterKeep()
|
||||||
/// Finishes shield operation and transitions to next state
|
|
||||||
/// </summary>
|
|
||||||
private void FinishShield(vIFSMBehaviourController fsmBehaviour)
|
|
||||||
{
|
{
|
||||||
shieldActive = false;
|
CrossfadeTo(keepClip, out _pKeep, quick: false, loop: true);
|
||||||
CleanupShield();
|
_phase = Phase.Keep;
|
||||||
|
if (debugLogs) Debug.Log("[SA_CastShield] Entered Keep directly.");
|
||||||
DEC_CheckCooldown.SetCooldownStatic(fsmBehaviour, "Shield", 15f);
|
|
||||||
|
|
||||||
// End state - FSM will transition to next state
|
|
||||||
// FYI: In Invector FSM, state completion is handled automatically
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
private void BeginEnd()
|
||||||
/// Cleans up spawned shield
|
|
||||||
/// </summary>
|
|
||||||
private void CleanupShield()
|
|
||||||
{
|
{
|
||||||
if (spawnedShield != null)
|
if (endClip == null)
|
||||||
{
|
{
|
||||||
LeanPool.Despawn(spawnedShield);
|
// No end clip; just finish
|
||||||
spawnedShield = null;
|
_phase = Phase.Done;
|
||||||
if (enableDebug) Debug.Log("[SA_CastShield] Shield despawned");
|
TeardownGraph();
|
||||||
|
CleanupShieldFX();
|
||||||
|
_shieldActive = false;
|
||||||
|
if (debugLogs) Debug.Log("[SA_CastShield] No End clip; finished.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
CrossfadeTo(endClip, out _pEnd, quick: false);
|
||||||
|
_phase = Phase.End;
|
||||||
|
_phaseScheduledEnd = Time.time + (endClip.length / SafeSpeed());
|
||||||
|
if (debugLogs) Debug.Log("[SA_CastShield] End phase.");
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------ Graph Setup / Crossfade ------------------
|
||||||
|
|
||||||
|
private void BuildGraphIfNeeded()
|
||||||
|
{
|
||||||
|
if (_graph.IsValid()) return;
|
||||||
|
|
||||||
|
if (_anim == null)
|
||||||
|
{
|
||||||
|
_anim = _npc ? _npc.GetComponent<Animator>() : null;
|
||||||
|
if (_anim == null)
|
||||||
|
{
|
||||||
|
if (debugLogs) Debug.LogWarning("[SA_CastShield] No Animator found; animation disabled.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
_graph = PlayableGraph.Create("ShieldOverlayGraph");
|
||||||
|
_graph.SetTimeUpdateMode(DirectorUpdateMode.GameTime);
|
||||||
|
|
||||||
|
_mixer = AnimationMixerPlayable.Create(_graph, 2); // 2-way mixer
|
||||||
|
_mixer.SetInputWeight(0, 0f);
|
||||||
|
_mixer.SetInputWeight(1, 0f);
|
||||||
|
|
||||||
|
_output = AnimationPlayableOutput.Create(_graph, "AnimOut", _anim);
|
||||||
|
_output.SetSourcePlayable(_mixer);
|
||||||
|
_output.SetWeight(1f);
|
||||||
|
|
||||||
|
_graph.Play();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void TeardownGraph()
|
||||||
|
{
|
||||||
|
if (_graph.IsValid())
|
||||||
|
{
|
||||||
|
_graph.Stop();
|
||||||
|
_graph.Destroy();
|
||||||
|
}
|
||||||
|
_input0 = default;
|
||||||
|
_input1 = default;
|
||||||
|
_fromInput = _toInput = -1;
|
||||||
|
_fading = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
private float SafeSpeed() => Mathf.Max(0.0001f, clipSpeed);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Fades from whatever is currently audible to the given clip.
|
||||||
|
/// Reuses the 2 inputs; swaps playables as needed.
|
||||||
|
/// </summary>
|
||||||
|
private void CrossfadeTo(AnimationClip clip,
|
||||||
|
out AnimationClipPlayable playableOut,
|
||||||
|
bool quick,
|
||||||
|
bool loop = false)
|
||||||
|
{
|
||||||
|
playableOut = default;
|
||||||
|
|
||||||
|
if (!_graph.IsValid() || clip == null) return;
|
||||||
|
|
||||||
|
float speed = SafeSpeed();
|
||||||
|
|
||||||
|
// Prepare or reuse a slot (two inputs that we swap between)
|
||||||
|
// Choose the silent input as target; if none is silent, pick the opposite of the currently "from".
|
||||||
|
int targetInput = (_mixer.GetInputWeight(0) < 0.0001f) ? 0 : (_mixer.GetInputWeight(1) < 0.0001f) ? 1 : (_toInput == 0 ? 1 : 0);
|
||||||
|
|
||||||
|
// Destroy existing playable on that input if any
|
||||||
|
var currentPlayableOnTarget = (AnimationClipPlayable)_mixer.GetInput(targetInput);
|
||||||
|
if (currentPlayableOnTarget.IsValid())
|
||||||
|
{
|
||||||
|
_graph.Disconnect(_mixer, targetInput);
|
||||||
|
currentPlayableOnTarget.Destroy();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create new clip playable
|
||||||
|
var newPlayable = AnimationClipPlayable.Create(_graph, clip);
|
||||||
|
newPlayable.SetApplyFootIK(false);
|
||||||
|
newPlayable.SetApplyPlayableIK(false);
|
||||||
|
newPlayable.SetSpeed(speed);
|
||||||
|
|
||||||
|
// Connect to mixer
|
||||||
|
_graph.Connect(newPlayable, 0, _mixer, targetInput);
|
||||||
|
_mixer.SetInputWeight(targetInput, 0f);
|
||||||
|
|
||||||
|
// Cache which playable is on which slot for optional debug
|
||||||
|
if (targetInput == 0) _input0 = newPlayable; else _input1 = newPlayable;
|
||||||
|
|
||||||
|
// Determine current audible input to fade from
|
||||||
|
int sourceInput = (targetInput == 0) ? 1 : 0;
|
||||||
|
float wSource = _mixer.GetInputWeight(sourceInput);
|
||||||
|
bool hasSource = wSource > 0.0001f && _mixer.GetInput(sourceInput).IsValid();
|
||||||
|
|
||||||
|
// Start from beginning for new phase
|
||||||
|
newPlayable.SetTime(0);
|
||||||
|
playableOut = newPlayable;
|
||||||
|
|
||||||
|
// Configure fade
|
||||||
|
_fromInput = hasSource ? sourceInput : -1;
|
||||||
|
_toInput = targetInput;
|
||||||
|
_fadeDur = Mathf.Max(0f, quick ? Mathf.Min(0.06f, crossfadeTime) : crossfadeTime);
|
||||||
|
_fadeT0 = Time.time;
|
||||||
|
_fading = _fadeDur > 0f && hasSource;
|
||||||
|
|
||||||
|
// Set immediate weights if not fading
|
||||||
|
if (!_fading)
|
||||||
|
{
|
||||||
|
if (_fromInput >= 0) _mixer.SetInputWeight(_fromInput, 0f);
|
||||||
|
_mixer.SetInputWeight(_toInput, 1f);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
// ------------------ FX Helpers ------------------
|
||||||
/// Checks if shield is currently active
|
|
||||||
/// </summary>
|
private void SpawnShieldFX()
|
||||||
public bool IsShieldActive()
|
|
||||||
{
|
{
|
||||||
return shieldActive;
|
if (shieldFXPrefab == null) return;
|
||||||
|
_spawnedShieldFX = LeanPool.Spawn(shieldFXPrefab, _npc.position, _npc.rotation);
|
||||||
|
if (debugLogs) Debug.Log("[SA_CastShield] Shield FX spawned.");
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
private void CleanupShieldFX()
|
||||||
/// Returns remaining shield time
|
{
|
||||||
/// </summary>
|
if (_spawnedShieldFX != null)
|
||||||
|
{
|
||||||
|
LeanPool.Despawn(_spawnedShieldFX);
|
||||||
|
_spawnedShieldFX = null;
|
||||||
|
if (debugLogs) Debug.Log("[SA_CastShield] Shield FX despawned.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------ Public Query ------------------
|
||||||
|
|
||||||
|
public bool IsShieldActive() => _shieldActive;
|
||||||
|
|
||||||
public float GetRemainingShieldTime()
|
public float GetRemainingShieldTime()
|
||||||
{
|
{
|
||||||
if (!shieldActive) return 0f;
|
if (!_shieldActive) return 0f;
|
||||||
return Mathf.Max(0f, shieldDuration - (Time.time - shieldStartTime));
|
float t = Mathf.Max(0f, shieldDuration - (Time.time - _shieldStartTime));
|
||||||
|
return (_phase == Phase.End || _phase == Phase.Done) ? 0f : t;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,13 +1,14 @@
|
|||||||
using Invector.vCharacterController.AI.FSMBehaviour;
|
using Invector.vCharacterController.AI.FSMBehaviour;
|
||||||
using Lean.Pool;
|
using Lean.Pool;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
using UnityEngine.Animations;
|
||||||
|
using UnityEngine.Playables;
|
||||||
|
|
||||||
namespace DemonBoss.Magic
|
namespace DemonBoss.Magic
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Spawns exactly 3 crystal turrets around the opponent.
|
/// Spawns exactly 3 crystal turrets around the opponent.
|
||||||
/// Now with per-spawn randomness: global rotation offset and per-turret angle/radius jitter.
|
/// Now with per-spawn randomness and position validation.
|
||||||
/// Validates positions (ground/obstacles) and enforces minimum separation.
|
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[CreateAssetMenu(menuName = "Invector/FSM/Actions/DemonBoss/Spawn 3 Turrets Radial")]
|
[CreateAssetMenu(menuName = "Invector/FSM/Actions/DemonBoss/Spawn 3 Turrets Radial")]
|
||||||
public class SA_SpawnTurretSmart : vStateAction
|
public class SA_SpawnTurretSmart : vStateAction
|
||||||
@@ -43,6 +44,13 @@ namespace DemonBoss.Magic
|
|||||||
[Tooltip("Per-turret radius jitter (meters). 0 = disabled.")]
|
[Tooltip("Per-turret radius jitter (meters). 0 = disabled.")]
|
||||||
public float perTurretRadiusJitter = 0.75f;
|
public float perTurretRadiusJitter = 0.75f;
|
||||||
|
|
||||||
|
[Header("One-off Overlay Clip (No Animator Params)")]
|
||||||
|
public AnimationClip overlayClip;
|
||||||
|
|
||||||
|
[Tooltip("Playback speed (1 = normal)")] public float overlaySpeed = 1f;
|
||||||
|
[Tooltip("Blend-in seconds (instant in this minimal impl)")] public float overlayFadeIn = 0.10f;
|
||||||
|
[Tooltip("Blend-out seconds (instant in this minimal impl)")] public float overlayFadeOut = 0.10f;
|
||||||
|
|
||||||
[Header("Debug")]
|
[Header("Debug")]
|
||||||
public bool enableDebug = false;
|
public bool enableDebug = false;
|
||||||
|
|
||||||
@@ -52,11 +60,25 @@ namespace DemonBoss.Magic
|
|||||||
private Transform npcTransform;
|
private Transform npcTransform;
|
||||||
private Transform playerTransform;
|
private Transform playerTransform;
|
||||||
|
|
||||||
private readonly System.Collections.Generic.List<Vector3> _lastPlanned = new System.Collections.Generic.List<Vector3>(3);
|
private readonly System.Collections.Generic.List<Vector3> _lastPlanned =
|
||||||
|
new System.Collections.Generic.List<Vector3>(3);
|
||||||
|
|
||||||
|
// --- Playables runtime ---
|
||||||
|
private PlayableGraph _overlayGraph;
|
||||||
|
|
||||||
|
private AnimationPlayableOutput _overlayOutput;
|
||||||
|
private AnimationClipPlayable _overlayPlayable;
|
||||||
|
private bool _overlayPlaying;
|
||||||
|
private float _overlayStopAtTime;
|
||||||
|
|
||||||
public override void DoAction(vIFSMBehaviourController fsmBehaviour, vFSMComponentExecutionType executionType = vFSMComponentExecutionType.OnStateUpdate)
|
public override void DoAction(vIFSMBehaviourController fsmBehaviour, vFSMComponentExecutionType executionType = vFSMComponentExecutionType.OnStateUpdate)
|
||||||
{
|
{
|
||||||
if (executionType == vFSMComponentExecutionType.OnStateEnter) OnStateEnter(fsmBehaviour);
|
if (executionType == vFSMComponentExecutionType.OnStateEnter) OnStateEnter(fsmBehaviour);
|
||||||
|
else if (executionType == vFSMComponentExecutionType.OnStateUpdate)
|
||||||
|
{
|
||||||
|
// Auto-stop overlay when finished
|
||||||
|
if (_overlayPlaying && Time.time >= _overlayStopAtTime) StopOverlayWithFade();
|
||||||
|
}
|
||||||
else if (executionType == vFSMComponentExecutionType.OnStateExit) OnStateExit(fsmBehaviour);
|
else if (executionType == vFSMComponentExecutionType.OnStateExit) OnStateExit(fsmBehaviour);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -70,6 +92,8 @@ namespace DemonBoss.Magic
|
|||||||
if (npcAnimator != null && !string.IsNullOrEmpty(animatorBlockingBool))
|
if (npcAnimator != null && !string.IsNullOrEmpty(animatorBlockingBool))
|
||||||
npcAnimator.SetBool(animatorBlockingBool, true);
|
npcAnimator.SetBool(animatorBlockingBool, true);
|
||||||
|
|
||||||
|
PlayOverlayOnce(npcTransform);
|
||||||
|
|
||||||
SpawnThreeTurretsRadial(fsmBehaviour);
|
SpawnThreeTurretsRadial(fsmBehaviour);
|
||||||
|
|
||||||
DEC_CheckCooldown.SetCooldownStatic(fsmBehaviour, "Turret", 12f);
|
DEC_CheckCooldown.SetCooldownStatic(fsmBehaviour, "Turret", 12f);
|
||||||
@@ -79,6 +103,8 @@ namespace DemonBoss.Magic
|
|||||||
{
|
{
|
||||||
if (npcAnimator != null && !string.IsNullOrEmpty(animatorBlockingBool))
|
if (npcAnimator != null && !string.IsNullOrEmpty(animatorBlockingBool))
|
||||||
npcAnimator.SetBool(animatorBlockingBool, false);
|
npcAnimator.SetBool(animatorBlockingBool, false);
|
||||||
|
|
||||||
|
StopOverlayWithFade();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void FindPlayer(vIFSMBehaviourController fsmBehaviour)
|
private void FindPlayer(vIFSMBehaviourController fsmBehaviour)
|
||||||
@@ -270,5 +296,54 @@ namespace DemonBoss.Magic
|
|||||||
prevPoint = newPoint;
|
prevPoint = newPoint;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void PlayOverlayOnce(Transform owner)
|
||||||
|
{
|
||||||
|
if (overlayClip == null) return;
|
||||||
|
|
||||||
|
if (npcAnimator == null)
|
||||||
|
npcAnimator = owner.GetComponent<Animator>();
|
||||||
|
if (npcAnimator == null) return;
|
||||||
|
|
||||||
|
StopOverlayImmediate(); // safety
|
||||||
|
|
||||||
|
_overlayGraph = PlayableGraph.Create("ActionOverlay(SpawnTurret)");
|
||||||
|
_overlayGraph.SetTimeUpdateMode(DirectorUpdateMode.GameTime);
|
||||||
|
|
||||||
|
_overlayPlayable = AnimationClipPlayable.Create(_overlayGraph, overlayClip);
|
||||||
|
_overlayPlayable.SetApplyFootIK(false);
|
||||||
|
_overlayPlayable.SetApplyPlayableIK(false);
|
||||||
|
_overlayPlayable.SetSpeed(Mathf.Max(0.0001f, overlaySpeed));
|
||||||
|
|
||||||
|
_overlayOutput = AnimationPlayableOutput.Create(_overlayGraph, "AnimOut", npcAnimator);
|
||||||
|
_overlayOutput.SetSourcePlayable(_overlayPlayable);
|
||||||
|
|
||||||
|
_overlayOutput.SetWeight(1f);
|
||||||
|
_overlayGraph.Play();
|
||||||
|
_overlayPlaying = true;
|
||||||
|
|
||||||
|
float len = overlayClip.length / Mathf.Max(0.0001f, overlaySpeed);
|
||||||
|
_overlayStopAtTime = Time.time + len;
|
||||||
|
|
||||||
|
if (enableDebug) Debug.Log("[SA_SpawnTurretSmart] Overlay clip started via Playables");
|
||||||
|
}
|
||||||
|
|
||||||
|
private void StopOverlayImmediate()
|
||||||
|
{
|
||||||
|
if (_overlayGraph.IsValid())
|
||||||
|
{
|
||||||
|
_overlayGraph.Stop();
|
||||||
|
_overlayGraph.Destroy();
|
||||||
|
}
|
||||||
|
_overlayPlaying = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void StopOverlayWithFade()
|
||||||
|
{
|
||||||
|
if (!_overlayPlaying) { StopOverlayImmediate(); return; }
|
||||||
|
if (_overlayOutput.IsOutputNull() == false) _overlayOutput.SetWeight(0f);
|
||||||
|
StopOverlayImmediate();
|
||||||
|
if (enableDebug) Debug.Log("[SA_SpawnTurretSmart] Overlay clip stopped");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,232 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!1 &115880
|
|
||||||
GameObject:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
serializedVersion: 6
|
|
||||||
m_Component:
|
|
||||||
- component: {fileID: 417168}
|
|
||||||
- component: {fileID: 3365858}
|
|
||||||
- component: {fileID: 2323612}
|
|
||||||
- component: {fileID: 13662188}
|
|
||||||
- component: {fileID: 7020133711031364094}
|
|
||||||
- component: {fileID: -8194063383422297065}
|
|
||||||
- component: {fileID: 1536958584606674588}
|
|
||||||
- component: {fileID: 8851143338676511289}
|
|
||||||
m_Layer: 26
|
|
||||||
m_Name: Turet
|
|
||||||
m_TagString: Untagged
|
|
||||||
m_Icon: {fileID: 0}
|
|
||||||
m_NavMeshLayer: 0
|
|
||||||
m_StaticEditorFlags: 4294967295
|
|
||||||
m_IsActive: 1
|
|
||||||
--- !u!4 &417168
|
|
||||||
Transform:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 115880}
|
|
||||||
serializedVersion: 2
|
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
|
||||||
m_LocalPosition: {x: -3.8250632, y: -7.1673625e-17, z: 3.2278929}
|
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
|
||||||
m_ConstrainProportionsScale: 0
|
|
||||||
m_Children:
|
|
||||||
- {fileID: 8411050209285398990}
|
|
||||||
m_Father: {fileID: 0}
|
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
|
||||||
--- !u!33 &3365858
|
|
||||||
MeshFilter:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 115880}
|
|
||||||
m_Mesh: {fileID: 4300002, guid: dee9a5e3bb15d7740bde7911bad2ba90, type: 3}
|
|
||||||
--- !u!23 &2323612
|
|
||||||
MeshRenderer:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 115880}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_CastShadows: 1
|
|
||||||
m_ReceiveShadows: 1
|
|
||||||
m_DynamicOccludee: 1
|
|
||||||
m_StaticShadowCaster: 0
|
|
||||||
m_MotionVectors: 1
|
|
||||||
m_LightProbeUsage: 1
|
|
||||||
m_ReflectionProbeUsage: 1
|
|
||||||
m_RayTracingMode: 2
|
|
||||||
m_RayTraceProcedural: 0
|
|
||||||
m_RayTracingAccelStructBuildFlagsOverride: 0
|
|
||||||
m_RayTracingAccelStructBuildFlags: 1
|
|
||||||
m_SmallMeshCulling: 1
|
|
||||||
m_RenderingLayerMask: 1
|
|
||||||
m_RendererPriority: 0
|
|
||||||
m_Materials:
|
|
||||||
- {fileID: 2100000, guid: 30d0d8732a281d349a5abc48f8171e83, type: 2}
|
|
||||||
m_StaticBatchInfo:
|
|
||||||
firstSubMesh: 0
|
|
||||||
subMeshCount: 0
|
|
||||||
m_StaticBatchRoot: {fileID: 0}
|
|
||||||
m_ProbeAnchor: {fileID: 0}
|
|
||||||
m_LightProbeVolumeOverride: {fileID: 0}
|
|
||||||
m_ScaleInLightmap: 1
|
|
||||||
m_ReceiveGI: 1
|
|
||||||
m_PreserveUVs: 0
|
|
||||||
m_IgnoreNormalsForChartDetection: 0
|
|
||||||
m_ImportantGI: 0
|
|
||||||
m_StitchLightmapSeams: 1
|
|
||||||
m_SelectedEditorRenderState: 3
|
|
||||||
m_MinimumChartSize: 4
|
|
||||||
m_AutoUVMaxDistance: 0.5
|
|
||||||
m_AutoUVMaxAngle: 89
|
|
||||||
m_LightmapParameters: {fileID: 0}
|
|
||||||
m_SortingLayerID: 0
|
|
||||||
m_SortingLayer: 0
|
|
||||||
m_SortingOrder: 0
|
|
||||||
m_AdditionalVertexStreams: {fileID: 0}
|
|
||||||
--- !u!136 &13662188
|
|
||||||
CapsuleCollider:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 115880}
|
|
||||||
m_Material: {fileID: 0}
|
|
||||||
m_IncludeLayers:
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Bits: 0
|
|
||||||
m_ExcludeLayers:
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Bits: 0
|
|
||||||
m_LayerOverridePriority: 0
|
|
||||||
m_IsTrigger: 1
|
|
||||||
m_ProvidesContacts: 0
|
|
||||||
m_Enabled: 1
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Radius: 0.58
|
|
||||||
m_Height: 2.64
|
|
||||||
m_Direction: 1
|
|
||||||
m_Center: {x: 0.0078576505, y: 1.0259461, z: -0.052128524}
|
|
||||||
--- !u!114 &7020133711031364094
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 115880}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: 906d915677721914dbe9708f218f574a, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
muzzle: {fileID: 8411050209285398990}
|
|
||||||
fireballPrefab: {fileID: 1947871717301538, guid: 9591667a35466484096c6e63785e136c,
|
|
||||||
type: 3}
|
|
||||||
fireRate: 6
|
|
||||||
maxShots: 10
|
|
||||||
despawnDelay: 10
|
|
||||||
initialStaggerRange: {x: 0, y: 0.6}
|
|
||||||
fireRateJitter: 5
|
|
||||||
aimJitterDegrees: 0
|
|
||||||
turnSpeed: 0
|
|
||||||
idleSpinSpeed: 0
|
|
||||||
aimTolerance: 360
|
|
||||||
autoFindPlayer: 1
|
|
||||||
playerTag: Player
|
|
||||||
maxShootingRange: 50
|
|
||||||
useShootEffects: 1
|
|
||||||
muzzleFlashPrefab: {fileID: 1514282284419572, guid: ad259b29cbefa54479b68c8a4960565a,
|
|
||||||
type: 3}
|
|
||||||
shootSound: {fileID: 8300000, guid: f58578c3593cfcd40a4b21417e49421a, type: 3}
|
|
||||||
enableDebug: 1
|
|
||||||
showGizmos: 1
|
|
||||||
--- !u!114 &-8194063383422297065
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 115880}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: 06579ea47ceeddd42a05f7720c15b5de, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
maxHealth: 50
|
|
||||||
currentHealth: 0
|
|
||||||
destructionEffect: {fileID: 8876690725160639820, guid: c1b3da9fe585c44479dda2cd5c3a7b83,
|
|
||||||
type: 3}
|
|
||||||
destructionSound: {fileID: 8300000, guid: 3c1f8b87da670734991b73bf5c30f0af, type: 3}
|
|
||||||
hitSound: {fileID: 8300000, guid: 0af332725d9792840a4caa29e8991d08, type: 3}
|
|
||||||
damagedMaterial: {fileID: 2100000, guid: f94eea72c30ac2e45ab55894421ea48c, type: 2}
|
|
||||||
damagedThreshold: 0.5
|
|
||||||
enableDebug: 1
|
|
||||||
--- !u!114 &1536958584606674588
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 115880}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: 605ff11ee57b0c241a82c0c37c40c0bc, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
openCloseEvents: 0
|
|
||||||
openCloseWindow: 0
|
|
||||||
selectedToolbar: 0
|
|
||||||
messagesListeners: []
|
|
||||||
--- !u!114 &8851143338676511289
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 115880}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: 312629d966d1a40e3874daa93364e1f3, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
targetIcon: {fileID: 8317937118480752073, guid: 82581d6c5dd5945b89394d83db5f4c8b,
|
|
||||||
type: 3}
|
|
||||||
--- !u!1 &6534933121460188189
|
|
||||||
GameObject:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
serializedVersion: 6
|
|
||||||
m_Component:
|
|
||||||
- component: {fileID: 8411050209285398990}
|
|
||||||
m_Layer: 26
|
|
||||||
m_Name: Spawnpoint
|
|
||||||
m_TagString: Untagged
|
|
||||||
m_Icon: {fileID: 0}
|
|
||||||
m_NavMeshLayer: 0
|
|
||||||
m_StaticEditorFlags: 0
|
|
||||||
m_IsActive: 1
|
|
||||||
--- !u!4 &8411050209285398990
|
|
||||||
Transform:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 6534933121460188189}
|
|
||||||
serializedVersion: 2
|
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
|
||||||
m_LocalPosition: {x: 0, y: 3.114, z: 0}
|
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
|
||||||
m_ConstrainProportionsScale: 0
|
|
||||||
m_Children: []
|
|
||||||
m_Father: {fileID: 417168}
|
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
|
||||||
2124
Assets/AI/Demon/Turret.prefab
Normal file
2124
Assets/AI/Demon/Turret.prefab
Normal file
File diff suppressed because it is too large
Load Diff
7
Assets/AI/Demon/Turret.prefab.meta
Normal file
7
Assets/AI/Demon/Turret.prefab.meta
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 0d20e89d7557c3b41b7ef0e6be87e319
|
||||||
|
PrefabImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -134,7 +134,13 @@ MonoBehaviour:
|
|||||||
type: 3}
|
type: 3}
|
||||||
shieldDuration: 10
|
shieldDuration: 10
|
||||||
animatorBlockingBool: IsBlocking
|
animatorBlockingBool: IsBlocking
|
||||||
enableDebug: 1
|
startClip: {fileID: 7400082, guid: 3ef453d7877555243997dba1cdaa2958, type: 3}
|
||||||
|
keepClip: {fileID: 7400084, guid: 3ef453d7877555243997dba1cdaa2958, type: 3}
|
||||||
|
endClip: {fileID: 7400086, guid: 3ef453d7877555243997dba1cdaa2958, type: 3}
|
||||||
|
clipSpeed: 1
|
||||||
|
crossfadeTime: 0.12
|
||||||
|
playEndOnEarlyExit: 1
|
||||||
|
debugLogs: 0
|
||||||
--- !u!114 &-6568372008305276654
|
--- !u!114 &-6568372008305276654
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -158,11 +164,11 @@ MonoBehaviour:
|
|||||||
isSelected: 0
|
isSelected: 0
|
||||||
nodeRect:
|
nodeRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -445
|
x: -335
|
||||||
y: 30
|
y: 125
|
||||||
width: 150
|
width: 150
|
||||||
height: 62
|
height: 62
|
||||||
positionRect: {x: -445, y: 30}
|
positionRect: {x: -335, y: 125}
|
||||||
rectWidth: 150
|
rectWidth: 150
|
||||||
editingName: 1
|
editingName: 1
|
||||||
nodeColor: {r: 0, g: 1, b: 1, a: 1}
|
nodeColor: {r: 0, g: 1, b: 1, a: 1}
|
||||||
@@ -189,14 +195,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: -6568372008305276654}
|
parentState: {fileID: -6568372008305276654}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -295
|
x: -185
|
||||||
y: 60
|
y: 155
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -295
|
x: -185
|
||||||
y: 70
|
y: 165
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -233,6 +239,10 @@ MonoBehaviour:
|
|||||||
aboveBossHeight: 20
|
aboveBossHeight: 20
|
||||||
castDelay: 1.5
|
castDelay: 1.5
|
||||||
targetTag: Player
|
targetTag: Player
|
||||||
|
overlayClip: {fileID: 7400088, guid: 3ef453d7877555243997dba1cdaa2958, type: 3}
|
||||||
|
overlaySpeed: 1
|
||||||
|
overlayFadeIn: 0.1
|
||||||
|
overlayFadeOut: 0.1
|
||||||
enableDebug: 1
|
enableDebug: 1
|
||||||
--- !u!114 &-6379838510941931433
|
--- !u!114 &-6379838510941931433
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
@@ -287,11 +297,11 @@ MonoBehaviour:
|
|||||||
isSelected: 0
|
isSelected: 0
|
||||||
nodeRect:
|
nodeRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -410
|
x: -300
|
||||||
y: 185
|
y: 270
|
||||||
width: 150
|
width: 150
|
||||||
height: 106
|
height: 106
|
||||||
positionRect: {x: -410, y: 185}
|
positionRect: {x: -300, y: 270}
|
||||||
rectWidth: 150
|
rectWidth: 150
|
||||||
editingName: 1
|
editingName: 1
|
||||||
nodeColor: {r: 1, g: 0, b: 0, a: 1}
|
nodeColor: {r: 1, g: 0, b: 0, a: 1}
|
||||||
@@ -318,14 +328,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: -6144582714324757854}
|
parentState: {fileID: -6144582714324757854}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -260
|
x: -150
|
||||||
y: 215
|
y: 300
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -260
|
x: -150
|
||||||
y: 225
|
y: 310
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -346,14 +356,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: -6144582714324757854}
|
parentState: {fileID: -6144582714324757854}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -260
|
x: -150
|
||||||
y: 237
|
y: 322
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -260
|
x: -150
|
||||||
y: 247
|
y: 332
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -382,14 +392,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: -6144582714324757854}
|
parentState: {fileID: -6144582714324757854}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -260
|
x: -150
|
||||||
y: 259
|
y: 344
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -260
|
x: -150
|
||||||
y: 269
|
y: 354
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -540,11 +550,11 @@ MonoBehaviour:
|
|||||||
isSelected: 0
|
isSelected: 0
|
||||||
nodeRect:
|
nodeRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -130
|
x: -40
|
||||||
y: 35
|
y: 130
|
||||||
width: 150
|
width: 150
|
||||||
height: 62
|
height: 62
|
||||||
positionRect: {x: -130, y: 35}
|
positionRect: {x: -40, y: 130}
|
||||||
rectWidth: 150
|
rectWidth: 150
|
||||||
editingName: 1
|
editingName: 1
|
||||||
nodeColor: {r: 0.10323405, g: 1, b: 0, a: 1}
|
nodeColor: {r: 0.10323405, g: 1, b: 0, a: 1}
|
||||||
@@ -563,14 +573,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: -3177478727897100882}
|
parentState: {fileID: -3177478727897100882}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 20
|
x: 110
|
||||||
y: 65
|
y: 160
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 20
|
x: 110
|
||||||
y: 75
|
y: 170
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -609,11 +619,11 @@ MonoBehaviour:
|
|||||||
isSelected: 0
|
isSelected: 0
|
||||||
nodeRect:
|
nodeRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 165
|
x: 230
|
||||||
y: -5
|
y: 90
|
||||||
width: 150
|
width: 150
|
||||||
height: 62
|
height: 62
|
||||||
positionRect: {x: 165, y: -5}
|
positionRect: {x: 230, y: 90}
|
||||||
rectWidth: 150
|
rectWidth: 150
|
||||||
editingName: 1
|
editingName: 1
|
||||||
nodeColor: {r: 0, g: 1, b: 0.004989147, a: 1}
|
nodeColor: {r: 0, g: 1, b: 0.004989147, a: 1}
|
||||||
@@ -625,7 +635,7 @@ MonoBehaviour:
|
|||||||
- decisions:
|
- decisions:
|
||||||
- trueValue: 0
|
- trueValue: 0
|
||||||
decision: {fileID: 7927421991537792917}
|
decision: {fileID: 7927421991537792917}
|
||||||
isValid: 0
|
isValid: 1
|
||||||
validated: 0
|
validated: 0
|
||||||
trueState: {fileID: -312774025800194259}
|
trueState: {fileID: -312774025800194259}
|
||||||
falseState: {fileID: 0}
|
falseState: {fileID: 0}
|
||||||
@@ -636,14 +646,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: -2904979146780567904}
|
parentState: {fileID: -2904979146780567904}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 155
|
x: 220
|
||||||
y: 25
|
y: 120
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 315
|
x: 380
|
||||||
y: 35
|
y: 130
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -751,6 +761,10 @@ MonoBehaviour:
|
|||||||
globalStartAngleRandom: 1
|
globalStartAngleRandom: 1
|
||||||
perTurretAngleJitter: 10
|
perTurretAngleJitter: 10
|
||||||
perTurretRadiusJitter: 0.75
|
perTurretRadiusJitter: 0.75
|
||||||
|
overlayClip: {fileID: 7400080, guid: 3ef453d7877555243997dba1cdaa2958, type: 3}
|
||||||
|
overlaySpeed: 1
|
||||||
|
overlayFadeIn: 0.1
|
||||||
|
overlayFadeOut: 0.1
|
||||||
enableDebug: 1
|
enableDebug: 1
|
||||||
showGizmos: 1
|
showGizmos: 1
|
||||||
--- !u!114 &-712571192746352845
|
--- !u!114 &-712571192746352845
|
||||||
@@ -776,11 +790,11 @@ MonoBehaviour:
|
|||||||
isSelected: 0
|
isSelected: 0
|
||||||
nodeRect:
|
nodeRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -130
|
x: -40
|
||||||
y: -20
|
y: 80
|
||||||
width: 150
|
width: 150
|
||||||
height: 30
|
height: 30
|
||||||
positionRect: {x: -130, y: -20}
|
positionRect: {x: -40, y: 80}
|
||||||
rectWidth: 150
|
rectWidth: 150
|
||||||
editingName: 0
|
editingName: 0
|
||||||
nodeColor: {r: 0, g: 1, b: 0, a: 1}
|
nodeColor: {r: 0, g: 1, b: 0, a: 1}
|
||||||
@@ -852,11 +866,11 @@ MonoBehaviour:
|
|||||||
isSelected: 0
|
isSelected: 0
|
||||||
nodeRect:
|
nodeRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -325
|
x: -225
|
||||||
y: 445
|
y: 530
|
||||||
width: 150
|
width: 150
|
||||||
height: 150
|
height: 150
|
||||||
positionRect: {x: -325, y: 445}
|
positionRect: {x: -225, y: 530}
|
||||||
rectWidth: 150
|
rectWidth: 150
|
||||||
editingName: 1
|
editingName: 1
|
||||||
nodeColor: {r: 1, g: 0.95132554, b: 0, a: 1}
|
nodeColor: {r: 1, g: 0.95132554, b: 0, a: 1}
|
||||||
@@ -883,14 +897,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: -312774025800194259}
|
parentState: {fileID: -312774025800194259}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -175
|
x: -75
|
||||||
y: 475
|
y: 560
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -175
|
x: -75
|
||||||
y: 485
|
y: 570
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -915,14 +929,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: -312774025800194259}
|
parentState: {fileID: -312774025800194259}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -175
|
x: -75
|
||||||
y: 497
|
y: 582
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -175
|
x: -75
|
||||||
y: 507
|
y: 592
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -955,14 +969,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: -312774025800194259}
|
parentState: {fileID: -312774025800194259}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -335
|
x: -235
|
||||||
y: 519
|
y: 604
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -175
|
x: -75
|
||||||
y: 529
|
y: 614
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -991,14 +1005,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: -312774025800194259}
|
parentState: {fileID: -312774025800194259}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -175
|
x: -75
|
||||||
y: 541
|
y: 626
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -175
|
x: -75
|
||||||
y: 551
|
y: 636
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -1023,14 +1037,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: -312774025800194259}
|
parentState: {fileID: -312774025800194259}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -175
|
x: -75
|
||||||
y: 563
|
y: 648
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: -175
|
x: -75
|
||||||
y: 573
|
y: 658
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -1077,7 +1091,7 @@ MonoBehaviour:
|
|||||||
m_Script: {fileID: 11500000, guid: a5fc604039227434d8b4e63ebc5e74a5, type: 3}
|
m_Script: {fileID: 11500000, guid: a5fc604039227434d8b4e63ebc5e74a5, type: 3}
|
||||||
m_Name: FSM_Demon
|
m_Name: FSM_Demon
|
||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
selectedNode: {fileID: 4162026404432437805}
|
selectedNode: {fileID: 2986668563461644515}
|
||||||
wantConnection: 0
|
wantConnection: 0
|
||||||
connectionNode: {fileID: 0}
|
connectionNode: {fileID: 0}
|
||||||
showProperties: 1
|
showProperties: 1
|
||||||
@@ -1094,7 +1108,7 @@ MonoBehaviour:
|
|||||||
- {fileID: 9112689765763526057}
|
- {fileID: 9112689765763526057}
|
||||||
- {fileID: 766956384951898899}
|
- {fileID: 766956384951898899}
|
||||||
- {fileID: 4162026404432437805}
|
- {fileID: 4162026404432437805}
|
||||||
panOffset: {x: -1205, y: 130}
|
panOffset: {x: -600, y: -5}
|
||||||
overNode: 0
|
overNode: 0
|
||||||
actions:
|
actions:
|
||||||
- {fileID: 0}
|
- {fileID: 0}
|
||||||
@@ -1125,6 +1139,7 @@ MonoBehaviour:
|
|||||||
- {fileID: 0}
|
- {fileID: 0}
|
||||||
- {fileID: 0}
|
- {fileID: 0}
|
||||||
- {fileID: 0}
|
- {fileID: 0}
|
||||||
|
- {fileID: 0}
|
||||||
icon: {fileID: 0}
|
icon: {fileID: 0}
|
||||||
--- !u!114 &117913083446138218
|
--- !u!114 &117913083446138218
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
@@ -1178,11 +1193,11 @@ MonoBehaviour:
|
|||||||
isSelected: 0
|
isSelected: 0
|
||||||
nodeRect:
|
nodeRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 685
|
x: 745
|
||||||
y: 675
|
y: 760
|
||||||
width: 150
|
width: 150
|
||||||
height: 62
|
height: 62
|
||||||
positionRect: {x: 685, y: 675}
|
positionRect: {x: 745, y: 760}
|
||||||
rectWidth: 150
|
rectWidth: 150
|
||||||
editingName: 1
|
editingName: 1
|
||||||
nodeColor: {r: 1, g: 1, b: 1, a: 1}
|
nodeColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
@@ -1201,14 +1216,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: 762670965814380212}
|
parentState: {fileID: 762670965814380212}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 675
|
x: 735
|
||||||
y: 705
|
y: 790
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 835
|
x: 895
|
||||||
y: 715
|
y: 800
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -1248,11 +1263,11 @@ MonoBehaviour:
|
|||||||
isSelected: 0
|
isSelected: 0
|
||||||
nodeRect:
|
nodeRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 750
|
x: 810
|
||||||
y: 125
|
y: 220
|
||||||
width: 150
|
width: 150
|
||||||
height: 62
|
height: 62
|
||||||
positionRect: {x: 750, y: 125}
|
positionRect: {x: 810, y: 220}
|
||||||
rectWidth: 150
|
rectWidth: 150
|
||||||
editingName: 1
|
editingName: 1
|
||||||
nodeColor: {r: 1, g: 1, b: 1, a: 1}
|
nodeColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
@@ -1271,14 +1286,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: 766956384951898899}
|
parentState: {fileID: 766956384951898899}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 740
|
x: 800
|
||||||
y: 155
|
y: 250
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 900
|
x: 960
|
||||||
y: 165
|
y: 260
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -1295,6 +1310,36 @@ MonoBehaviour:
|
|||||||
useDecisions: 1
|
useDecisions: 1
|
||||||
parentGraph: {fileID: 11400000}
|
parentGraph: {fileID: 11400000}
|
||||||
defaultTransition: {fileID: 0}
|
defaultTransition: {fileID: 0}
|
||||||
|
--- !u!114 &1848419507865303702
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 1
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 57041025c9fb3ad459fbfb7da1224d25, type: 3}
|
||||||
|
m_Name: Check Health > 75
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
parentFSM: {fileID: 11400000}
|
||||||
|
editingName: 0
|
||||||
|
trueRect:
|
||||||
|
serializedVersion: 2
|
||||||
|
x: 0
|
||||||
|
y: 0
|
||||||
|
width: 10
|
||||||
|
height: 10
|
||||||
|
falseRect:
|
||||||
|
serializedVersion: 2
|
||||||
|
x: 0
|
||||||
|
y: 0
|
||||||
|
width: 10
|
||||||
|
height: 10
|
||||||
|
selectedTrue: 0
|
||||||
|
selectedFalse: 0
|
||||||
|
checkValue: 2
|
||||||
|
value: 75
|
||||||
--- !u!114 &1913506767753201076
|
--- !u!114 &1913506767753201076
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -1367,11 +1412,11 @@ MonoBehaviour:
|
|||||||
isSelected: 0
|
isSelected: 0
|
||||||
nodeRect:
|
nodeRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 475
|
x: 535
|
||||||
y: 675
|
y: 760
|
||||||
width: 150
|
width: 150
|
||||||
height: 62
|
height: 62
|
||||||
positionRect: {x: 475, y: 675}
|
positionRect: {x: 535, y: 760}
|
||||||
rectWidth: 150
|
rectWidth: 150
|
||||||
editingName: 1
|
editingName: 1
|
||||||
nodeColor: {r: 1, g: 1, b: 1, a: 1}
|
nodeColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
@@ -1390,14 +1435,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: 2691300596403639167}
|
parentState: {fileID: 2691300596403639167}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 465
|
x: 525
|
||||||
y: 705
|
y: 790
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 625
|
x: 685
|
||||||
y: 715
|
y: 800
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -1437,11 +1482,11 @@ MonoBehaviour:
|
|||||||
isSelected: 0
|
isSelected: 0
|
||||||
nodeRect:
|
nodeRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 220
|
x: 280
|
||||||
y: 395
|
y: 480
|
||||||
width: 150
|
width: 150
|
||||||
height: 150
|
height: 150
|
||||||
positionRect: {x: 220, y: 395}
|
positionRect: {x: 280, y: 480}
|
||||||
rectWidth: 150
|
rectWidth: 150
|
||||||
editingName: 1
|
editingName: 1
|
||||||
nodeColor: {r: 1, g: 0, b: 0, a: 1}
|
nodeColor: {r: 1, g: 0, b: 0, a: 1}
|
||||||
@@ -1464,14 +1509,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: 2986668563461644515}
|
parentState: {fileID: 2986668563461644515}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 210
|
x: 270
|
||||||
y: 425
|
y: 510
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 370
|
x: 430
|
||||||
y: 435
|
y: 520
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -1496,14 +1541,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: 2986668563461644515}
|
parentState: {fileID: 2986668563461644515}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 210
|
x: 270
|
||||||
y: 447
|
y: 532
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 370
|
x: 430
|
||||||
y: 457
|
y: 542
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -1515,12 +1560,12 @@ MonoBehaviour:
|
|||||||
scroolView: {x: 0, y: 0, z: 0}
|
scroolView: {x: 0, y: 0, z: 0}
|
||||||
sameTargetCount: 0
|
sameTargetCount: 0
|
||||||
- decisions:
|
- decisions:
|
||||||
- trueValue: 0
|
|
||||||
decision: {fileID: -6379838510941931433}
|
|
||||||
isValid: 0
|
|
||||||
validated: 0
|
|
||||||
- trueValue: 1
|
- trueValue: 1
|
||||||
decision: {fileID: -7938248970223304488}
|
decision: {fileID: -7938248970223304488}
|
||||||
|
isValid: 0
|
||||||
|
validated: 0
|
||||||
|
- trueValue: 0
|
||||||
|
decision: {fileID: 1848419507865303702}
|
||||||
isValid: 1
|
isValid: 1
|
||||||
validated: 0
|
validated: 0
|
||||||
trueState: {fileID: 766956384951898899}
|
trueState: {fileID: 766956384951898899}
|
||||||
@@ -1532,14 +1577,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: 2986668563461644515}
|
parentState: {fileID: 2986668563461644515}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 370
|
x: 430
|
||||||
y: 469
|
y: 554
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 370
|
x: 430
|
||||||
y: 479
|
y: 564
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -1551,14 +1596,14 @@ MonoBehaviour:
|
|||||||
scroolView: {x: 0, y: 0, z: 0}
|
scroolView: {x: 0, y: 0, z: 0}
|
||||||
sameTargetCount: 0
|
sameTargetCount: 0
|
||||||
- decisions:
|
- decisions:
|
||||||
- trueValue: 0
|
|
||||||
decision: {fileID: -6379838510941931433}
|
|
||||||
isValid: 0
|
|
||||||
validated: 0
|
|
||||||
- trueValue: 1
|
- trueValue: 1
|
||||||
decision: {fileID: 8113515040269600600}
|
decision: {fileID: 8113515040269600600}
|
||||||
isValid: 1
|
isValid: 1
|
||||||
validated: 0
|
validated: 0
|
||||||
|
- trueValue: 0
|
||||||
|
decision: {fileID: 1848419507865303702}
|
||||||
|
isValid: 1
|
||||||
|
validated: 0
|
||||||
trueState: {fileID: 9112689765763526057}
|
trueState: {fileID: 9112689765763526057}
|
||||||
falseState: {fileID: 0}
|
falseState: {fileID: 0}
|
||||||
muteTrue: 0
|
muteTrue: 0
|
||||||
@@ -1568,14 +1613,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: 2986668563461644515}
|
parentState: {fileID: 2986668563461644515}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 370
|
x: 430
|
||||||
y: 491
|
y: 576
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 370
|
x: 430
|
||||||
y: 501
|
y: 586
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -1604,14 +1649,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: 2986668563461644515}
|
parentState: {fileID: 2986668563461644515}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 370
|
x: 430
|
||||||
y: 513
|
y: 598
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 370
|
x: 430
|
||||||
y: 523
|
y: 608
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -1708,14 +1753,14 @@ MonoBehaviour:
|
|||||||
canEditName: 1
|
canEditName: 1
|
||||||
canEditColor: 1
|
canEditColor: 1
|
||||||
isOpen: 0
|
isOpen: 0
|
||||||
isSelected: 1
|
isSelected: 0
|
||||||
nodeRect:
|
nodeRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 745
|
x: 805
|
||||||
y: 340
|
y: 425
|
||||||
width: 150
|
width: 150
|
||||||
height: 30
|
height: 30
|
||||||
positionRect: {x: 745, y: 340}
|
positionRect: {x: 805, y: 425}
|
||||||
rectWidth: 150
|
rectWidth: 150
|
||||||
editingName: 1
|
editingName: 1
|
||||||
nodeColor: {r: 1, g: 1, b: 1, a: 1}
|
nodeColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
@@ -1734,14 +1779,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: 4162026404432437805}
|
parentState: {fileID: 4162026404432437805}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 820
|
x: 880
|
||||||
y: 355
|
y: 440
|
||||||
width: 0
|
width: 0
|
||||||
height: 0
|
height: 0
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 820
|
x: 880
|
||||||
y: 355
|
y: 440
|
||||||
width: 0
|
width: 0
|
||||||
height: 0
|
height: 0
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
@@ -1907,11 +1952,11 @@ MonoBehaviour:
|
|||||||
isSelected: 0
|
isSelected: 0
|
||||||
nodeRect:
|
nodeRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 755
|
x: 815
|
||||||
y: -50
|
y: 65
|
||||||
width: 150
|
width: 150
|
||||||
height: 62
|
height: 62
|
||||||
positionRect: {x: 755, y: -50}
|
positionRect: {x: 815, y: 65}
|
||||||
rectWidth: 150
|
rectWidth: 150
|
||||||
editingName: 1
|
editingName: 1
|
||||||
nodeColor: {r: 1, g: 1, b: 1, a: 1}
|
nodeColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
@@ -1930,14 +1975,14 @@ MonoBehaviour:
|
|||||||
parentState: {fileID: 9112689765763526057}
|
parentState: {fileID: 9112689765763526057}
|
||||||
trueRect:
|
trueRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 745
|
x: 805
|
||||||
y: -20
|
y: 95
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
falseRect:
|
falseRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 905
|
x: 965
|
||||||
y: -10
|
y: 105
|
||||||
width: 10
|
width: 10
|
||||||
height: 10
|
height: 10
|
||||||
selectedTrue: 0
|
selectedTrue: 0
|
||||||
|
|||||||
@@ -134,7 +134,13 @@ MonoBehaviour:
|
|||||||
type: 3}
|
type: 3}
|
||||||
shieldDuration: 10
|
shieldDuration: 10
|
||||||
animatorBlockingBool: IsBlocking
|
animatorBlockingBool: IsBlocking
|
||||||
enableDebug: 1
|
startClip: {fileID: 0}
|
||||||
|
keepClip: {fileID: 0}
|
||||||
|
endClip: {fileID: 0}
|
||||||
|
clipSpeed: 1
|
||||||
|
crossfadeTime: 0.12
|
||||||
|
playEndOnEarlyExit: 1
|
||||||
|
debugLogs: 0
|
||||||
--- !u!114 &-7016508256595524775
|
--- !u!114 &-7016508256595524775
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -206,7 +212,7 @@ MonoBehaviour:
|
|||||||
- decisions:
|
- decisions:
|
||||||
- trueValue: 1
|
- trueValue: 1
|
||||||
decision: {fileID: 5430119601860107240}
|
decision: {fileID: 5430119601860107240}
|
||||||
isValid: 1
|
isValid: 0
|
||||||
validated: 0
|
validated: 0
|
||||||
- trueValue: 1
|
- trueValue: 1
|
||||||
decision: {fileID: 117913083446138218}
|
decision: {fileID: 117913083446138218}
|
||||||
@@ -260,13 +266,14 @@ MonoBehaviour:
|
|||||||
executionType: -1
|
executionType: -1
|
||||||
editingName: 0
|
editingName: 0
|
||||||
meteorPrefab: {fileID: 0}
|
meteorPrefab: {fileID: 0}
|
||||||
decalPrefab: {fileID: 1743301284569550, guid: ad2ab49d0a2a17148bd51c93d977bdbc,
|
behindBossDistance: 3
|
||||||
type: 3}
|
aboveBossHeight: 8
|
||||||
spawnHeight: 40
|
|
||||||
castDelay: 1.5
|
castDelay: 1.5
|
||||||
groundMask:
|
targetTag: Player
|
||||||
serializedVersion: 2
|
overlayClip: {fileID: 0}
|
||||||
m_Bits: 4294967295
|
overlaySpeed: 1
|
||||||
|
overlayFadeIn: 0.1
|
||||||
|
overlayFadeOut: 0.1
|
||||||
enableDebug: 1
|
enableDebug: 1
|
||||||
--- !u!114 &-6379838510941931433
|
--- !u!114 &-6379838510941931433
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
@@ -659,7 +666,7 @@ MonoBehaviour:
|
|||||||
- decisions:
|
- decisions:
|
||||||
- trueValue: 0
|
- trueValue: 0
|
||||||
decision: {fileID: 7927421991537792917}
|
decision: {fileID: 7927421991537792917}
|
||||||
isValid: 1
|
isValid: 0
|
||||||
validated: 0
|
validated: 0
|
||||||
trueState: {fileID: -312774025800194259}
|
trueState: {fileID: -312774025800194259}
|
||||||
falseState: {fileID: 0}
|
falseState: {fileID: 0}
|
||||||
@@ -778,8 +785,17 @@ MonoBehaviour:
|
|||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
m_Bits: 4294967295
|
m_Bits: 4294967295
|
||||||
animatorBlockingBool: IsBlocking
|
animatorBlockingBool: IsBlocking
|
||||||
backPreferenceMultiplier: 2
|
perTurretAdjustmentTries: 10
|
||||||
maxSpawnAttempts: 12
|
maxAngleAdjust: 25
|
||||||
|
maxRadiusAdjust: 1
|
||||||
|
minSeparationBetweenTurrets: 1.5
|
||||||
|
globalStartAngleRandom: 1
|
||||||
|
perTurretAngleJitter: 10
|
||||||
|
perTurretRadiusJitter: 0.75
|
||||||
|
overlayClip: {fileID: 0}
|
||||||
|
overlaySpeed: 1
|
||||||
|
overlayFadeIn: 0.1
|
||||||
|
overlayFadeOut: 0.1
|
||||||
enableDebug: 1
|
enableDebug: 1
|
||||||
showGizmos: 1
|
showGizmos: 1
|
||||||
--- !u!114 &-712571192746352845
|
--- !u!114 &-712571192746352845
|
||||||
|
|||||||
@@ -1133,10 +1133,10 @@ MonoBehaviour:
|
|||||||
openCloseWindow: 1
|
openCloseWindow: 1
|
||||||
selectedToolbar: 0
|
selectedToolbar: 0
|
||||||
_isDead: 0
|
_isDead: 0
|
||||||
_currentHealth: 225
|
_currentHealth: 250
|
||||||
isImmortal: 0
|
isImmortal: 0
|
||||||
fillHealthOnStart: 1
|
fillHealthOnStart: 1
|
||||||
maxHealth: 225
|
maxHealth: 250
|
||||||
healthRecovery: 0
|
healthRecovery: 0
|
||||||
healthRecoveryDelay: 0
|
healthRecoveryDelay: 0
|
||||||
currentHealthRecoveryDelay: 0
|
currentHealthRecoveryDelay: 0
|
||||||
|
|||||||
@@ -4629,12 +4629,12 @@ MonoBehaviour:
|
|||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
openCloseEvents: 0
|
openCloseEvents: 0
|
||||||
openCloseWindow: 1
|
openCloseWindow: 1
|
||||||
selectedToolbar: 5
|
selectedToolbar: 0
|
||||||
_isDead: 0
|
_isDead: 0
|
||||||
_currentHealth: 100
|
_currentHealth: 300
|
||||||
isImmortal: 0
|
isImmortal: 0
|
||||||
fillHealthOnStart: 1
|
fillHealthOnStart: 1
|
||||||
maxHealth: 100
|
maxHealth: 300
|
||||||
healthRecovery: 0
|
healthRecovery: 0
|
||||||
healthRecoveryDelay: 0
|
healthRecoveryDelay: 0
|
||||||
currentHealthRecoveryDelay: 0
|
currentHealthRecoveryDelay: 0
|
||||||
|
|||||||
48
Assets/AI/Gigant/RandomizeAnimatorIntOnEnter.cs
Normal file
48
Assets/AI/Gigant/RandomizeAnimatorIntOnEnter.cs
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
public class RandomizeAnimatorIntWeighted : StateMachineBehaviour
|
||||||
|
{
|
||||||
|
[Header("Animator parameter name (must be int type)")]
|
||||||
|
public string parameterName = "Randomized";
|
||||||
|
|
||||||
|
[Header("Weights for each slot (index = int value)")]
|
||||||
|
public int[] weights = { 35, 35, 15, 15 };
|
||||||
|
|
||||||
|
// Example: {70, 20, 10} means index 0 has 70% chance, 1 has 20%, 2 has 10%
|
||||||
|
|
||||||
|
// Called when the animator enters this state
|
||||||
|
public override void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
|
||||||
|
{
|
||||||
|
if (weights == null || weights.Length == 0)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
int total = 0;
|
||||||
|
foreach (int w in weights)
|
||||||
|
{
|
||||||
|
total += Mathf.Max(0, w);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (total <= 0)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
int randomValue = Random.Range(0, total);
|
||||||
|
int cumulative = 0;
|
||||||
|
int chosenIndex = 0;
|
||||||
|
|
||||||
|
for (int i = 0; i < weights.Length; i++)
|
||||||
|
{
|
||||||
|
cumulative += Mathf.Max(0, weights[i]);
|
||||||
|
if (randomValue < cumulative)
|
||||||
|
{
|
||||||
|
chosenIndex = i;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
animator.SetFloat(parameterName, (float)chosenIndex);
|
||||||
|
}
|
||||||
|
}
|
||||||
2
Assets/AI/Gigant/RandomizeAnimatorIntOnEnter.cs.meta
Normal file
2
Assets/AI/Gigant/RandomizeAnimatorIntOnEnter.cs.meta
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: d20bc7e4150a82f4ba03191390f832f8
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
%YAML 1.1
|
%YAML 1.1
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
--- !u!114 &-3625974168367842241
|
--- !u!114 &-4038453504596325930
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 11
|
m_ObjectHideFlags: 11
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
|||||||
@@ -134,7 +134,7 @@ Material:
|
|||||||
- _SpecColor: {r: 0.625, g: 0.7206896, b: 1, a: 1}
|
- _SpecColor: {r: 0.625, g: 0.7206896, b: 1, a: 1}
|
||||||
m_BuildTextureStacks: []
|
m_BuildTextureStacks: []
|
||||||
m_AllowLocking: 1
|
m_AllowLocking: 1
|
||||||
--- !u!114 &1114542027491659141
|
--- !u!114 &5618362483761361914
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 11
|
m_ObjectHideFlags: 11
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
|||||||
@@ -129,7 +129,7 @@ Material:
|
|||||||
- _SpecColor: {r: 0.8602941, g: 0.89594316, b: 1, a: 1}
|
- _SpecColor: {r: 0.8602941, g: 0.89594316, b: 1, a: 1}
|
||||||
m_BuildTextureStacks: []
|
m_BuildTextureStacks: []
|
||||||
m_AllowLocking: 1
|
m_AllowLocking: 1
|
||||||
--- !u!114 &3248454389675638324
|
--- !u!114 &6956751399976171411
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 11
|
m_ObjectHideFlags: 11
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
%YAML 1.1
|
%YAML 1.1
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
--- !u!114 &-3687339755134204407
|
--- !u!114 &-7691346883607124648
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 11
|
m_ObjectHideFlags: 11
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
%YAML 1.1
|
%YAML 1.1
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
--- !u!114 &-7174681138944601437
|
--- !u!114 &-4499385966301197659
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 11
|
m_ObjectHideFlags: 11
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
|||||||
@@ -1,5 +1,18 @@
|
|||||||
%YAML 1.1
|
%YAML 1.1
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!114 &-1019187969406195858
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 11
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
version: 10
|
||||||
--- !u!21 &2100000
|
--- !u!21 &2100000
|
||||||
Material:
|
Material:
|
||||||
serializedVersion: 8
|
serializedVersion: 8
|
||||||
|
|||||||
@@ -105633,13 +105633,13 @@ MonoBehaviour:
|
|||||||
triggerDieBehaviour: 0
|
triggerDieBehaviour: 0
|
||||||
m_ignoreTriggers: 1
|
m_ignoreTriggers: 1
|
||||||
useAnimationBasedRotation: 0
|
useAnimationBasedRotation: 0
|
||||||
strafeRollInputThreshold: 0.3
|
|
||||||
strafeRollForwardAnim: Roll_Forward
|
strafeRollForwardAnim: Roll_Forward
|
||||||
strafeRollBackwardAnim: Roll_Backward
|
strafeRollBackwardAnim: Roll_Backward
|
||||||
strafeRollLeftAnim: Roll_Left
|
strafeRollLeftAnim: Roll_Left
|
||||||
strafeRollRightAnim: Roll_Right
|
strafeRollRightAnim: Roll_Right
|
||||||
strafeRollLeftCorrectionAngle: 70.6
|
strafeRollLeftCorrectionAngle: 70.6
|
||||||
strafeRollRightCorrectionAngle: 70
|
strafeRollRightCorrectionAngle: 70
|
||||||
|
strafeRollBackwardCorrectionAngle: 0
|
||||||
--- !u!114 &9202663235077955828
|
--- !u!114 &9202663235077955828
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
|||||||
@@ -22,6 +22,28 @@ AnimatorStateMachine:
|
|||||||
m_ExitPosition: {x: 800, y: 120, z: 0}
|
m_ExitPosition: {x: 800, y: 120, z: 0}
|
||||||
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
|
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
|
||||||
m_DefaultState: {fileID: -2074274001345678418}
|
m_DefaultState: {fileID: -2074274001345678418}
|
||||||
|
--- !u!1101 &-9191327555805306621
|
||||||
|
AnimatorStateTransition:
|
||||||
|
m_ObjectHideFlags: 1
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name:
|
||||||
|
m_Conditions: []
|
||||||
|
m_DstStateMachine: {fileID: 0}
|
||||||
|
m_DstState: {fileID: 1102861933717182418}
|
||||||
|
m_Solo: 0
|
||||||
|
m_Mute: 1
|
||||||
|
m_IsExit: 0
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TransitionDuration: 0.25
|
||||||
|
m_TransitionOffset: 0
|
||||||
|
m_ExitTime: 0.6808511
|
||||||
|
m_HasExitTime: 1
|
||||||
|
m_HasFixedDuration: 1
|
||||||
|
m_InterruptionSource: 0
|
||||||
|
m_OrderedInterruption: 1
|
||||||
|
m_CanTransitionToSelf: 1
|
||||||
--- !u!1102 &-9143515860420698953
|
--- !u!1102 &-9143515860420698953
|
||||||
AnimatorState:
|
AnimatorState:
|
||||||
serializedVersion: 6
|
serializedVersion: 6
|
||||||
@@ -738,7 +760,7 @@ MonoBehaviour:
|
|||||||
m_Script: {fileID: 11500000, guid: 9c0e8cc669ad24ae3bcdae73fa4c003b, type: 3}
|
m_Script: {fileID: 11500000, guid: 9c0e8cc669ad24ae3bcdae73fa4c003b, type: 3}
|
||||||
m_Name:
|
m_Name:
|
||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
startDamage: 0.3
|
startDamage: 0.2
|
||||||
endDamage: 0.4
|
endDamage: 0.4
|
||||||
damageMultiplier: 0
|
damageMultiplier: 0
|
||||||
recoilID: 1
|
recoilID: 1
|
||||||
@@ -750,17 +772,16 @@ MonoBehaviour:
|
|||||||
ignoreDefense: 0
|
ignoreDefense: 0
|
||||||
activeRagdoll: 0
|
activeRagdoll: 0
|
||||||
senselessTime: 0
|
senselessTime: 0
|
||||||
resetAttackTrigger: 1
|
blockInputBeforeTime: 0.5
|
||||||
resetTriggerBeforeTime: 0.5
|
|
||||||
unlockRotationTime: 0.5
|
unlockRotationTime: 0.5
|
||||||
lerpPositionTowardsTarget: 1
|
lerpPositionTowardsTarget: 1
|
||||||
maxLerpDistance: 3.5
|
maxLerpDistance: 3.5
|
||||||
positionLerpSpeed: 2
|
positionLerpSpeed: 2
|
||||||
stoppingDistance: 1.2
|
stoppingDistance: 1.2
|
||||||
useComboTimingWindow: 1
|
useComboTimingWindow: 1
|
||||||
comboWindowStartTime: 0.5
|
comboWindowStartTime: 0.7
|
||||||
comboWindowDuration: 0.2
|
comboWindowDuration: 0.3
|
||||||
comboWindowTimeScale: 0.3
|
comboWindowTimeScale: 0.4
|
||||||
useAttackTimeScale: 0
|
useAttackTimeScale: 0
|
||||||
maxTargetDistance: 3
|
maxTargetDistance: 3
|
||||||
lowHealthTh: 10
|
lowHealthTh: 10
|
||||||
@@ -2715,7 +2736,7 @@ MonoBehaviour:
|
|||||||
m_Script: {fileID: 11500000, guid: 9c0e8cc669ad24ae3bcdae73fa4c003b, type: 3}
|
m_Script: {fileID: 11500000, guid: 9c0e8cc669ad24ae3bcdae73fa4c003b, type: 3}
|
||||||
m_Name:
|
m_Name:
|
||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
startDamage: 0.4
|
startDamage: 0.3
|
||||||
endDamage: 0.5
|
endDamage: 0.5
|
||||||
damageMultiplier: 2
|
damageMultiplier: 2
|
||||||
recoilID: 2
|
recoilID: 2
|
||||||
@@ -2727,8 +2748,7 @@ MonoBehaviour:
|
|||||||
ignoreDefense: 0
|
ignoreDefense: 0
|
||||||
activeRagdoll: 0
|
activeRagdoll: 0
|
||||||
senselessTime: 0
|
senselessTime: 0
|
||||||
resetAttackTrigger: 0
|
blockInputBeforeTime: 0.5
|
||||||
resetTriggerBeforeTime: 0.3
|
|
||||||
unlockRotationTime: 0.7
|
unlockRotationTime: 0.7
|
||||||
lerpPositionTowardsTarget: 1
|
lerpPositionTowardsTarget: 1
|
||||||
maxLerpDistance: 3.5
|
maxLerpDistance: 3.5
|
||||||
@@ -2736,8 +2756,8 @@ MonoBehaviour:
|
|||||||
stoppingDistance: 1.2
|
stoppingDistance: 1.2
|
||||||
useComboTimingWindow: 1
|
useComboTimingWindow: 1
|
||||||
comboWindowStartTime: 0.6
|
comboWindowStartTime: 0.6
|
||||||
comboWindowDuration: 0.2
|
comboWindowDuration: 0.3
|
||||||
comboWindowTimeScale: 0.3
|
comboWindowTimeScale: 0.4
|
||||||
useAttackTimeScale: 1
|
useAttackTimeScale: 1
|
||||||
maxTargetDistance: 3
|
maxTargetDistance: 3
|
||||||
lowHealthTh: 30
|
lowHealthTh: 30
|
||||||
@@ -4545,6 +4565,7 @@ MonoBehaviour:
|
|||||||
tags:
|
tags:
|
||||||
- IsRolling
|
- IsRolling
|
||||||
- IgnoreIK
|
- IgnoreIK
|
||||||
|
- LockRotation
|
||||||
--- !u!206 &-2581317115762456654
|
--- !u!206 &-2581317115762456654
|
||||||
BlendTree:
|
BlendTree:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -4604,6 +4625,24 @@ AnimatorStateTransition:
|
|||||||
m_InterruptionSource: 0
|
m_InterruptionSource: 0
|
||||||
m_OrderedInterruption: 1
|
m_OrderedInterruption: 1
|
||||||
m_CanTransitionToSelf: 1
|
m_CanTransitionToSelf: 1
|
||||||
|
--- !u!114 &-2385230577109390366
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 1
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 5f3b04f29aa5b134b99e94c78b296dcf, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
stateInfos: []
|
||||||
|
debug: 0
|
||||||
|
tags:
|
||||||
|
- tagName: Attack
|
||||||
|
tagType: 3
|
||||||
|
normalizedTime: {x: 0.1, y: 0.8}
|
||||||
--- !u!206 &-2382170802819547054
|
--- !u!206 &-2382170802819547054
|
||||||
BlendTree:
|
BlendTree:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -4832,6 +4871,28 @@ AnimatorState:
|
|||||||
m_MirrorParameter:
|
m_MirrorParameter:
|
||||||
m_CycleOffsetParameter:
|
m_CycleOffsetParameter:
|
||||||
m_TimeParameter:
|
m_TimeParameter:
|
||||||
|
--- !u!1101 &-1951197489304851175
|
||||||
|
AnimatorStateTransition:
|
||||||
|
m_ObjectHideFlags: 1
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name:
|
||||||
|
m_Conditions: []
|
||||||
|
m_DstStateMachine: {fileID: 0}
|
||||||
|
m_DstState: {fileID: -262143111545491946}
|
||||||
|
m_Solo: 0
|
||||||
|
m_Mute: 1
|
||||||
|
m_IsExit: 0
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TransitionDuration: 0
|
||||||
|
m_TransitionOffset: 0
|
||||||
|
m_ExitTime: 0.99222386
|
||||||
|
m_HasExitTime: 1
|
||||||
|
m_HasFixedDuration: 1
|
||||||
|
m_InterruptionSource: 0
|
||||||
|
m_OrderedInterruption: 1
|
||||||
|
m_CanTransitionToSelf: 1
|
||||||
--- !u!1102 &-1890823228988152332
|
--- !u!1102 &-1890823228988152332
|
||||||
AnimatorState:
|
AnimatorState:
|
||||||
serializedVersion: 6
|
serializedVersion: 6
|
||||||
@@ -5154,8 +5215,7 @@ MonoBehaviour:
|
|||||||
ignoreDefense: 0
|
ignoreDefense: 0
|
||||||
activeRagdoll: 0
|
activeRagdoll: 0
|
||||||
senselessTime: 0
|
senselessTime: 0
|
||||||
resetAttackTrigger: 0
|
blockInputBeforeTime: 0.5
|
||||||
resetTriggerBeforeTime: 0.3
|
|
||||||
unlockRotationTime: 0.7
|
unlockRotationTime: 0.7
|
||||||
lerpPositionTowardsTarget: 1
|
lerpPositionTowardsTarget: 1
|
||||||
maxLerpDistance: 3.5
|
maxLerpDistance: 3.5
|
||||||
@@ -5163,8 +5223,8 @@ MonoBehaviour:
|
|||||||
stoppingDistance: 1.2
|
stoppingDistance: 1.2
|
||||||
useComboTimingWindow: 1
|
useComboTimingWindow: 1
|
||||||
comboWindowStartTime: 0.6
|
comboWindowStartTime: 0.6
|
||||||
comboWindowDuration: 0.2
|
comboWindowDuration: 0.3
|
||||||
comboWindowTimeScale: 0.3
|
comboWindowTimeScale: 0.4
|
||||||
useAttackTimeScale: 1
|
useAttackTimeScale: 1
|
||||||
maxTargetDistance: 3
|
maxTargetDistance: 3
|
||||||
lowHealthTh: 10
|
lowHealthTh: 10
|
||||||
@@ -5676,8 +5736,7 @@ MonoBehaviour:
|
|||||||
ignoreDefense: 0
|
ignoreDefense: 0
|
||||||
activeRagdoll: 0
|
activeRagdoll: 0
|
||||||
senselessTime: 0
|
senselessTime: 0
|
||||||
resetAttackTrigger: 0
|
blockInputBeforeTime: 0.5
|
||||||
resetTriggerBeforeTime: 0.5
|
|
||||||
unlockRotationTime: 0.7
|
unlockRotationTime: 0.7
|
||||||
lerpPositionTowardsTarget: 0
|
lerpPositionTowardsTarget: 0
|
||||||
maxLerpDistance: 3.5
|
maxLerpDistance: 3.5
|
||||||
@@ -6086,6 +6145,36 @@ MonoBehaviour:
|
|||||||
stateInfos: []
|
stateInfos: []
|
||||||
tags:
|
tags:
|
||||||
- CustomAction
|
- CustomAction
|
||||||
|
--- !u!1102 &-262143111545491946
|
||||||
|
AnimatorState:
|
||||||
|
serializedVersion: 6
|
||||||
|
m_ObjectHideFlags: 1
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: A1
|
||||||
|
m_Speed: 1.4
|
||||||
|
m_CycleOffset: 0
|
||||||
|
m_Transitions:
|
||||||
|
- {fileID: 3665975024854504718}
|
||||||
|
- {fileID: -9191327555805306621}
|
||||||
|
m_StateMachineBehaviours:
|
||||||
|
- {fileID: -2385230577109390366}
|
||||||
|
m_Position: {x: 50, y: 50, z: 0}
|
||||||
|
m_IKOnFeet: 1
|
||||||
|
m_WriteDefaultValues: 1
|
||||||
|
m_Mirror: 0
|
||||||
|
m_SpeedParameterActive: 0
|
||||||
|
m_MirrorParameterActive: 0
|
||||||
|
m_CycleOffsetParameterActive: 0
|
||||||
|
m_TimeParameterActive: 0
|
||||||
|
m_Motion: {fileID: 6399467581995111687, guid: fb07a934dbc1969468121112ca048964,
|
||||||
|
type: 3}
|
||||||
|
m_Tag:
|
||||||
|
m_SpeedParameter:
|
||||||
|
m_MirrorParameter:
|
||||||
|
m_CycleOffsetParameter:
|
||||||
|
m_TimeParameter:
|
||||||
--- !u!1109 &-164828508768324166
|
--- !u!1109 &-164828508768324166
|
||||||
AnimatorTransition:
|
AnimatorTransition:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -26469,15 +26558,14 @@ MonoBehaviour:
|
|||||||
ignoreDefense: 1
|
ignoreDefense: 1
|
||||||
activeRagdoll: 0
|
activeRagdoll: 0
|
||||||
senselessTime: 0
|
senselessTime: 0
|
||||||
resetAttackTrigger: 0
|
blockInputBeforeTime: 1
|
||||||
resetTriggerBeforeTime: 0.6
|
|
||||||
unlockRotationTime: 0.7
|
unlockRotationTime: 0.7
|
||||||
lerpPositionTowardsTarget: 1
|
lerpPositionTowardsTarget: 1
|
||||||
maxLerpDistance: 3.5
|
maxLerpDistance: 3.5
|
||||||
positionLerpSpeed: 2
|
positionLerpSpeed: 2
|
||||||
stoppingDistance: 1.2
|
stoppingDistance: 1.2
|
||||||
useComboTimingWindow: 0
|
useComboTimingWindow: 0
|
||||||
comboWindowStartTime: 0.9
|
comboWindowStartTime: 1
|
||||||
comboWindowDuration: 0.5
|
comboWindowDuration: 0.5
|
||||||
comboWindowTimeScale: 0.3
|
comboWindowTimeScale: 0.3
|
||||||
useAttackTimeScale: 0
|
useAttackTimeScale: 0
|
||||||
@@ -26488,7 +26576,7 @@ MonoBehaviour:
|
|||||||
attackTimeScaleEnd: 0.58
|
attackTimeScaleEnd: 0.58
|
||||||
rotatePlayerTowardsTarget: 1
|
rotatePlayerTowardsTarget: 1
|
||||||
degreeThreshold: 100
|
degreeThreshold: 100
|
||||||
debug: 0
|
debug: 1
|
||||||
--- !u!1101 &542493047717198179
|
--- !u!1101 &542493047717198179
|
||||||
AnimatorStateTransition:
|
AnimatorStateTransition:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -29503,10 +29591,10 @@ AnimatorStateTransition:
|
|||||||
m_Mute: 0
|
m_Mute: 0
|
||||||
m_IsExit: 0
|
m_IsExit: 0
|
||||||
serializedVersion: 3
|
serializedVersion: 3
|
||||||
m_TransitionDuration: 0.23156369
|
m_TransitionDuration: 0.17750603
|
||||||
m_TransitionOffset: 0.05401399
|
m_TransitionOffset: 0.12662058
|
||||||
m_ExitTime: 0.7634842
|
m_ExitTime: 0.8490755
|
||||||
m_HasExitTime: 1
|
m_HasExitTime: 0
|
||||||
m_HasFixedDuration: 0
|
m_HasFixedDuration: 0
|
||||||
m_InterruptionSource: 0
|
m_InterruptionSource: 0
|
||||||
m_OrderedInterruption: 1
|
m_OrderedInterruption: 1
|
||||||
@@ -33828,10 +33916,10 @@ AnimatorStateTransition:
|
|||||||
m_Mute: 0
|
m_Mute: 0
|
||||||
m_IsExit: 0
|
m_IsExit: 0
|
||||||
serializedVersion: 3
|
serializedVersion: 3
|
||||||
m_TransitionDuration: 0.09166676
|
m_TransitionDuration: 0.15347171
|
||||||
m_TransitionOffset: 0.012494694
|
m_TransitionOffset: 0.008216396
|
||||||
m_ExitTime: 0.617021
|
m_ExitTime: 0.8888667
|
||||||
m_HasExitTime: 1
|
m_HasExitTime: 0
|
||||||
m_HasFixedDuration: 1
|
m_HasFixedDuration: 1
|
||||||
m_InterruptionSource: 0
|
m_InterruptionSource: 0
|
||||||
m_OrderedInterruption: 1
|
m_OrderedInterruption: 1
|
||||||
@@ -36601,12 +36689,13 @@ AnimatorState:
|
|||||||
m_CorrespondingSourceObject: {fileID: 0}
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
m_PrefabInstance: {fileID: 0}
|
m_PrefabInstance: {fileID: 0}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_Name: A
|
m_Name: A0
|
||||||
m_Speed: 1.3
|
m_Speed: 1.3
|
||||||
m_CycleOffset: 0
|
m_CycleOffset: 0
|
||||||
m_Transitions:
|
m_Transitions:
|
||||||
- {fileID: 1101963861138605418}
|
- {fileID: 1101963861138605418}
|
||||||
- {fileID: 1101255493625229458}
|
- {fileID: 1101255493625229458}
|
||||||
|
- {fileID: -1951197489304851175}
|
||||||
m_StateMachineBehaviours:
|
m_StateMachineBehaviours:
|
||||||
- {fileID: 114405241802589726}
|
- {fileID: 114405241802589726}
|
||||||
- {fileID: 114667135945300734}
|
- {fileID: 114667135945300734}
|
||||||
@@ -40730,30 +40819,33 @@ AnimatorStateMachine:
|
|||||||
m_ChildStates:
|
m_ChildStates:
|
||||||
- serializedVersion: 1
|
- serializedVersion: 1
|
||||||
m_State: {fileID: 1102466317250516052}
|
m_State: {fileID: 1102466317250516052}
|
||||||
m_Position: {x: 240, y: 120, z: 0}
|
m_Position: {x: 170, y: 140, z: 0}
|
||||||
- serializedVersion: 1
|
- serializedVersion: 1
|
||||||
m_State: {fileID: 1102861933717182418}
|
m_State: {fileID: 1102861933717182418}
|
||||||
m_Position: {x: 240, y: 50, z: 0}
|
m_Position: {x: 170, y: 20, z: 0}
|
||||||
- serializedVersion: 1
|
- serializedVersion: 1
|
||||||
m_State: {fileID: 1102186001672383516}
|
m_State: {fileID: 1102186001672383516}
|
||||||
m_Position: {x: 240, y: -10, z: 0}
|
m_Position: {x: 400, y: -50, z: 0}
|
||||||
- serializedVersion: 1
|
- serializedVersion: 1
|
||||||
m_State: {fileID: 2206263804988382436}
|
m_State: {fileID: 2206263804988382436}
|
||||||
m_Position: {x: 240, y: -120, z: 0}
|
m_Position: {x: 390, y: -140, z: 0}
|
||||||
- serializedVersion: 1
|
- serializedVersion: 1
|
||||||
m_State: {fileID: -493156934175870501}
|
m_State: {fileID: -493156934175870501}
|
||||||
m_Position: {x: -30, y: -130, z: 0}
|
m_Position: {x: -30, y: -130, z: 0}
|
||||||
- serializedVersion: 1
|
- serializedVersion: 1
|
||||||
m_State: {fileID: -3801079781883241350}
|
m_State: {fileID: -3801079781883241350}
|
||||||
m_Position: {x: 270, y: -330, z: 0}
|
m_Position: {x: 270, y: -330, z: 0}
|
||||||
|
- serializedVersion: 1
|
||||||
|
m_State: {fileID: -262143111545491946}
|
||||||
|
m_Position: {x: 440, y: 150, z: 0}
|
||||||
m_ChildStateMachines: []
|
m_ChildStateMachines: []
|
||||||
m_AnyStateTransitions: []
|
m_AnyStateTransitions: []
|
||||||
m_EntryTransitions: []
|
m_EntryTransitions: []
|
||||||
m_StateMachineTransitions: {}
|
m_StateMachineTransitions: {}
|
||||||
m_StateMachineBehaviours: []
|
m_StateMachineBehaviours: []
|
||||||
m_AnyStatePosition: {x: 48, y: 60, z: 0}
|
m_AnyStatePosition: {x: 10, y: 60, z: 0}
|
||||||
m_EntryPosition: {x: 30, y: 120, z: 0}
|
m_EntryPosition: {x: -30, y: 140, z: 0}
|
||||||
m_ExitPosition: {x: 528, y: 60, z: 0}
|
m_ExitPosition: {x: 680, y: 40, z: 0}
|
||||||
m_ParentStateMachinePosition: {x: 710, y: -50, z: 0}
|
m_ParentStateMachinePosition: {x: 710, y: -50, z: 0}
|
||||||
m_DefaultState: {fileID: 1102466317250516052}
|
m_DefaultState: {fileID: 1102466317250516052}
|
||||||
--- !u!1107 &1107517961391708756
|
--- !u!1107 &1107517961391708756
|
||||||
@@ -46053,6 +46145,28 @@ MonoBehaviour:
|
|||||||
- tagName: LockRotation
|
- tagName: LockRotation
|
||||||
tagType: 3
|
tagType: 3
|
||||||
normalizedTime: {x: 0.35, y: 0.65}
|
normalizedTime: {x: 0.35, y: 0.65}
|
||||||
|
--- !u!1101 &3665975024854504718
|
||||||
|
AnimatorStateTransition:
|
||||||
|
m_ObjectHideFlags: 1
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name:
|
||||||
|
m_Conditions: []
|
||||||
|
m_DstStateMachine: {fileID: 0}
|
||||||
|
m_DstState: {fileID: 0}
|
||||||
|
m_Solo: 0
|
||||||
|
m_Mute: 0
|
||||||
|
m_IsExit: 1
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TransitionDuration: 0.25
|
||||||
|
m_TransitionOffset: 0
|
||||||
|
m_ExitTime: 0.8717949
|
||||||
|
m_HasExitTime: 1
|
||||||
|
m_HasFixedDuration: 1
|
||||||
|
m_InterruptionSource: 0
|
||||||
|
m_OrderedInterruption: 1
|
||||||
|
m_CanTransitionToSelf: 1
|
||||||
--- !u!114 &3671708723907702589
|
--- !u!114 &3671708723907702589
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -47866,8 +47980,7 @@ MonoBehaviour:
|
|||||||
ignoreDefense: 0
|
ignoreDefense: 0
|
||||||
activeRagdoll: 0
|
activeRagdoll: 0
|
||||||
senselessTime: 0
|
senselessTime: 0
|
||||||
resetAttackTrigger: 0
|
blockInputBeforeTime: 0.5
|
||||||
resetTriggerBeforeTime: 0.5
|
|
||||||
unlockRotationTime: 0.7
|
unlockRotationTime: 0.7
|
||||||
lerpPositionTowardsTarget: 0
|
lerpPositionTowardsTarget: 0
|
||||||
maxLerpDistance: 3.5
|
maxLerpDistance: 3.5
|
||||||
@@ -48021,8 +48134,7 @@ MonoBehaviour:
|
|||||||
ignoreDefense: 0
|
ignoreDefense: 0
|
||||||
activeRagdoll: 0
|
activeRagdoll: 0
|
||||||
senselessTime: 0
|
senselessTime: 0
|
||||||
resetAttackTrigger: 1
|
blockInputBeforeTime: 0.5
|
||||||
resetTriggerBeforeTime: 0.5
|
|
||||||
unlockRotationTime: 0.7
|
unlockRotationTime: 0.7
|
||||||
lerpPositionTowardsTarget: 0
|
lerpPositionTowardsTarget: 0
|
||||||
maxLerpDistance: 3.5
|
maxLerpDistance: 3.5
|
||||||
@@ -48424,8 +48536,7 @@ MonoBehaviour:
|
|||||||
ignoreDefense: 1
|
ignoreDefense: 1
|
||||||
activeRagdoll: 0
|
activeRagdoll: 0
|
||||||
senselessTime: 0
|
senselessTime: 0
|
||||||
resetAttackTrigger: 0
|
blockInputBeforeTime: 0.5
|
||||||
resetTriggerBeforeTime: 0.6
|
|
||||||
unlockRotationTime: 0.7
|
unlockRotationTime: 0.7
|
||||||
lerpPositionTowardsTarget: 1
|
lerpPositionTowardsTarget: 1
|
||||||
maxLerpDistance: 3.5
|
maxLerpDistance: 3.5
|
||||||
@@ -48772,10 +48883,10 @@ AnimatorStateTransition:
|
|||||||
m_Mute: 0
|
m_Mute: 0
|
||||||
m_IsExit: 0
|
m_IsExit: 0
|
||||||
serializedVersion: 3
|
serializedVersion: 3
|
||||||
m_TransitionDuration: 0.33513224
|
m_TransitionDuration: 0.26323152
|
||||||
m_TransitionOffset: 0
|
m_TransitionOffset: 0.018871611
|
||||||
m_ExitTime: 0.8191499
|
m_ExitTime: 0.8424806
|
||||||
m_HasExitTime: 1
|
m_HasExitTime: 0
|
||||||
m_HasFixedDuration: 1
|
m_HasFixedDuration: 1
|
||||||
m_InterruptionSource: 0
|
m_InterruptionSource: 0
|
||||||
m_OrderedInterruption: 1
|
m_OrderedInterruption: 1
|
||||||
@@ -49313,8 +49424,7 @@ MonoBehaviour:
|
|||||||
ignoreDefense: 1
|
ignoreDefense: 1
|
||||||
activeRagdoll: 0
|
activeRagdoll: 0
|
||||||
senselessTime: 0
|
senselessTime: 0
|
||||||
resetAttackTrigger: 0
|
blockInputBeforeTime: 0.5
|
||||||
resetTriggerBeforeTime: 0.6
|
|
||||||
unlockRotationTime: 0.7
|
unlockRotationTime: 0.7
|
||||||
lerpPositionTowardsTarget: 1
|
lerpPositionTowardsTarget: 1
|
||||||
maxLerpDistance: 3.5
|
maxLerpDistance: 3.5
|
||||||
|
|||||||
@@ -9838,7 +9838,6 @@ GameObject:
|
|||||||
- component: {fileID: 7898212980114005163}
|
- component: {fileID: 7898212980114005163}
|
||||||
- component: {fileID: 8020189233111417037}
|
- component: {fileID: 8020189233111417037}
|
||||||
- component: {fileID: 8020706684658151899}
|
- component: {fileID: 8020706684658151899}
|
||||||
- component: {fileID: 7789765392435096873}
|
|
||||||
m_Layer: 0
|
m_Layer: 0
|
||||||
m_Name: Particles
|
m_Name: Particles
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
@@ -14484,21 +14483,6 @@ ParticleSystemRenderer:
|
|||||||
m_MeshWeighting2: 1
|
m_MeshWeighting2: 1
|
||||||
m_MeshWeighting3: 1
|
m_MeshWeighting3: 1
|
||||||
m_MaskInteraction: 0
|
m_MaskInteraction: 0
|
||||||
--- !u!114 &7789765392435096873
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 7893307381764779335}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: dded6759b4b430e4283cf015251490b7, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
target: {fileID: 0}
|
|
||||||
Force: 1
|
|
||||||
DistanceRelative: 0
|
|
||||||
--- !u!1 &7893317824759632779
|
--- !u!1 &7893317824759632779
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
|||||||
@@ -14528,6 +14528,26 @@ PrefabInstance:
|
|||||||
propertyPath: m_Name
|
propertyPath: m_Name
|
||||||
value: GhostDemon
|
value: GhostDemon
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 974380812503253259, guid: fe3f8cbdaa5d03147a0de1c74712d32b,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: m_IsActive
|
||||||
|
value: 1
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1481547778589526557, guid: fe3f8cbdaa5d03147a0de1c74712d32b,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: _maxAttackCount
|
||||||
|
value: 5
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1481547778589526557, guid: fe3f8cbdaa5d03147a0de1c74712d32b,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: _minAttackCount
|
||||||
|
value: 2
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1481547778589526557, guid: fe3f8cbdaa5d03147a0de1c74712d32b,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: selectedToolbar
|
||||||
|
value: 9
|
||||||
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 1564533674011589205, guid: fe3f8cbdaa5d03147a0de1c74712d32b,
|
- target: {fileID: 1564533674011589205, guid: fe3f8cbdaa5d03147a0de1c74712d32b,
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_AnchorMax.x
|
propertyPath: m_AnchorMax.x
|
||||||
@@ -16396,6 +16416,11 @@ PrefabInstance:
|
|||||||
propertyPath: m_Layer
|
propertyPath: m_Layer
|
||||||
value: 5
|
value: 5
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1385765897516864307, guid: 851e8e61247888340bdec90fc8aa37f5,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: openCloseWindow
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 1494204689157949844, guid: 851e8e61247888340bdec90fc8aa37f5,
|
- target: {fileID: 1494204689157949844, guid: 851e8e61247888340bdec90fc8aa37f5,
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_Layer
|
propertyPath: m_Layer
|
||||||
@@ -16501,6 +16526,11 @@ PrefabInstance:
|
|||||||
propertyPath: m_SizeDelta.y
|
propertyPath: m_SizeDelta.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1979772587506359731, guid: 851e8e61247888340bdec90fc8aa37f5,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: m_AnchoredPosition.y
|
||||||
|
value: 0.00030639363
|
||||||
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 1979772587738893350, guid: 851e8e61247888340bdec90fc8aa37f5,
|
- target: {fileID: 1979772587738893350, guid: 851e8e61247888340bdec90fc8aa37f5,
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_Enabled
|
propertyPath: m_Enabled
|
||||||
@@ -17420,7 +17450,17 @@ PrefabInstance:
|
|||||||
- target: {fileID: 4704300330561169846, guid: 851e8e61247888340bdec90fc8aa37f5,
|
- target: {fileID: 4704300330561169846, guid: 851e8e61247888340bdec90fc8aa37f5,
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: strafeRollLeftCorrectionAngle
|
propertyPath: strafeRollLeftCorrectionAngle
|
||||||
value: 70.6
|
value: -20
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4704300330561169846, guid: 851e8e61247888340bdec90fc8aa37f5,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: strafeRollRightCorrectionAngle
|
||||||
|
value: -10
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4704300330561169846, guid: 851e8e61247888340bdec90fc8aa37f5,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: strafeRollBackwardCorrectionAngle
|
||||||
|
value: 180
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4704300330561169846, guid: 851e8e61247888340bdec90fc8aa37f5,
|
- target: {fileID: 4704300330561169846, guid: 851e8e61247888340bdec90fc8aa37f5,
|
||||||
type: 3}
|
type: 3}
|
||||||
@@ -23177,6 +23217,12 @@ PrefabInstance:
|
|||||||
m_AddedGameObjects: []
|
m_AddedGameObjects: []
|
||||||
m_AddedComponents: []
|
m_AddedComponents: []
|
||||||
m_SourcePrefab: {fileID: 100100000, guid: 05db168aa73c6d7489b4930e8ac0f2ce, type: 3}
|
m_SourcePrefab: {fileID: 100100000, guid: 05db168aa73c6d7489b4930e8ac0f2ce, type: 3}
|
||||||
|
--- !u!1 &1776088664 stripped
|
||||||
|
GameObject:
|
||||||
|
m_CorrespondingSourceObject: {fileID: 1154969794063037242, guid: ca5617ade2be349c3826daac1e6fdcf2,
|
||||||
|
type: 3}
|
||||||
|
m_PrefabInstance: {fileID: 1993521574}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
--- !u!1 &1785581995
|
--- !u!1 &1785581995
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -24305,7 +24351,11 @@ PrefabInstance:
|
|||||||
m_RemovedComponents: []
|
m_RemovedComponents: []
|
||||||
m_RemovedGameObjects: []
|
m_RemovedGameObjects: []
|
||||||
m_AddedGameObjects: []
|
m_AddedGameObjects: []
|
||||||
m_AddedComponents: []
|
m_AddedComponents:
|
||||||
|
- targetCorrespondingSourceObject: {fileID: 1154969794063037242, guid: ca5617ade2be349c3826daac1e6fdcf2,
|
||||||
|
type: 3}
|
||||||
|
insertIndex: -1
|
||||||
|
addedObject: {fileID: 1993521576}
|
||||||
m_SourcePrefab: {fileID: 100100000, guid: ca5617ade2be349c3826daac1e6fdcf2, type: 3}
|
m_SourcePrefab: {fileID: 100100000, guid: ca5617ade2be349c3826daac1e6fdcf2, type: 3}
|
||||||
--- !u!4 &1993521575 stripped
|
--- !u!4 &1993521575 stripped
|
||||||
Transform:
|
Transform:
|
||||||
@@ -24313,6 +24363,21 @@ Transform:
|
|||||||
type: 3}
|
type: 3}
|
||||||
m_PrefabInstance: {fileID: 1993521574}
|
m_PrefabInstance: {fileID: 1993521574}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
--- !u!114 &1993521576
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1776088664}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 5547fefaea58c4174adccc95d48c54ae, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_OnTimeScaleChanged:
|
||||||
|
m_PersistentCalls:
|
||||||
|
m_Calls: []
|
||||||
--- !u!1 &2002250978
|
--- !u!1 &2002250978
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
|||||||
@@ -81,8 +81,11 @@ namespace Beyond
|
|||||||
private PlayerAttribute brightnessAttribute;
|
private PlayerAttribute brightnessAttribute;
|
||||||
private PlayerAttribute maturityAttribute;
|
private PlayerAttribute maturityAttribute;
|
||||||
private MagicAttacks m_magicAttacks;
|
private MagicAttacks m_magicAttacks;
|
||||||
|
private bMeleeCombatInput m_meleeCombatInput;
|
||||||
|
|
||||||
public MagicAttacks Magic => m_magicAttacks;
|
public MagicAttacks Magic => m_magicAttacks;
|
||||||
|
public bMeleeCombatInput MeleeCombatInput => m_meleeCombatInput;
|
||||||
|
|
||||||
public PlayerAttribute MaturityAttribute
|
public PlayerAttribute MaturityAttribute
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
@@ -186,6 +189,7 @@ namespace Beyond
|
|||||||
m_meleeManager = GetComponent<vMeleeManager>();
|
m_meleeManager = GetComponent<vMeleeManager>();
|
||||||
m_magicAttacks = GetComponent<MagicAttacks>();
|
m_magicAttacks = GetComponent<MagicAttacks>();
|
||||||
m_autoTargetting = GetComponent<AutoTargetting>();
|
m_autoTargetting = GetComponent<AutoTargetting>();
|
||||||
|
m_meleeCombatInput = GetComponent<bMeleeCombatInput>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -867,10 +871,10 @@ namespace Beyond
|
|||||||
|
|
||||||
public void PlaySingleSound(AudioClip clipToPlay, bool destroyAfterPlaying = true)
|
public void PlaySingleSound(AudioClip clipToPlay, bool destroyAfterPlaying = true)
|
||||||
{
|
{
|
||||||
// Opcjonalne opóŸnienie na starcie poziomu, aby unikn¹æ "spamowania" dŸwiêkami
|
// Opcjonalne op<EFBFBD>nienie na starcie poziomu, aby unikn<EFBFBD><EFBFBD> "spamowania" d<EFBFBD>wi<EFBFBD>kami
|
||||||
if (Time.timeSinceLevelLoad < 0.5f && clipToPlay != null)
|
if (Time.timeSinceLevelLoad < 0.5f && clipToPlay != null)
|
||||||
{
|
{
|
||||||
// Mo¿esz chcieæ to odkomentowaæ, jeœli dŸwiêki na starcie s¹ problemem
|
// Mo<EFBFBD>esz chcie<EFBFBD> to odkomentowa<EFBFBD>, je<EFBFBD>li d<EFBFBD>wi<EFBFBD>ki na starcie s<EFBFBD> problemem
|
||||||
// return;
|
// return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -885,28 +889,28 @@ namespace Beyond
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Instancjonowanie prefabu dŸwiêkowego
|
// Instancjonowanie prefabu d<EFBFBD>wi<EFBFBD>kowego
|
||||||
// Upewnij siê, ¿e prefab 'audioSource' ma komponent AudioSource
|
// Upewnij si<EFBFBD>, <EFBFBD>e prefab 'audioSource' ma komponent AudioSource
|
||||||
GameObject audioObjectInstance = Instantiate(this.audioSource, transform.position, transform.rotation);
|
GameObject audioObjectInstance = Instantiate(this.audioSource, transform.position, transform.rotation);
|
||||||
AudioSource sourceComponent = audioObjectInstance.GetComponent<AudioSource>();
|
AudioSource sourceComponent = audioObjectInstance.GetComponent<AudioSource>();
|
||||||
|
|
||||||
if (sourceComponent != null)
|
if (sourceComponent != null)
|
||||||
{
|
{
|
||||||
// PlayOneShot jest dobre dla efektów, nie przerywa innych dŸwiêków na tym samym source,
|
// PlayOneShot jest dobre dla efekt<EFBFBD>w, nie przerywa innych d<EFBFBD>wi<EFBFBD>k<EFBFBD>w na tym samym source,
|
||||||
// jeœli s¹ one odtwarzane przez .Play() i nie u¿ywaj¹ tego samego kana³u.
|
// je<EFBFBD>li s<EFBFBD> one odtwarzane przez .Play() i nie u<EFBFBD>ywaj<EFBFBD> tego samego kana<EFBFBD>u.
|
||||||
sourceComponent.PlayOneShot(clipToPlay);
|
sourceComponent.PlayOneShot(clipToPlay);
|
||||||
|
|
||||||
if (destroyAfterPlaying)
|
if (destroyAfterPlaying)
|
||||||
{
|
{
|
||||||
// Niszczymy obiekt GameObject zawieraj¹cy AudioSource po zakoñczeniu odtwarzania klipu.
|
// Niszczymy obiekt GameObject zawieraj<EFBFBD>cy AudioSource po zako<EFBFBD>czeniu odtwarzania klipu.
|
||||||
// Dodajemy ma³y bufor czasowy, aby upewniæ siê, ¿e dŸwiêk zd¹¿y siê odtworzyæ w ca³oœci.
|
// Dodajemy ma<EFBFBD>y bufor czasowy, aby upewni<EFBFBD> si<EFBFBD>, <EFBFBD>e d<EFBFBD>wi<EFBFBD>k zd<EFBFBD><EFBFBD>y si<EFBFBD> odtworzy<EFBFBD> w ca<EFBFBD>o<EFBFBD>ci.
|
||||||
Destroy(audioObjectInstance, clipToPlay.length + 0.1f);
|
Destroy(audioObjectInstance, clipToPlay.length + 0.1f);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
Debug.LogWarning("The instantiated 'audioSource' prefab (from Player.cs) does not have an AudioSource component. Destroying instance.");
|
Debug.LogWarning("The instantiated 'audioSource' prefab (from Player.cs) does not have an AudioSource component. Destroying instance.");
|
||||||
Destroy(audioObjectInstance); // Posprz¹taj, jeœli coœ posz³o nie tak
|
Destroy(audioObjectInstance); // Posprz<EFBFBD>taj, je<EFBFBD>li co<EFBFBD> posz<EFBFBD>o nie tak
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -13,6 +13,11 @@ namespace Invector.vMelee
|
|||||||
|
|
||||||
public class bMeleeAttackControl : StateMachineBehaviour
|
public class bMeleeAttackControl : StateMachineBehaviour
|
||||||
{
|
{
|
||||||
|
// --- MODIFICATION: Static variable to track the currently active attack state ---
|
||||||
|
private static int activeAttackInstanceId = 0;
|
||||||
|
private int myAttackInstanceId;
|
||||||
|
// --- END MODIFICATION ---
|
||||||
|
|
||||||
[Header("Damage Window")]
|
[Header("Damage Window")]
|
||||||
[Tooltip("NormalizedTime of Active Damage")]
|
[Tooltip("NormalizedTime of Active Damage")]
|
||||||
public float startDamage = 0.05f;
|
public float startDamage = 0.05f;
|
||||||
@@ -37,10 +42,8 @@ namespace Invector.vMelee
|
|||||||
public float senselessTime;
|
public float senselessTime;
|
||||||
|
|
||||||
[Header("Attack Flow")]
|
[Header("Attack Flow")]
|
||||||
[Tooltip("Check true in the last attack of your combo to reset the FSM attack triggers.")]
|
[Tooltip("Normalized time point to start allowing the next attack input.")]
|
||||||
public bool resetAttackTrigger;
|
public float blockInputBeforeTime = 0.5f;
|
||||||
[Tooltip("Normalized time point to reset attack triggers. (Used only if Combo Timing Window is disabled)")]
|
|
||||||
public float resetTriggerBeforeTime = 0.5f;
|
|
||||||
|
|
||||||
[Header("Combo & Movement")]
|
[Header("Combo & Movement")]
|
||||||
[Tooltip("Normalized time to unlock rotation, allowing the player to aim the next attack in a combo. Set to 1 to disable.")]
|
[Tooltip("Normalized time to unlock rotation, allowing the player to aim the next attack in a combo. Set to 1 to disable.")]
|
||||||
@@ -62,7 +65,6 @@ namespace Invector.vMelee
|
|||||||
[Tooltip("How close the character should get to the target.")]
|
[Tooltip("How close the character should get to the target.")]
|
||||||
public float stoppingDistance = 1.2f;
|
public float stoppingDistance = 1.2f;
|
||||||
|
|
||||||
// --- MODIFIED: Switched to a real-time duration model ---
|
|
||||||
[Header("Combo Timing Window")]
|
[Header("Combo Timing Window")]
|
||||||
[Tooltip("Enable a special timing window at the end of the attack to chain the next combo hit.")]
|
[Tooltip("Enable a special timing window at the end of the attack to chain the next combo hit.")]
|
||||||
public bool useComboTimingWindow = false;
|
public bool useComboTimingWindow = false;
|
||||||
@@ -76,7 +78,6 @@ namespace Invector.vMelee
|
|||||||
|
|
||||||
[Tooltip("The time scale to use during the combo window for a slow-motion effect.")]
|
[Tooltip("The time scale to use during the combo window for a slow-motion effect.")]
|
||||||
public float comboWindowTimeScale = 0.1f;
|
public float comboWindowTimeScale = 0.1f;
|
||||||
// --- END MODIFICATION ---
|
|
||||||
|
|
||||||
[Header("Slow Motion Settings")]
|
[Header("Slow Motion Settings")]
|
||||||
[Tooltip("Enable slow motion effect during this attack based on conditions below.")]
|
[Tooltip("Enable slow motion effect during this attack based on conditions below.")]
|
||||||
@@ -104,11 +105,16 @@ namespace Invector.vMelee
|
|||||||
|
|
||||||
private bThirdPersonController _characterController;
|
private bThirdPersonController _characterController;
|
||||||
private bool _isRotationLockedByThis;
|
private bool _isRotationLockedByThis;
|
||||||
private bool _comboWindowEffectTriggered; // --- NEW ---: Tracks if the slow-mo effect has been fired.
|
private bool _comboWindowEffectTriggered;
|
||||||
private Animator _animator;
|
private Animator _animator;
|
||||||
|
|
||||||
override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
|
override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
|
||||||
{
|
{
|
||||||
if (_animator == null) _animator = animator;
|
if (_animator == null) _animator = animator;
|
||||||
|
|
||||||
|
// --- MODIFICATION: Assign a unique ID to this state instance ---
|
||||||
|
myAttackInstanceId = ++activeAttackInstanceId;
|
||||||
|
// --- END MODIFICATION ---
|
||||||
|
|
||||||
mFighter = animator.GetComponent<vIAttackListener>();
|
mFighter = animator.GetComponent<vIAttackListener>();
|
||||||
_characterController = animator.GetComponent<bThirdPersonController>();
|
_characterController = animator.GetComponent<bThirdPersonController>();
|
||||||
@@ -122,7 +128,7 @@ namespace Invector.vMelee
|
|||||||
isAttacking = true;
|
isAttacking = true;
|
||||||
isActive = false;
|
isActive = false;
|
||||||
m_hasScaledTime = false;
|
m_hasScaledTime = false;
|
||||||
_comboWindowEffectTriggered = false; // --- NEW ---: Reset the flag on enter.
|
_comboWindowEffectTriggered = false;
|
||||||
|
|
||||||
if (_characterController != null)
|
if (_characterController != null)
|
||||||
{
|
{
|
||||||
@@ -134,12 +140,41 @@ namespace Invector.vMelee
|
|||||||
mFighter.OnEnableAttack();
|
mFighter.OnEnableAttack();
|
||||||
|
|
||||||
if (debug)
|
if (debug)
|
||||||
Debug.Log($"({damageType}) OnStateEnter. The trigger that started this state has been consumed by the Animator.");
|
Debug.Log($"({damageType}, ID: {myAttackInstanceId}) OnStateEnter. Now the authoritative state.");
|
||||||
|
|
||||||
|
// --- MODIFICATION: Immediately block input on enter ---
|
||||||
|
// This ensures the new state takes control right away.
|
||||||
|
BlockAttack(true);
|
||||||
|
// --- END MODIFICATION ---
|
||||||
|
|
||||||
if (attackTimeScaleStart < 0f) attackTimeScaleStart = startDamage;
|
if (attackTimeScaleStart < 0f) attackTimeScaleStart = startDamage;
|
||||||
if (attackTimeScaleEnd < 0f) attackTimeScaleEnd = endDamage;
|
if (attackTimeScaleEnd < 0f) attackTimeScaleEnd = endDamage;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void BlockAttack(bool block)
|
||||||
|
{
|
||||||
|
// --- MODIFICATION: Only allow the authoritative state to change the lock ---
|
||||||
|
if (myAttackInstanceId != activeAttackInstanceId)
|
||||||
|
{
|
||||||
|
if(debug) Debug.Log($"({damageType}, ID: {myAttackInstanceId}) Tried to change block but I am not the active instance ({activeAttackInstanceId}). Ignoring.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// --- END MODIFICATION ---
|
||||||
|
|
||||||
|
if (Player.Instance != null)
|
||||||
|
{
|
||||||
|
var meleeInput = Player.Instance.MeleeCombatInput;
|
||||||
|
if (meleeInput != null)
|
||||||
|
{
|
||||||
|
if (meleeInput.BlockAttack != block) // Only log/change if there is a change
|
||||||
|
{
|
||||||
|
if(debug) Debug.Log($"({damageType}, ID: {myAttackInstanceId}) Setting BlockAttack to: {block}");
|
||||||
|
meleeInput.BlockAttack = block;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
override public void OnStateUpdate(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
|
override public void OnStateUpdate(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
|
||||||
{
|
{
|
||||||
if (Player.Instance.ActiveWeaponTrail)
|
if (Player.Instance.ActiveWeaponTrail)
|
||||||
@@ -148,11 +183,10 @@ namespace Invector.vMelee
|
|||||||
float currentNormalizedTime = stateInfo.normalizedTime % 1;
|
float currentNormalizedTime = stateInfo.normalizedTime % 1;
|
||||||
if (currentNormalizedTime == 0 && stateInfo.normalizedTime > 0.5f) currentNormalizedTime = 1f;
|
if (currentNormalizedTime == 0 && stateInfo.normalizedTime > 0.5f) currentNormalizedTime = 1f;
|
||||||
|
|
||||||
// --- NEW: Centralized combo logic management ---
|
|
||||||
ManageComboLogic(currentNormalizedTime);
|
ManageComboLogic(currentNormalizedTime);
|
||||||
|
|
||||||
if (_characterController != null && _characterController.lockRotation)
|
if (_characterController != null && _characterController.lockRotation)
|
||||||
AttemptRotationTowardsAutoTarget(animator);
|
AttemptRotationTowardsAutoTarget(animator);
|
||||||
|
|
||||||
AttemptPositionLerp(animator);
|
AttemptPositionLerp(animator);
|
||||||
UpdateRotationLock(currentNormalizedTime);
|
UpdateRotationLock(currentNormalizedTime);
|
||||||
@@ -182,7 +216,7 @@ namespace Invector.vMelee
|
|||||||
|
|
||||||
override public void OnStateExit(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
|
override public void OnStateExit(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
|
||||||
{
|
{
|
||||||
if (debug) Debug.Log($"({damageType}) OnStateExit.");
|
if (debug) Debug.Log($"({damageType}, ID: {myAttackInstanceId}) OnStateExit.");
|
||||||
|
|
||||||
if (isActive)
|
if (isActive)
|
||||||
{
|
{
|
||||||
@@ -196,62 +230,52 @@ namespace Invector.vMelee
|
|||||||
isAttacking = false;
|
isAttacking = false;
|
||||||
m_hasScaledTime = false;
|
m_hasScaledTime = false;
|
||||||
|
|
||||||
// The TimeController now reliably handles resetting the time scale via its own coroutine.
|
if (_comboWindowEffectTriggered && TimeController.Instance != null)
|
||||||
// A manual reset here is no longer necessary and could cause conflicts.
|
|
||||||
/*
|
|
||||||
if (mFighter != null && resetAttackTrigger)
|
|
||||||
{
|
{
|
||||||
mFighter.ResetAttackTriggers();
|
_comboWindowEffectTriggered = false;
|
||||||
if (debug) Debug.Log($"({damageType}) Final trigger reset on exit due to 'Reset Attack Trigger' flag.");
|
TimeController.Instance.Reset();
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
if (_characterController != null && _isRotationLockedByThis)
|
if (_characterController != null && _isRotationLockedByThis)
|
||||||
{
|
{
|
||||||
_characterController.lockRotation = false;
|
_characterController.lockRotation = false;
|
||||||
_isRotationLockedByThis = false;
|
_isRotationLockedByThis = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// --- MODIFICATION: When exiting, ensure the attack is unblocked. ---
|
||||||
|
// This is a safety net. If this was the last attack in a combo,
|
||||||
|
// we need to make sure the input is unlocked for future actions.
|
||||||
|
BlockAttack(false);
|
||||||
|
// --- END MODIFICATION ---
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Manages the combo logic, including input window and time scale effects.
|
|
||||||
/// </summary>
|
|
||||||
private void ManageComboLogic(float currentNormalizedTime)
|
private void ManageComboLogic(float currentNormalizedTime)
|
||||||
{
|
{
|
||||||
if (!useComboTimingWindow)
|
if (blockInputBeforeTime > 0f)
|
||||||
{
|
{
|
||||||
// Fallback to old logic if new system is disabled for this state
|
if (currentNormalizedTime >= blockInputBeforeTime)
|
||||||
if (resetAttackTrigger && currentNormalizedTime >= resetTriggerBeforeTime)
|
|
||||||
{
|
{
|
||||||
if (mFighter != null)
|
BlockAttack(false); // Unlock input
|
||||||
mFighter.ResetAttackTriggers();
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
BlockAttack(true); // Block input
|
||||||
}
|
}
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// --- FIX 2: Corrected window logic ---
|
if (!useComboTimingWindow) return;
|
||||||
|
|
||||||
bool isInsideWindow = currentNormalizedTime >= comboWindowStartTime;
|
bool isInsideWindow = currentNormalizedTime >= comboWindowStartTime;
|
||||||
|
|
||||||
if (isInsideWindow)
|
if (isInsideWindow)
|
||||||
{
|
{
|
||||||
// --- We are INSIDE the combo window ---
|
|
||||||
// We STOP resetting the trigger to allow the player's input to register.
|
|
||||||
|
|
||||||
if (!_comboWindowEffectTriggered && TimeController.Instance != null)
|
if (!_comboWindowEffectTriggered && TimeController.Instance != null)
|
||||||
{
|
{
|
||||||
_comboWindowEffectTriggered = true;
|
_comboWindowEffectTriggered = true;
|
||||||
|
|
||||||
TimeController.Instance.SetTimeScaleForRealTimeSec(comboWindowTimeScale, comboWindowDuration, false);
|
TimeController.Instance.SetTimeScaleForRealTimeSec(comboWindowTimeScale, comboWindowDuration, false);
|
||||||
|
if (debug) Debug.Log($"({damageType}) COMBO WINDOW OPEN. Accepting input.");
|
||||||
if (debug) Debug.Log($"({damageType}) COMBO WINDOW OPEN. Accepting input. Animator mode set to UnscaledTime.");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
// --- We are OUTSIDE the combo window ---
|
|
||||||
// We continuously reset the trigger to consume any premature/late input.
|
|
||||||
if (mFighter != null)
|
|
||||||
mFighter.ResetAttackTriggers();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// --- Other methods remain unchanged ---
|
// --- Other methods remain unchanged ---
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ using Invector.vEventSystems;
|
|||||||
using Invector.vMelee;
|
using Invector.vMelee;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using System.Collections;
|
using System.Collections;
|
||||||
|
using UnityEngine.Android;
|
||||||
|
|
||||||
namespace Beyond
|
namespace Beyond
|
||||||
{
|
{
|
||||||
@@ -23,6 +24,8 @@ namespace Beyond
|
|||||||
internal vMeleeManager meleeManager;
|
internal vMeleeManager meleeManager;
|
||||||
protected bool _isAttacking;
|
protected bool _isAttacking;
|
||||||
|
|
||||||
|
public bool BlockAttack { get; set; }
|
||||||
|
|
||||||
public bool isAttacking
|
public bool isAttacking
|
||||||
{
|
{
|
||||||
get => _isAttacking || (cc != null && cc.IsAnimatorTag("Attack"));
|
get => _isAttacking || (cc != null && cc.IsAnimatorTag("Attack"));
|
||||||
@@ -87,16 +90,17 @@ namespace Beyond
|
|||||||
autoTargeting = GetComponent<AutoTargetting>();
|
autoTargeting = GetComponent<AutoTargetting>();
|
||||||
if (autoTargeting == null && Player.Instance != null && Player.Instance.gameObject == this.gameObject)
|
if (autoTargeting == null && Player.Instance != null && Player.Instance.gameObject == this.gameObject)
|
||||||
{
|
{
|
||||||
autoTargeting = Player.Instance.GetComponent<AutoTargetting>();
|
autoTargeting = Player.Instance.GetComponent<AutoTargetting>();
|
||||||
}
|
}
|
||||||
if (autoTargeting == null && cc != null && cc.transform.root != null)
|
if (autoTargeting == null && cc != null && cc.transform.root != null)
|
||||||
{
|
{
|
||||||
autoTargeting = cc.transform.root.GetComponentInChildren<AutoTargetting>(true);
|
autoTargeting = cc.transform.root.GetComponentInChildren<AutoTargetting>(true);
|
||||||
}
|
}
|
||||||
if (autoTargeting == null)
|
if (autoTargeting == null)
|
||||||
{
|
{
|
||||||
Debug.LogWarning("bMeleeCombatInput: AutoTargetting component not found. Dash towards target will require manual aiming.");
|
Debug.LogWarning("bMeleeCombatInput: AutoTargetting component not found. Dash towards target will require manual aiming.");
|
||||||
}
|
}
|
||||||
|
BlockAttack = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void LateUpdate()
|
protected override void LateUpdate()
|
||||||
@@ -148,6 +152,10 @@ namespace Beyond
|
|||||||
{
|
{
|
||||||
cc.animator.SetInteger(vAnimatorParameters.AttackID, AttackID);
|
cc.animator.SetInteger(vAnimatorParameters.AttackID, AttackID);
|
||||||
cc.animator.SetTrigger(vAnimatorParameters.WeakAttack);
|
cc.animator.SetTrigger(vAnimatorParameters.WeakAttack);
|
||||||
|
if (TimeController.Instance != null)
|
||||||
|
{
|
||||||
|
TimeController.Instance.Reset(); // Ensure normal time scale on attack start
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public virtual void MeleeStrongAttackInput()
|
public virtual void MeleeStrongAttackInput()
|
||||||
@@ -237,7 +245,7 @@ namespace Beyond
|
|||||||
public virtual bool MeleeAttackConditions()
|
public virtual bool MeleeAttackConditions()
|
||||||
{
|
{
|
||||||
if (meleeManager == null) meleeManager = GetComponent<vMeleeManager>();
|
if (meleeManager == null) meleeManager = GetComponent<vMeleeManager>();
|
||||||
return meleeManager != null && cc != null && cc.isGrounded && !cc.customAction && !cc.IsAnimatorTag("special") &&
|
return !BlockAttack && meleeManager != null && cc != null && cc.isGrounded && !cc.customAction && !cc.IsAnimatorTag("special") &&
|
||||||
!cc.isJumping && !cc.isCrouching && !cc.isRolling && !isEquipping &&
|
!cc.isJumping && !cc.isCrouching && !cc.isRolling && !isEquipping &&
|
||||||
(cc.animator != null && !cc.animator.IsInTransition(cc.baseLayer)) && !isRotatingAndDashing;
|
(cc.animator != null && !cc.animator.IsInTransition(cc.baseLayer)) && !isRotatingAndDashing;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,10 +18,6 @@ namespace Beyond
|
|||||||
public bool useAnimationBasedRotation = false;
|
public bool useAnimationBasedRotation = false;
|
||||||
|
|
||||||
[Header("Beyond's Strafe Combat Settings")]
|
[Header("Beyond's Strafe Combat Settings")]
|
||||||
[Tooltip("The minimum horizontal input value to trigger a side roll instead of a forward/backward one.")]
|
|
||||||
[Range(0.1f, 1.0f)]
|
|
||||||
public float strafeRollInputThreshold = 0.3f;
|
|
||||||
|
|
||||||
[Tooltip("The name of the animation state to play when rolling forward while strafing. (This is now disabled)")]
|
[Tooltip("The name of the animation state to play when rolling forward while strafing. (This is now disabled)")]
|
||||||
public string strafeRollForwardAnim = "Roll_Forward"; // Kept for reference, but won't be used
|
public string strafeRollForwardAnim = "Roll_Forward"; // Kept for reference, but won't be used
|
||||||
[Tooltip("The name of the animation state to play when rolling backward while strafing.")]
|
[Tooltip("The name of the animation state to play when rolling backward while strafing.")]
|
||||||
@@ -31,15 +27,19 @@ namespace Beyond
|
|||||||
[Tooltip("The name of the animation state to play when rolling right while strafing.")]
|
[Tooltip("The name of the animation state to play when rolling right while strafing.")]
|
||||||
public string strafeRollRightAnim = "Roll_Right";
|
public string strafeRollRightAnim = "Roll_Right";
|
||||||
|
|
||||||
// --- UPDATED FIELDS FOR INDEPENDENT CONTROL ---
|
// --- UPDATED FIELDS FOR FINER CONTROL ---
|
||||||
[Header("Beyond's Strafe Roll Correction")]
|
[Header("Beyond's Strafe Roll Correction")]
|
||||||
[Tooltip("The fixed angle to rotate the character before a LEFT strafe roll.")]
|
[Tooltip("An additional angle to apply for a LEFT strafe roll.")]
|
||||||
[Range(0f, 90f)]
|
[Range(-90f, 90f)]
|
||||||
public float strafeRollLeftCorrectionAngle = 45f;
|
public float strafeRollLeftCorrectionAngle = -45f;
|
||||||
|
|
||||||
[Tooltip("The fixed angle to rotate the character before a RIGHT strafe roll.")]
|
[Tooltip("An additional angle to apply for a RIGHT strafe roll.")]
|
||||||
[Range(0f, 90f)]
|
[Range(-90f, 90f)]
|
||||||
public float strafeRollRightCorrectionAngle = 70f;
|
public float strafeRollRightCorrectionAngle = 45f;
|
||||||
|
|
||||||
|
[Tooltip("An additional angle to apply for a BACKWARD strafe roll. Use 0 for a standard 180-degree roll.")]
|
||||||
|
[Range(-180f, 180f)]
|
||||||
|
public float strafeRollBackwardCorrectionAngle = 0f;
|
||||||
// --- END OF UPDATED FIELDS ---
|
// --- END OF UPDATED FIELDS ---
|
||||||
|
|
||||||
public bool GodMode
|
public bool GodMode
|
||||||
@@ -64,27 +64,21 @@ namespace Beyond
|
|||||||
|
|
||||||
protected override void RollBehavior()
|
protected override void RollBehavior()
|
||||||
{
|
{
|
||||||
// If we are not strafing, use the default Invector roll behavior.
|
|
||||||
if (!isStrafing)
|
if (!isStrafing)
|
||||||
{
|
{
|
||||||
base.RollBehavior();
|
base.RollBehavior();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Custom Strafe Roll with Root Motion (no rotation logic needed here anymore)
|
|
||||||
if (!isRolling)
|
if (!isRolling)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
Vector3 deltaPosition = new Vector3(animator.deltaPosition.x, 0f, animator.deltaPosition.z);
|
Vector3 deltaPosition = new Vector3(animator.deltaPosition.x, 0f, animator.deltaPosition.z);
|
||||||
Vector3 v = (deltaPosition / Time.deltaTime) * (1f - stopMoveWeight);
|
Vector3 v = (deltaPosition / Time.deltaTime) * (1f - stopMoveWeight);
|
||||||
|
|
||||||
if (rollUseGravity && animator.GetNormalizedTime(baseLayer) >= rollUseGravityTime)
|
if (rollUseGravity && animator.GetNormalizedTime(baseLayer) >= rollUseGravityTime)
|
||||||
{
|
{
|
||||||
v.y = _rigidbody.linearVelocity.y;
|
v.y = _rigidbody.linearVelocity.y;
|
||||||
}
|
}
|
||||||
|
|
||||||
_rigidbody.linearVelocity = v;
|
_rigidbody.linearVelocity = v;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -120,7 +114,12 @@ namespace Beyond
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// --- MODIFIED METHOD WITH TWO-ANGLE LOGIC ---
|
// --- FINAL ROBUST METHOD ---
|
||||||
|
// This logic now handles all specified cases:
|
||||||
|
// 1. Sets a base rotation facing the camera to ensure consistency.
|
||||||
|
// 2. Defaults to a backward roll if input is near-zero (fixing the lingering roll issue).
|
||||||
|
// 3. Never uses the forward roll; it triggers a backward roll instead.
|
||||||
|
// 4. Applies a unique correction angle for backward rolls as well as side rolls.
|
||||||
private void TriggerStrafeRoll(string forwardAnim, string backwardAnim, string leftAnim, string rightAnim)
|
private void TriggerStrafeRoll(string forwardAnim, string backwardAnim, string leftAnim, string rightAnim)
|
||||||
{
|
{
|
||||||
OnRoll.Invoke();
|
OnRoll.Invoke();
|
||||||
@@ -129,42 +128,59 @@ namespace Beyond
|
|||||||
currentStaminaRecoveryDelay = 2f;
|
currentStaminaRecoveryDelay = 2f;
|
||||||
|
|
||||||
string animToPlay;
|
string animToPlay;
|
||||||
|
float correctionAngle = 0f;
|
||||||
|
|
||||||
// Prioritize side rolls based on horizontal input.
|
// Determine the base "forward" direction from the camera, ignoring vertical tilt.
|
||||||
if (Mathf.Abs(horizontalSpeed) > strafeRollInputThreshold)
|
Vector3 baseForward = Vector3.Scale(Camera.main.transform.forward, new Vector3(1, 0, 1)).normalized;
|
||||||
|
if (baseForward == Vector3.zero) baseForward = transform.forward; // Fallback
|
||||||
|
|
||||||
|
// Set the character's rotation to this base direction. This provides a clean slate.
|
||||||
|
transform.rotation = Quaternion.LookRotation(baseForward);
|
||||||
|
|
||||||
|
// Check if input is negligible (joystick is centered).
|
||||||
|
// input.sqrMagnitude is more efficient than input.magnitude. 0.1*0.1=0.01.
|
||||||
|
if (input.sqrMagnitude < 0.01f)
|
||||||
{
|
{
|
||||||
float correction = 0f;
|
// If no input, always perform a backward roll.
|
||||||
|
animToPlay = backwardAnim;
|
||||||
// Check if rolling right (positive horizontal speed)
|
correctionAngle = strafeRollBackwardCorrectionAngle;
|
||||||
if (horizontalSpeed > 0)
|
|
||||||
{
|
|
||||||
animToPlay = rightAnim;
|
|
||||||
// For a right roll, we apply a negative rotation (turn left) to angle the trajectory forward.
|
|
||||||
correction = -strafeRollRightCorrectionAngle;
|
|
||||||
}
|
|
||||||
// Otherwise, rolling left
|
|
||||||
else
|
|
||||||
{
|
|
||||||
animToPlay = leftAnim;
|
|
||||||
// For a left roll, we apply a positive rotation (turn right) to angle the trajectory forward.
|
|
||||||
correction = strafeRollLeftCorrectionAngle;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Apply the calculated rotation instantly around the Y-axis.
|
|
||||||
if (correction != 0)
|
|
||||||
{
|
|
||||||
transform.Rotate(0, correction, 0);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
// If horizontal input is not met, default to the backward roll.
|
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
animToPlay = backwardAnim;
|
// If there IS input, determine the dominant direction.
|
||||||
|
if (Mathf.Abs(verticalSpeed) >= Mathf.Abs(horizontalSpeed))
|
||||||
|
{
|
||||||
|
// Vertical input is dominant.
|
||||||
|
// ALWAYS use the backward roll, regardless of forward or backward input.
|
||||||
|
animToPlay = backwardAnim;
|
||||||
|
correctionAngle = strafeRollBackwardCorrectionAngle;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Horizontal input is dominant.
|
||||||
|
if (horizontalSpeed > 0)
|
||||||
|
{
|
||||||
|
animToPlay = rightAnim;
|
||||||
|
correctionAngle = strafeRollRightCorrectionAngle;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
animToPlay = leftAnim;
|
||||||
|
correctionAngle = strafeRollLeftCorrectionAngle;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Apply the chosen correction angle if it's not zero.
|
||||||
|
if (correctionAngle != 0f)
|
||||||
|
{
|
||||||
|
transform.Rotate(0, correctionAngle, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Play the selected animation.
|
||||||
animator.CrossFadeInFixedTime(animToPlay, rollTransition, baseLayer);
|
animator.CrossFadeInFixedTime(animToPlay, rollTransition, baseLayer);
|
||||||
}
|
}
|
||||||
// --- END OF MODIFIED METHOD ---
|
// --- END OF FINAL METHOD ---
|
||||||
|
|
||||||
public void OnEvadeStart() { if (!m_GodMode) isImmortal = true; }
|
public void OnEvadeStart() { if (!m_GodMode) isImmortal = true; }
|
||||||
public void OnEvadeEnd() { if (!m_GodMode) isImmortal = false; }
|
public void OnEvadeEnd() { if (!m_GodMode) isImmortal = false; }
|
||||||
|
|||||||
@@ -129,6 +129,8 @@ MonoBehaviour:
|
|||||||
m_PrefilterScreenCoord: 1
|
m_PrefilterScreenCoord: 1
|
||||||
m_PrefilterNativeRenderPass: 0
|
m_PrefilterNativeRenderPass: 0
|
||||||
m_PrefilterUseLegacyLightmaps: 0
|
m_PrefilterUseLegacyLightmaps: 0
|
||||||
|
m_PrefilterReflectionProbeBlending: 1
|
||||||
|
m_PrefilterReflectionProbeBoxProjection: 1
|
||||||
m_ShaderVariantLogLevel: 0
|
m_ShaderVariantLogLevel: 0
|
||||||
m_ShadowCascades: 0
|
m_ShadowCascades: 0
|
||||||
m_Textures:
|
m_Textures:
|
||||||
|
|||||||
@@ -129,6 +129,8 @@ MonoBehaviour:
|
|||||||
m_PrefilterScreenCoord: 1
|
m_PrefilterScreenCoord: 1
|
||||||
m_PrefilterNativeRenderPass: 1
|
m_PrefilterNativeRenderPass: 1
|
||||||
m_PrefilterUseLegacyLightmaps: 0
|
m_PrefilterUseLegacyLightmaps: 0
|
||||||
|
m_PrefilterReflectionProbeBlending: 0
|
||||||
|
m_PrefilterReflectionProbeBoxProjection: 0
|
||||||
m_ShaderVariantLogLevel: 0
|
m_ShaderVariantLogLevel: 0
|
||||||
m_ShadowCascades: 2
|
m_ShadowCascades: 2
|
||||||
m_Textures:
|
m_Textures:
|
||||||
|
|||||||
@@ -129,6 +129,8 @@ MonoBehaviour:
|
|||||||
m_PrefilterScreenCoord: 1
|
m_PrefilterScreenCoord: 1
|
||||||
m_PrefilterNativeRenderPass: 0
|
m_PrefilterNativeRenderPass: 0
|
||||||
m_PrefilterUseLegacyLightmaps: 0
|
m_PrefilterUseLegacyLightmaps: 0
|
||||||
|
m_PrefilterReflectionProbeBlending: 1
|
||||||
|
m_PrefilterReflectionProbeBoxProjection: 1
|
||||||
m_ShaderVariantLogLevel: 0
|
m_ShaderVariantLogLevel: 0
|
||||||
m_ShadowCascades: 0
|
m_ShadowCascades: 0
|
||||||
m_Textures:
|
m_Textures:
|
||||||
|
|||||||
@@ -129,6 +129,8 @@ MonoBehaviour:
|
|||||||
m_PrefilterScreenCoord: 1
|
m_PrefilterScreenCoord: 1
|
||||||
m_PrefilterNativeRenderPass: 0
|
m_PrefilterNativeRenderPass: 0
|
||||||
m_PrefilterUseLegacyLightmaps: 0
|
m_PrefilterUseLegacyLightmaps: 0
|
||||||
|
m_PrefilterReflectionProbeBlending: 1
|
||||||
|
m_PrefilterReflectionProbeBoxProjection: 1
|
||||||
m_ShaderVariantLogLevel: 0
|
m_ShaderVariantLogLevel: 0
|
||||||
m_ShadowCascades: 0
|
m_ShadowCascades: 0
|
||||||
m_Textures:
|
m_Textures:
|
||||||
|
|||||||
@@ -129,6 +129,8 @@ MonoBehaviour:
|
|||||||
m_PrefilterScreenCoord: 1
|
m_PrefilterScreenCoord: 1
|
||||||
m_PrefilterNativeRenderPass: 0
|
m_PrefilterNativeRenderPass: 0
|
||||||
m_PrefilterUseLegacyLightmaps: 0
|
m_PrefilterUseLegacyLightmaps: 0
|
||||||
|
m_PrefilterReflectionProbeBlending: 1
|
||||||
|
m_PrefilterReflectionProbeBoxProjection: 1
|
||||||
m_ShaderVariantLogLevel: 0
|
m_ShaderVariantLogLevel: 0
|
||||||
m_ShadowCascades: 0
|
m_ShadowCascades: 0
|
||||||
m_Textures:
|
m_Textures:
|
||||||
|
|||||||
@@ -1,7 +1,14 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 33155b0e0a894984aaa6d5beee3b6e77
|
guid: 33155b0e0a894984aaa6d5beee3b6e77
|
||||||
|
AssetOrigin:
|
||||||
|
serializedVersion: 1
|
||||||
|
productId: 269483
|
||||||
|
packageName: One Handed Sword Animset Pro
|
||||||
|
packageVersion: 1.0
|
||||||
|
assetPath: Assets/SwordAnimsetPro/Animations/RootPlace/Attack_Combo_02_04_Anim.FBX
|
||||||
|
uploadId: 738342
|
||||||
ModelImporter:
|
ModelImporter:
|
||||||
serializedVersion: 21300
|
serializedVersion: 22200
|
||||||
internalIDToNameTable:
|
internalIDToNameTable:
|
||||||
- first:
|
- first:
|
||||||
74: 1827226128182048838
|
74: 1827226128182048838
|
||||||
@@ -19,8 +26,6 @@ ModelImporter:
|
|||||||
optimizeGameObjects: 0
|
optimizeGameObjects: 0
|
||||||
removeConstantScaleCurves: 0
|
removeConstantScaleCurves: 0
|
||||||
motionNodeName:
|
motionNodeName:
|
||||||
rigImportErrors:
|
|
||||||
rigImportWarnings:
|
|
||||||
animationImportErrors:
|
animationImportErrors:
|
||||||
animationImportWarnings:
|
animationImportWarnings:
|
||||||
animationRetargetingWarnings:
|
animationRetargetingWarnings:
|
||||||
@@ -47,11 +52,11 @@ ModelImporter:
|
|||||||
cycleOffset: 0
|
cycleOffset: 0
|
||||||
loop: 0
|
loop: 0
|
||||||
hasAdditiveReferencePose: 0
|
hasAdditiveReferencePose: 0
|
||||||
loopTime: 1
|
loopTime: 0
|
||||||
loopBlend: 0
|
loopBlend: 0
|
||||||
loopBlendOrientation: 1
|
loopBlendOrientation: 1
|
||||||
loopBlendPositionY: 1
|
loopBlendPositionY: 1
|
||||||
loopBlendPositionXZ: 1
|
loopBlendPositionXZ: 0
|
||||||
keepOriginalOrientation: 1
|
keepOriginalOrientation: 1
|
||||||
keepOriginalPositionY: 1
|
keepOriginalPositionY: 1
|
||||||
keepOriginalPositionXZ: 1
|
keepOriginalPositionXZ: 1
|
||||||
@@ -212,6 +217,7 @@ ModelImporter:
|
|||||||
addColliders: 0
|
addColliders: 0
|
||||||
useSRGBMaterialColor: 1
|
useSRGBMaterialColor: 1
|
||||||
sortHierarchyByName: 1
|
sortHierarchyByName: 1
|
||||||
|
importPhysicalCameras: 1
|
||||||
importVisibility: 1
|
importVisibility: 1
|
||||||
importBlendShapes: 1
|
importBlendShapes: 1
|
||||||
importCameras: 1
|
importCameras: 1
|
||||||
@@ -239,6 +245,7 @@ ModelImporter:
|
|||||||
secondaryUVMinObjectScale: 1
|
secondaryUVMinObjectScale: 1
|
||||||
secondaryUVPackMargin: 4
|
secondaryUVPackMargin: 4
|
||||||
useFileScale: 1
|
useFileScale: 1
|
||||||
|
strictVertexDataChecks: 0
|
||||||
tangentSpace:
|
tangentSpace:
|
||||||
normalSmoothAngle: 60
|
normalSmoothAngle: 60
|
||||||
normalImportMode: 0
|
normalImportMode: 0
|
||||||
@@ -412,14 +419,6 @@ ModelImporter:
|
|||||||
value: {x: 0, y: 0, z: 0}
|
value: {x: 0, y: 0, z: 0}
|
||||||
length: 0
|
length: 0
|
||||||
modified: 0
|
modified: 0
|
||||||
- boneName: ball_r
|
|
||||||
humanName: RightToes
|
|
||||||
limit:
|
|
||||||
min: {x: 0, y: 0, z: 0}
|
|
||||||
max: {x: 0, y: 0, z: 0}
|
|
||||||
value: {x: 0, y: 0, z: 0}
|
|
||||||
length: 0
|
|
||||||
modified: 0
|
|
||||||
- boneName: thumb_01_l
|
- boneName: thumb_01_l
|
||||||
humanName: Left Thumb Proximal
|
humanName: Left Thumb Proximal
|
||||||
limit:
|
limit:
|
||||||
@@ -669,400 +668,357 @@ ModelImporter:
|
|||||||
length: 0
|
length: 0
|
||||||
modified: 0
|
modified: 0
|
||||||
skeleton:
|
skeleton:
|
||||||
- name: Armature(Clone)
|
- name: Attack_Combo_02_04_Anim(Clone)
|
||||||
parentName:
|
parentName:
|
||||||
position: {x: 0, y: 0, z: 0}
|
position: {x: 0, y: 0, z: 0}
|
||||||
rotation: {x: 0, y: 0, z: 0, w: 1}
|
rotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1, y: 1, z: 1}
|
||||||
- name: Geometry
|
|
||||||
parentName: Armature(Clone)
|
|
||||||
position: {x: -0, y: 0, z: 0}
|
|
||||||
rotation: {x: 0.00000008146034, y: 0, z: -0, w: 1}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: Armature_Mesh 1
|
|
||||||
parentName: Geometry
|
|
||||||
position: {x: -0, y: 0, z: 0}
|
|
||||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: root
|
- name: root
|
||||||
parentName: Armature(Clone)
|
parentName: Attack_Combo_02_04_Anim(Clone)
|
||||||
position: {x: -0, y: 0, z: 0}
|
position: {x: 0.00000019311905, y: -0.00000045776366, z: 0.000000054563714}
|
||||||
rotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068}
|
rotation: {x: -0.7071068, y: 0.00000034771128, z: 0.000000094830334, w: 0.7071068}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1.0000007, y: 1.0000008, z: 1.0000005}
|
||||||
- name: ik_foot_root
|
|
||||||
parentName: root
|
|
||||||
position: {x: -0, y: 0, z: 0}
|
|
||||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: ik_foot_l
|
|
||||||
parentName: ik_foot_root
|
|
||||||
position: {x: -0.1707627, y: 0.080721274, z: 0.13465731}
|
|
||||||
rotation: {x: 0.020529665, y: 0.71223336, z: -0.01172283, w: 0.7015445}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: ik_foot_r
|
|
||||||
parentName: ik_foot_root
|
|
||||||
position: {x: 0.17076288, y: 0.08072148, z: 0.13465573}
|
|
||||||
rotation: {x: 0.70154446, y: 0.011725438, z: 0.71223336, w: -0.020532234}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: ik_hand_root
|
|
||||||
parentName: root
|
|
||||||
position: {x: -0, y: 0, z: 0}
|
|
||||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: ik_hand_gun
|
|
||||||
parentName: ik_hand_root
|
|
||||||
position: {x: 0.56646097, y: 0.0033541175, z: 1.1167965}
|
|
||||||
rotation: {x: 0.6188494, y: 0.069541104, z: -0.38913622, w: 0.67879486}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: ik_hand_l
|
|
||||||
parentName: ik_hand_gun
|
|
||||||
position: {x: -0.77885526, y: -0.6960196, z: 0.43869558}
|
|
||||||
rotation: {x: 0.68747425, y: 0.61435777, z: -0.38722563, w: -0.000000527876}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: ik_hand_r
|
|
||||||
parentName: ik_hand_gun
|
|
||||||
position: {x: -0, y: 0, z: 0}
|
|
||||||
rotation: {x: 0.000000007450579, y: 0.0000000074505784, z: -0.000000089406946,
|
|
||||||
w: 1}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: pelvis
|
- name: pelvis
|
||||||
parentName: root
|
parentName: root
|
||||||
position: {x: 1.6940659e-23, y: 0.010561532, z: 0.967506}
|
position: {x: 0.0015526001, y: 0, z: 0.89949095}
|
||||||
rotation: {x: 0.0012919111, y: 0.7071056, z: 0.0012919111, w: 0.70710564}
|
rotation: {x: -0.180187, y: 0.7303708, z: -0.0602064, w: 0.6560993}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1, y: 1, z: 1.0000001}
|
||||||
- name: Weapon_Waist
|
|
||||||
parentName: pelvis
|
|
||||||
position: {x: -0.033212814, y: -0.013039031, z: -0.22270256}
|
|
||||||
rotation: {x: -0.27525714, y: 0.67732406, z: 0.5421512, w: -0.41417116}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: spine_01
|
- name: spine_01
|
||||||
parentName: pelvis
|
parentName: pelvis
|
||||||
position: {x: -0.10808952, y: -0.008514154, z: -1.0004442e-13}
|
position: {x: -0.1080888, y: -0.008514154, z: 0.000000019073486}
|
||||||
rotation: {x: 1.9816575e-12, y: -1.2530104e-13, z: 0.06238869, w: 0.99805194}
|
rotation: {x: 0.071059406, y: -0.025649605, z: 0.098846145, w: 0.9922309}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1.0000001, y: 1, z: 0.99999994}
|
||||||
- name: spine_02
|
- name: spine_02
|
||||||
parentName: spine_01
|
parentName: spine_01
|
||||||
position: {x: -0.1887535, y: 0.0380116, z: 5.9673766e-10}
|
position: {x: -0.1887535, y: 0.03801159, z: 0}
|
||||||
rotation: {x: 1.9856304e-12, y: -8.666872e-15, z: -0.122419976, w: 0.99247843}
|
rotation: {x: 0.1130694, y: -0.045137748, z: 0.23324236, w: 0.9647673}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 0.99999994, y: 1, z: 0.99999994}
|
||||||
- name: spine_03
|
- name: spine_03
|
||||||
parentName: spine_02
|
parentName: spine_02
|
||||||
position: {x: -0.13407394, y: 0.0042047976, z: 1.1823431e-13}
|
position: {x: -0.13407329, y: 0.00420475, z: 0.000000028610229}
|
||||||
rotation: {x: 1.5723038e-12, y: 2.2838824e-13, z: -0.02425258, w: 0.9997059}
|
rotation: {x: 0.026746681, y: 0.04008734, z: 0.05746506, w: 0.99718374}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1.0000001, y: 1.0000001, z: 0.9999999}
|
||||||
- name: Weapon_B_B
|
|
||||||
parentName: spine_03
|
|
||||||
position: {x: -0.13291, y: 0.17242967, z: -0.08474755}
|
|
||||||
rotation: {x: -0.077171534, y: 0.9732335, z: 0.009727723, w: 0.21625552}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: Weapon_B_A
|
|
||||||
parentName: spine_03
|
|
||||||
position: {x: -0.1443399, y: 0.1984746, z: 0.08800269}
|
|
||||||
rotation: {x: 0.21625581, y: 0.009727914, z: 0.97323346, w: -0.07717145}
|
|
||||||
scale: {x: 0.999999, y: 1.000001, z: 1}
|
|
||||||
- name: neck_01
|
|
||||||
parentName: spine_03
|
|
||||||
position: {x: -0.16558838, y: -0.0035531996, z: -5.9652394e-10}
|
|
||||||
rotation: {x: 7.9457805e-13, y: -3.4253748e-14, z: 0.20371033, w: 0.9790312}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: head
|
|
||||||
parentName: neck_01
|
|
||||||
position: {x: -0.09283508, y: 0.00364151, z: -5.002221e-14}
|
|
||||||
rotation: {x: 3.9399622e-13, y: -6.0260296e-14, z: -0.13354221, w: 0.99104315}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: clavicle_l
|
- name: clavicle_l
|
||||||
parentName: spine_03
|
parentName: spine_03
|
||||||
position: {x: -0.118836515, y: -0.027320823, z: -0.037819855}
|
position: {x: -0.11883682, y: -0.027320862, z: -0.037819825}
|
||||||
rotation: {x: 0.15407036, y: -0.7262773, z: -0.066704944, w: 0.66658384}
|
rotation: {x: -0.013658353, y: -0.7949734, z: 0.14171273, w: 0.58970183}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1.0000001, y: 1, z: 0.9999998}
|
||||||
- name: upperarm_l
|
- name: upperarm_l
|
||||||
parentName: clavicle_l
|
parentName: clavicle_l
|
||||||
position: {x: -0.15784876, y: 5.9604643e-10, z: -0.00000030517577}
|
position: {x: -0.15784872, y: 0, z: -0.00000015258789}
|
||||||
rotation: {x: 0.059959687, y: 0.03741067, z: 0.15131606, w: 0.9859558}
|
rotation: {x: 0.2841912, y: 0.1619693, z: -0.055562634, w: 0.9433526}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 0.9999998, y: 0.9999997, z: 0.99999976}
|
||||||
- name: lowerarm_l
|
- name: lowerarm_l
|
||||||
parentName: upperarm_l
|
parentName: upperarm_l
|
||||||
position: {x: -0.3033992, y: 0.000000019073486, z: -0.00000015258789}
|
position: {x: -0.30339924, y: 0.000000009536743, z: 0.000000076293944}
|
||||||
rotation: {x: -0.061964918, y: 0.029636784, z: 0.027705546, w: 0.9972534}
|
rotation: {x: -0.057504058, y: 0.0030879676, z: 0.01000784, w: 0.9982904}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1.0000001, y: 1.0000001, z: 1}
|
||||||
- name: hand_l
|
- name: hand_l
|
||||||
parentName: lowerarm_l
|
parentName: lowerarm_l
|
||||||
position: {x: -0.2697512, y: 0.000000057220458, z: -0.00000022888183}
|
position: {x: -0.26975146, y: 0, z: 0}
|
||||||
rotation: {x: -0.6178948, y: -0.019371929, z: -0.010653258, w: 0.7859499}
|
rotation: {x: -0.55782324, y: 0.062217917, z: 0.3209781, w: 0.7628467}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 0.9999998, y: 0.9999998, z: 1.0000001}
|
||||||
- name: Weapon_L
|
|
||||||
parentName: hand_l
|
|
||||||
position: {x: -0.09643631, y: 0.040368345, z: 0.0017903136}
|
|
||||||
rotation: {x: 0.77167386, y: 0.034539346, z: 0.6346724, w: 0.022746237}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: thumb_01_l
|
|
||||||
parentName: hand_l
|
|
||||||
position: {x: -0.047620315, y: 0.023749694, z: -0.025378227}
|
|
||||||
rotation: {x: 0.60051745, y: -0.29971117, z: 0.1853573, w: 0.7177706}
|
|
||||||
scale: {x: 1, y: 1.000001, z: 1}
|
|
||||||
- name: thumb_02_l
|
|
||||||
parentName: thumb_01_l
|
|
||||||
position: {x: -0.03869667, y: 0.000000076293944, z: 0.00000022888183}
|
|
||||||
rotation: {x: 0.002636432, y: -0.019812906, z: -0.029710047, w: 0.9993588}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: thumb_03_l
|
|
||||||
parentName: thumb_02_l
|
|
||||||
position: {x: -0.040621642, y: -0.000000076293944, z: 0.00000022888183}
|
|
||||||
rotation: {x: 0.021399122, y: -0.0018833969, z: 0.10793767, w: 0.9939256}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: index_01_l
|
- name: index_01_l
|
||||||
parentName: hand_l
|
parentName: hand_l
|
||||||
position: {x: -0.120681114, y: 0.017634582, z: -0.021093978}
|
position: {x: -0.12068119, y: 0.017634582, z: -0.021093959}
|
||||||
rotation: {x: 0.13733824, y: 0.009896379, z: -0.13344933, w: 0.98144364}
|
rotation: {x: -0.042163815, y: 0.03351595, z: 0.020672167, w: 0.9983344}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1.0000001, y: 1.0000002, z: 1}
|
||||||
- name: index_02_l
|
- name: index_02_l
|
||||||
parentName: index_01_l
|
parentName: index_01_l
|
||||||
position: {x: -0.04287502, y: 0.000000076293944, z: 0.000000038146972}
|
position: {x: -0.04287506, y: 0, z: -0.000000057220458}
|
||||||
rotation: {x: 0.01210087, y: 0.0010687108, z: -0.038368557, w: 0.99918985}
|
rotation: {x: 0.012641782, y: 0.00019268683, z: -0.031927325, w: 0.9994102}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1.0000001, y: 1.0000001, z: 1.0000001}
|
||||||
- name: index_03_l
|
- name: index_03_l
|
||||||
parentName: index_02_l
|
parentName: index_02_l
|
||||||
position: {x: -0.033938065, y: -0.00000015258789, z: -0.000000057220458}
|
position: {x: -0.033937987, y: 0, z: -0.000000038146972}
|
||||||
rotation: {x: 0.010611094, y: -0.0078507885, z: 0.082855195, w: 0.9964742}
|
rotation: {x: 0.010061978, y: -0.014899413, z: -0.12724501, w: 0.9917084}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1, y: 0.99999994, z: 1.0000001}
|
||||||
- name: middle_01_l
|
- name: middle_01_l
|
||||||
parentName: hand_l
|
parentName: hand_l
|
||||||
position: {x: -0.12244266, y: 0.012936401, z: 0.0057115746}
|
position: {x: -0.12244286, y: 0.012936363, z: 0.005711651}
|
||||||
rotation: {x: 0.029485751, y: 0.040345762, z: -0.1303333, w: 0.9902101}
|
rotation: {x: -0.10508478, y: 0.10453472, z: -0.08622286, w: 0.98518795}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1, y: 1.0000001, z: 1}
|
||||||
- name: middle_02_l
|
- name: middle_02_l
|
||||||
parentName: middle_01_l
|
parentName: middle_01_l
|
||||||
position: {x: -0.046403885, y: -0.00000030517577, z: -0.000000038146972}
|
position: {x: -0.046403732, y: -0.000000076293944, z: 0.000000019073486}
|
||||||
rotation: {x: -0.018723572, y: -0.002837239, z: -0.038118426, w: 0.9990938}
|
rotation: {x: -0.020515025, y: -0.0010910779, z: -0.032421418, w: 0.9992632}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 0.9999998, y: 0.99999994, z: 1.0000001}
|
||||||
- name: middle_03_l
|
- name: middle_03_l
|
||||||
parentName: middle_02_l
|
parentName: middle_02_l
|
||||||
position: {x: -0.03648865, y: 0, z: 0.000000019073486}
|
position: {x: -0.036488418, y: 0, z: 0}
|
||||||
rotation: {x: 0.0016213919, y: 0.038867008, z: 0.13362402, w: 0.99026835}
|
rotation: {x: 0.0089297835, y: 0.048352133, z: -0.17108564, w: 0.98402846}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1, y: 0.99999994, z: 1}
|
||||||
- name: ring_01_l
|
|
||||||
parentName: hand_l
|
|
||||||
position: {x: -0.11497879, y: 0.0175354, z: 0.028469028}
|
|
||||||
rotation: {x: -0.09728434, y: 0.07056106, z: -0.116225, w: 0.9859253}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: ring_02_l
|
|
||||||
parentName: ring_01_l
|
|
||||||
position: {x: -0.044301756, y: 0, z: 0.000000028610229}
|
|
||||||
rotation: {x: 0.004327772, y: 0.004577195, z: -0.03747059, w: 0.9992779}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: ring_03_l
|
|
||||||
parentName: ring_02_l
|
|
||||||
position: {x: -0.034766767, y: 0, z: 0.000000019073486}
|
|
||||||
rotation: {x: -0.00019881252, y: -0.026257839, z: 0.11221317, w: 0.99333715}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: pinky_01_l
|
- name: pinky_01_l
|
||||||
parentName: hand_l
|
parentName: hand_l
|
||||||
position: {x: -0.101406746, y: 0.022631224, z: 0.04643154}
|
position: {x: -0.10140666, y: 0.02263153, z: 0.046431445}
|
||||||
rotation: {x: -0.13504837, y: 0.09653543, z: -0.08907403, w: 0.98209405}
|
rotation: {x: -0.30704668, y: 0.096554, z: -0.0697224, w: 0.94421315}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1, y: 0.99999994, z: 1}
|
||||||
- name: pinky_02_l
|
- name: pinky_02_l
|
||||||
parentName: pinky_01_l
|
parentName: pinky_01_l
|
||||||
position: {x: -0.03570995, y: 0.00000015258789, z: 0.000000019073486}
|
position: {x: -0.035709858, y: -0.000000038146972, z: 0}
|
||||||
rotation: {x: 0.010402318, y: 0.004141426, z: -0.03848013, w: 0.9991967}
|
rotation: {x: 0.014888434, y: 0.00030022112, z: -0.020904124, w: 0.9996706}
|
||||||
scale: {x: 1.000001, y: 1, z: 1}
|
scale: {x: 0.9999999, y: 1.0000001, z: 1}
|
||||||
- name: pinky_03_l
|
- name: pinky_03_l
|
||||||
parentName: pinky_02_l
|
parentName: pinky_02_l
|
||||||
position: {x: -0.029856643, y: -0.00000030517577, z: 0}
|
position: {x: -0.029856281, y: 0, z: 0}
|
||||||
rotation: {x: 0.0035809448, y: -0.033796344, z: -0.008930362, w: 0.99938244}
|
rotation: {x: 0.00018234825, y: -0.038848173, z: -0.31119236, w: 0.9495526}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 0.99999994, y: 1, z: 1.0000001}
|
||||||
|
- name: ring_01_l
|
||||||
|
parentName: hand_l
|
||||||
|
position: {x: -0.11497894, y: 0.017535247, z: 0.028469104}
|
||||||
|
rotation: {x: -0.17491661, y: 0.092290685, z: -0.08976502, w: 0.97612953}
|
||||||
|
scale: {x: 0.9999998, y: 1.0000001, z: 0.99999994}
|
||||||
|
- name: ring_02_l
|
||||||
|
parentName: ring_01_l
|
||||||
|
position: {x: -0.044301834, y: 0, z: 0}
|
||||||
|
rotation: {x: 0.009538977, y: 0.0007756277, z: -0.022933194, w: 0.9996912}
|
||||||
|
scale: {x: 0.9999999, y: 1.0000001, z: 0.9999999}
|
||||||
|
- name: ring_03_l
|
||||||
|
parentName: ring_02_l
|
||||||
|
position: {x: -0.034766443, y: 0, z: -0.000000038146972}
|
||||||
|
rotation: {x: 0.0010915702, y: -0.026316691, z: -0.1960736, w: 0.9802354}
|
||||||
|
scale: {x: 1, y: 1, z: 1.0000001}
|
||||||
|
- name: thumb_01_l
|
||||||
|
parentName: hand_l
|
||||||
|
position: {x: -0.04762043, y: 0.023749733, z: -0.025378188}
|
||||||
|
rotation: {x: 0.37738293, y: 0.023550505, z: 0.30923915, w: 0.87258166}
|
||||||
|
scale: {x: 1.0000001, y: 0.99999976, z: 1.0000002}
|
||||||
|
- name: thumb_02_l
|
||||||
|
parentName: thumb_01_l
|
||||||
|
position: {x: -0.038696717, y: -0.000000038146972, z: 0}
|
||||||
|
rotation: {x: -0.013729625, y: -0.01217588, z: -0.028283292, w: 0.99943155}
|
||||||
|
scale: {x: 1.0000002, y: 1.0000001, z: 1}
|
||||||
|
- name: thumb_03_l
|
||||||
|
parentName: thumb_02_l
|
||||||
|
position: {x: -0.04062171, y: 0.000000019073486, z: 0}
|
||||||
|
rotation: {x: -0.070657775, y: -0.016861392, z: -0.40833193, w: 0.9099386}
|
||||||
|
scale: {x: 1.0000002, y: 0.9999999, z: 1.0000002}
|
||||||
- name: lowerarm_twist_01_l
|
- name: lowerarm_twist_01_l
|
||||||
parentName: lowerarm_l
|
parentName: lowerarm_l
|
||||||
position: {x: -0.13999976, y: 0.000000057220458, z: -0.0000003814697}
|
position: {x: -0.14000002, y: 0, z: 0.000000076293944}
|
||||||
rotation: {x: 0.000000014901163, y: -0.000000029802322, z: 0.0000000074505815,
|
rotation: {x: 0.00210536, y: -0.000001305833, z: -0.0000009397513, w: 0.9999978}
|
||||||
w: 1}
|
scale: {x: 0.99999994, y: 1, z: 1}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: upperarm_twist_01_l
|
- name: upperarm_twist_01_l
|
||||||
parentName: upperarm_l
|
parentName: upperarm_l
|
||||||
position: {x: -0.005000229, y: 0, z: -0.00000030517577}
|
position: {x: -0.0049999235, y: 0.000000028610229, z: 0.000000076293944}
|
||||||
rotation: {x: -0.0000000018626451, y: -0.000000014901161, z: -0.0000000018626451,
|
rotation: {x: 0.00000003166497, y: -0.00000013411046, z: 0.000000027939684,
|
||||||
w: 1}
|
w: 1}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 0.99999994, y: 1, z: 1}
|
||||||
- name: clavicle_r
|
- name: clavicle_r
|
||||||
parentName: spine_03
|
parentName: spine_03
|
||||||
position: {x: -0.11883758, y: -0.027321015, z: 0.037820004}
|
position: {x: -0.118837886, y: -0.027321015, z: 0.037820052}
|
||||||
rotation: {x: 0.7262779, y: 0.15407024, z: 0.66658336, w: 0.066704765}
|
rotation: {x: 0.7222737, y: 0.10238078, z: 0.68398726, w: 0.00055002596}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1.0000001, y: 1.0000001, z: 0.99999994}
|
||||||
- name: upperarm_r
|
- name: upperarm_r
|
||||||
parentName: clavicle_r
|
parentName: clavicle_r
|
||||||
position: {x: 0.15784794, y: -0.00000004887581, z: -0.00000045776366}
|
position: {x: 0.15784796, y: -0.000000038146972, z: -0.00000015258789}
|
||||||
rotation: {x: 0.059959557, y: 0.037411354, z: 0.15131633, w: 0.9859557}
|
rotation: {x: 0.20276237, y: -0.010564359, z: -0.043542232, w: 0.97820246}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1, y: 1, z: 1}
|
||||||
- name: lowerarm_r
|
- name: lowerarm_r
|
||||||
parentName: upperarm_r
|
parentName: upperarm_r
|
||||||
position: {x: 0.30340058, y: -0.000000095367426, z: 0.000000076293944}
|
position: {x: 0.30340055, y: -0.000000038146972, z: 0.000000076293944}
|
||||||
rotation: {x: -0.06196519, y: 0.029635787, z: 0.02770495, w: 0.9972535}
|
rotation: {x: -0.056995496, y: 0.0049532373, z: 0.016129415, w: 0.9982319}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 0.99999994, y: 1.0000001, z: 1}
|
||||||
- name: hand_r
|
- name: hand_r
|
||||||
parentName: lowerarm_r
|
parentName: lowerarm_r
|
||||||
position: {x: 0.26975238, y: 0.00000032424927, z: -0.00000015258789}
|
position: {x: 0.26975247, y: 0.00000028610228, z: 0.000000076293944}
|
||||||
rotation: {x: -0.6178948, y: -0.019371944, z: -0.010653205, w: 0.7859499}
|
rotation: {x: -0.6027654, y: 0.008233023, z: 0.28878984, w: 0.7437786}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1.0000001, y: 0.99999994, z: 1.0000002}
|
||||||
- name: Weapon_R
|
|
||||||
parentName: hand_r
|
|
||||||
position: {x: 0.096437946, y: -0.040366516, z: -0.0017925262}
|
|
||||||
rotation: {x: -0.63467234, y: 0.022746397, z: 0.771674, w: -0.034538984}
|
|
||||||
scale: {x: 0.999999, y: 1, z: 1}
|
|
||||||
- name: Weapon_RS
|
|
||||||
parentName: Weapon_R
|
|
||||||
position: {x: 0.06393559, y: 0.046391904, z: 0.000000038146972}
|
|
||||||
rotation: {x: 0.000000014901161, y: -0.000000011175873, z: 0.000000007450582,
|
|
||||||
w: 1}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: thumb_01_r
|
|
||||||
parentName: hand_r
|
|
||||||
position: {x: 0.04762108, y: -0.02375099, z: 0.025378035}
|
|
||||||
rotation: {x: 0.60051656, y: -0.29970273, z: 0.1853537, w: 0.7177759}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: thumb_02_r
|
|
||||||
parentName: thumb_01_r
|
|
||||||
position: {x: 0.038695678, y: 0.0000011825562, z: 0.00000045776366}
|
|
||||||
rotation: {x: 0.0026337197, y: -0.019816674, z: -0.02969921, w: 0.99935895}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: thumb_03_r
|
|
||||||
parentName: thumb_02_r
|
|
||||||
position: {x: 0.040621795, y: 0.00000022888183, z: 0}
|
|
||||||
rotation: {x: 0.021398976, y: -0.0018833367, z: 0.1079377, w: 0.9939256}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: index_01_r
|
- name: index_01_r
|
||||||
parentName: hand_r
|
parentName: hand_r
|
||||||
position: {x: 0.12067932, y: -0.017637176, z: 0.021094246}
|
position: {x: 0.12067939, y: -0.017637406, z: 0.021094264}
|
||||||
rotation: {x: 0.13733743, y: 0.009890859, z: -0.13346796, w: 0.9814413}
|
rotation: {x: -0.058504958, y: 0.028943041, z: -0.11037121, w: 0.99174476}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1.0000001, y: 1, z: 1.0000001}
|
||||||
- name: index_02_r
|
- name: index_02_r
|
||||||
parentName: index_01_r
|
parentName: index_01_r
|
||||||
position: {x: 0.04287689, y: 0.0000009155273, z: -0.00000072479247}
|
position: {x: 0.04287693, y: 0.00000087738033, z: -0.00000074386594}
|
||||||
rotation: {x: 0.012102056, y: 0.0010692998, z: -0.03836711, w: 0.99918985}
|
rotation: {x: 0.01461357, y: -0.00006722842, z: -0.013046635, w: 0.9998081}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1, y: 0.9999999, z: 1.0000001}
|
||||||
- name: index_03_r
|
- name: index_03_r
|
||||||
parentName: index_02_r
|
parentName: index_02_r
|
||||||
position: {x: 0.033938218, y: 0.0000011444091, z: -0.00000036239624}
|
position: {x: 0.033937987, y: 0.0000011825562, z: -0.00000017166137}
|
||||||
rotation: {x: 0.010611209, y: -0.007850793, z: 0.08285527, w: 0.99647415}
|
rotation: {x: 0.008849856, y: -0.022383938, z: -0.367978, w: 0.92952293}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 0.9999999, y: 1, z: 1}
|
||||||
- name: middle_01_r
|
- name: middle_01_r
|
||||||
parentName: hand_r
|
parentName: hand_r
|
||||||
position: {x: 0.12244102, y: -0.012937317, z: -0.0057113455}
|
position: {x: 0.1224411, y: -0.012937393, z: -0.0057113073}
|
||||||
rotation: {x: 0.029485688, y: 0.040343083, z: -0.13032185, w: 0.9902118}
|
rotation: {x: -0.18307386, y: 0.039525136, z: -0.09938775, w: 0.97726345}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1, y: 1, z: 1}
|
||||||
- name: middle_02_r
|
- name: middle_02_r
|
||||||
parentName: middle_01_r
|
parentName: middle_01_r
|
||||||
position: {x: 0.046405602, y: -0.0000012969971, z: 0.000000057220458}
|
position: {x: 0.046405792, y: -0.000001373291, z: 0.0000000667572}
|
||||||
rotation: {x: -0.01872324, y: -0.0028387778, z: -0.038139753, w: 0.999093}
|
rotation: {x: -0.023135256, y: -0.000003580001, z: -0.018414259, w: 0.9995628}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 0.9999999, y: 1, z: 0.99999994}
|
||||||
- name: middle_03_r
|
- name: middle_03_r
|
||||||
parentName: middle_02_r
|
parentName: middle_02_r
|
||||||
position: {x: 0.03648918, y: 0.00000015258789, z: -0.000000076293944}
|
position: {x: 0.03648918, y: 0.0000004196167, z: 0}
|
||||||
rotation: {x: 0.0016213522, y: 0.038867, z: 0.13362399, w: 0.99026835}
|
rotation: {x: 0.012308267, y: 0.050965574, z: -0.33058664, w: 0.94231814}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 0.9999999, y: 0.9999999, z: 0.99999994}
|
||||||
- name: ring_01_r
|
|
||||||
parentName: hand_r
|
|
||||||
position: {x: 0.114979625, y: -0.017537536, z: -0.028469123}
|
|
||||||
rotation: {x: -0.09728448, y: 0.07056085, z: -0.11623318, w: 0.9859243}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: ring_02_r
|
|
||||||
parentName: ring_01_r
|
|
||||||
position: {x: 0.044298783, y: 0.00000045776366, z: -0.00000021934508}
|
|
||||||
rotation: {x: 0.0043280036, y: 0.004581442, z: -0.037483945, w: 0.99927735}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: ring_03_r
|
|
||||||
parentName: ring_02_r
|
|
||||||
position: {x: 0.034766693, y: 0.0000012207031, z: -0.000000009536743}
|
|
||||||
rotation: {x: -0.00019881198, y: -0.026257785, z: 0.11221313, w: 0.99333715}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: pinky_01_r
|
- name: pinky_01_r
|
||||||
parentName: hand_r
|
parentName: hand_r
|
||||||
position: {x: 0.10140606, y: -0.022633513, z: -0.046431024}
|
position: {x: 0.1014059, y: -0.02263359, z: -0.046430986}
|
||||||
rotation: {x: -0.13504949, y: 0.09653526, z: -0.08907446, w: 0.9820939}
|
rotation: {x: -0.25687522, y: 0.050173927, z: -0.09736127, w: 0.9602179}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1.0000001, y: 1, z: 0.99999994}
|
||||||
- name: pinky_02_r
|
- name: pinky_02_r
|
||||||
parentName: pinky_01_r
|
parentName: pinky_01_r
|
||||||
position: {x: 0.03571041, y: -0.0000007629394, z: -0.000000114440915}
|
position: {x: 0.03571045, y: -0.00000072479247, z: -0.000000076293944}
|
||||||
rotation: {x: 0.010402859, y: 0.004140166, z: -0.038529016, w: 0.9991948}
|
rotation: {x: 0.015338253, y: 0.00023502106, z: -0.019417835, w: 0.9996938}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 0.99999976, y: 1, z: 0.99999994}
|
||||||
- name: pinky_03_r
|
- name: pinky_03_r
|
||||||
parentName: pinky_02_r
|
parentName: pinky_02_r
|
||||||
position: {x: 0.02985405, y: 0.0000030517576, z: -0.00000028610228}
|
position: {x: 0.0298542, y: 0.0000031280517, z: -0.00000036239624}
|
||||||
rotation: {x: 0.0035809623, y: -0.03379639, z: -0.008930348, w: 0.99938244}
|
rotation: {x: -0.0009317214, y: -0.03974408, z: -0.4059237, w: 0.9130419}
|
||||||
|
scale: {x: 0.9999999, y: 1.0000001, z: 1}
|
||||||
|
- name: ring_01_r
|
||||||
|
parentName: hand_r
|
||||||
|
position: {x: 0.114979744, y: -0.017537765, z: -0.028469142}
|
||||||
|
rotation: {x: -0.20664908, y: 0.04222702, z: -0.09832964, w: 0.9725453}
|
||||||
|
scale: {x: 1.0000002, y: 1.0000001, z: 0.99999994}
|
||||||
|
- name: ring_02_r
|
||||||
|
parentName: ring_01_r
|
||||||
|
position: {x: 0.04429863, y: 0.0000009155273, z: -0.00000015258789}
|
||||||
|
rotation: {x: 0.010850424, y: 0.00041900927, z: -0.017983763, w: 0.99977934}
|
||||||
|
scale: {x: 1.0000001, y: 1.0000001, z: 1.0000001}
|
||||||
|
- name: ring_03_r
|
||||||
|
parentName: ring_02_r
|
||||||
|
position: {x: 0.034766614, y: 0.00000064849854, z: -0.000000047683713}
|
||||||
|
rotation: {x: 0.0007329484, y: -0.027318945, z: -0.32003888, w: 0.9470102}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1, y: 1, z: 1}
|
||||||
|
- name: thumb_01_r
|
||||||
|
parentName: hand_r
|
||||||
|
position: {x: 0.04762123, y: -0.023751296, z: 0.025377998}
|
||||||
|
rotation: {x: 0.36304766, y: -0.08274567, z: 0.30087903, w: 0.87796444}
|
||||||
|
scale: {x: 1.0000002, y: 1, z: 1.0000001}
|
||||||
|
- name: thumb_02_r
|
||||||
|
parentName: thumb_01_r
|
||||||
|
position: {x: 0.038695715, y: 0.0000012016296, z: 0.00000045776366}
|
||||||
|
rotation: {x: -0.059372235, y: 0.0008043343, z: -0.02048133, w: 0.99802554}
|
||||||
|
scale: {x: 1.0000001, y: 0.9999999, z: 1.0000001}
|
||||||
|
- name: thumb_03_r
|
||||||
|
parentName: thumb_02_r
|
||||||
|
position: {x: 0.040621776, y: 0.000000028610229, z: 0}
|
||||||
|
rotation: {x: -0.01654607, y: -0.008043621, z: -0.10649277, w: 0.9941433}
|
||||||
|
scale: {x: 1, y: 0.9999999, z: 0.99999994}
|
||||||
|
- name: Weapon_R
|
||||||
|
parentName: hand_r
|
||||||
|
position: {x: 0.09278992, y: -0.04018333, z: -0.012245731}
|
||||||
|
rotation: {x: 0.7716737, y: 0.034539174, z: 0.6346727, w: 0.022745846}
|
||||||
|
scale: {x: 0.99999815, y: 0.99999905, z: 0.9999991}
|
||||||
- name: lowerarm_twist_01_r
|
- name: lowerarm_twist_01_r
|
||||||
parentName: lowerarm_r
|
parentName: lowerarm_r
|
||||||
position: {x: 0.14000003, y: 0.0000002670288, z: -0.00000022888183}
|
position: {x: 0.14, y: 0.00000022888183, z: -0.000000076293944}
|
||||||
rotation: {x: -0.117627375, y: 0.0000000017527845, z: -0.000000014797714, w: 0.9930578}
|
rotation: {x: -0.2383125, y: 0.000067337336, z: 0.000065920896, w: 0.97118855}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1, y: 1.0000001, z: 1.0000002}
|
||||||
- name: upperarm_twist_01_r
|
- name: upperarm_twist_01_r
|
||||||
parentName: upperarm_r
|
parentName: upperarm_r
|
||||||
position: {x: 0.0049999235, y: -0.000000085830685, z: 0.00000022888183}
|
position: {x: 0.005, y: -0.000000076293944, z: 0.000000076293944}
|
||||||
rotation: {x: -0.17323476, y: -0.000000088539196, z: -0.00000001273667, w: 0.98488057}
|
rotation: {x: -0.17323482, y: -0.00000024255803, z: 0.000000002725189, w: 0.98488057}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 0.99999994, y: 1, z: 1.0000001}
|
||||||
|
- name: neck_01
|
||||||
|
parentName: spine_03
|
||||||
|
position: {x: -0.16558777, y: -0.0035531996, z: 0}
|
||||||
|
rotation: {x: -0.17966738, y: -0.04215307, z: 0.027518744, w: 0.98243856}
|
||||||
|
scale: {x: 0.9999999, y: 0.99999994, z: 1}
|
||||||
|
- name: head
|
||||||
|
parentName: neck_01
|
||||||
|
position: {x: -0.092836, y: 0.00364151, z: 0}
|
||||||
|
rotation: {x: 0.3703453, y: 0.051559858, z: 0.011037241, w: 0.9273965}
|
||||||
|
scale: {x: 0.9999999, y: 0.9999999, z: 0.99999994}
|
||||||
- name: thigh_l
|
- name: thigh_l
|
||||||
parentName: pelvis
|
parentName: pelvis
|
||||||
position: {x: 0.014487533, y: -0.0053142295, z: -0.090058096}
|
position: {x: 0.01448822, y: -0.0053142332, z: -0.09005809}
|
||||||
rotation: {x: 0.07370505, y: 0.062138807, z: 0.00858431, w: 0.9953053}
|
rotation: {x: 0.52978396, y: 0.052502535, z: 0.08306465, w: 0.84242076}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 0.99999994, y: 1.0000002, z: 1}
|
||||||
- name: thigh_twist_01_l
|
|
||||||
parentName: thigh_l
|
|
||||||
position: {x: 0.2209423, y: 0.0000000035762786, z: 0.000000038146972}
|
|
||||||
rotation: {x: -0.047443625, y: -0.000021479917, z: 0.00049110386, w: 0.99887383}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: calf_l
|
- name: calf_l
|
||||||
parentName: thigh_l
|
parentName: thigh_l
|
||||||
position: {x: 0.4257201, y: 0.000000010728836, z: 0}
|
position: {x: 0.42572033, y: 0, z: 0}
|
||||||
rotation: {x: -0.048884287, y: -0.01886392, z: 0.06552234, w: 0.99647444}
|
rotation: {x: -0.12707841, y: 0.08129498, z: 0.25464967, w: 0.9551942}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1.0000001, y: 1.0000001, z: 1}
|
||||||
- name: calf_twist_01_l
|
- name: calf_twist_01_l
|
||||||
parentName: calf_l
|
parentName: calf_l
|
||||||
position: {x: 0.2047678, y: -0.000000047683713, z: -0.000000114440915}
|
position: {x: 0.20476776, y: 0, z: 0.000000009536743}
|
||||||
rotation: {x: 0.0028089383, y: 0.0019333779, z: 0.007612651, w: 0.99996525}
|
rotation: {x: 0.010246529, y: 0.001842266, z: 0.007318746, w: 0.99991906}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1.0000001, y: 1.0000001, z: 1.0000002}
|
||||||
- name: foot_l
|
- name: foot_l
|
||||||
parentName: calf_l
|
parentName: calf_l
|
||||||
position: {x: 0.40196696, y: -0.000000038146972, z: 0.000000057220458}
|
position: {x: 0.40196693, y: -0.000000038146972, z: 0.000000023841856}
|
||||||
rotation: {x: -0.0058857743, y: -0.03199126, z: -0.070354894, w: 0.9969915}
|
rotation: {x: -0.25984076, y: -0.15581343, z: -0.22225875, w: 0.9267179}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1.0000002, y: 1.0000001, z: 1.0000001}
|
||||||
- name: ball_l
|
- name: ball_l
|
||||||
parentName: foot_l
|
parentName: foot_l
|
||||||
position: {x: 0.10453844, y: -0.1657787, z: 0.00080156326}
|
position: {x: 0.10453836, y: -0.16577853, z: 0.0008015823}
|
||||||
rotation: {x: 0.000080097714, y: -0.000029610042, z: 0.7186337, w: 0.6953888}
|
rotation: {x: 0.01150501, y: -0.015001778, z: 0.72166264, w: 0.69198674}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 0.99999994, y: 1.0000001, z: 1.0000001}
|
||||||
|
- name: thigh_twist_01_l
|
||||||
|
parentName: thigh_l
|
||||||
|
position: {x: 0.2209423, y: 0, z: -0.0000000047683715}
|
||||||
|
rotation: {x: -0.047443617, y: -0.000021427777, z: 0.0004910662, w: 0.99887383}
|
||||||
|
scale: {x: 0.99999994, y: 0.99999994, z: 1}
|
||||||
- name: thigh_r
|
- name: thigh_r
|
||||||
parentName: pelvis
|
parentName: pelvis
|
||||||
position: {x: 0.014485702, y: -0.00531427, z: 0.09005803}
|
position: {x: 0.014486427, y: -0.0053142747, z: 0.09005803}
|
||||||
rotation: {x: -0.062138796, y: 0.07370505, z: 0.9953053, w: -0.008584373}
|
rotation: {x: -0.18299462, y: -0.076263554, z: 0.9653992, w: -0.16941422}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1.0000002, y: 1.0000002, z: 1.0000001}
|
||||||
- name: thigh_twist_01_r
|
|
||||||
parentName: thigh_r
|
|
||||||
position: {x: -0.2209423, y: 0.0000000017881393, z: 0.000000076293944}
|
|
||||||
rotation: {x: -0.04744529, y: -0.000021916712, z: 0.00049117446, w: 0.9988738}
|
|
||||||
scale: {x: 1, y: 1, z: 1}
|
|
||||||
- name: calf_r
|
- name: calf_r
|
||||||
parentName: thigh_r
|
parentName: thigh_r
|
||||||
position: {x: -0.42572248, y: -0.000000021457671, z: 0.000000038146972}
|
position: {x: -0.42572254, y: -0.000000038146972, z: -0.000000019073486}
|
||||||
rotation: {x: -0.048884347, y: -0.01886393, z: 0.06552235, w: 0.99647444}
|
rotation: {x: 0.02881302, y: -0.07407041, z: 0.20719513, w: 0.97506595}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1.0000001, y: 1, z: 0.99999994}
|
||||||
- name: calf_twist_01_r
|
- name: calf_twist_01_r
|
||||||
parentName: calf_r
|
parentName: calf_r
|
||||||
position: {x: -0.20476913, y: -0.000000028610229, z: 0}
|
position: {x: -0.20476903, y: 0, z: 0.000000019073486}
|
||||||
rotation: {x: 0.0028072814, y: 0.0019337109, z: 0.007612502, w: 0.99996525}
|
rotation: {x: 0.013646815, y: 0.0018009463, z: 0.0071841157, w: 0.9998795}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 0.99999994, y: 0.99999994, z: 1.0000001}
|
||||||
- name: foot_r
|
- name: foot_r
|
||||||
parentName: calf_r
|
parentName: calf_r
|
||||||
position: {x: -0.40196815, y: 0.000000009536743, z: -0.000000114440915}
|
position: {x: -0.4019682, y: 0.000000038146972, z: -0.0000001335144}
|
||||||
rotation: {x: -0.005885775, y: -0.031991262, z: -0.07035491, w: 0.9969915}
|
rotation: {x: -0.09342822, y: 0.41939205, z: -0.1945645, w: 0.8817745}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 0.9999999, y: 1, z: 0.9999999}
|
||||||
- name: ball_r
|
- name: ball_r
|
||||||
parentName: foot_r
|
parentName: foot_r
|
||||||
position: {x: -0.10453817, y: 0.16577816, z: -0.00080169673}
|
position: {x: -0.10453815, y: 0.16577792, z: -0.0008015823}
|
||||||
rotation: {x: 0.00008009213, y: -0.000029603341, z: 0.7186337, w: 0.6953888}
|
rotation: {x: -0.12946461, y: -0.00043473198, z: 0.4600271, w: 0.8784155}
|
||||||
scale: {x: 1, y: 1, z: 1}
|
scale: {x: 1.0000001, y: 1.0000001, z: 1.0000001}
|
||||||
- name: Armature_Mesh
|
- name: thigh_twist_01_r
|
||||||
parentName: Armature(Clone)
|
parentName: thigh_r
|
||||||
|
position: {x: -0.22094238, y: 0, z: -0.000000019073486}
|
||||||
|
rotation: {x: -0.047445256, y: -0.000021972639, z: 0.0004911745, w: 0.9988738}
|
||||||
|
scale: {x: 1.0000001, y: 1, z: 1}
|
||||||
|
- name: ik_foot_root
|
||||||
|
parentName: root
|
||||||
position: {x: -0, y: 0, z: 0}
|
position: {x: -0, y: 0, z: 0}
|
||||||
rotation: {x: 0.00000008146034, y: 0, z: -0, w: 1}
|
rotation: {x: -1.1359555e-28, y: 1.4210855e-14, z: 7.993576e-15, w: 1}
|
||||||
scale: {x: 1.029025, y: 1.029025, z: 1.029025}
|
scale: {x: 1, y: 1, z: 1}
|
||||||
|
- name: ik_foot_l
|
||||||
|
parentName: ik_foot_root
|
||||||
|
position: {x: -0.3093263, y: 0.28878078, z: 0.11690766}
|
||||||
|
rotation: {x: 0.6488706, y: 0.32674825, z: -0.6179175, w: 0.30063355}
|
||||||
|
scale: {x: 1, y: 1, z: 1}
|
||||||
|
- name: ik_foot_r
|
||||||
|
parentName: ik_foot_root
|
||||||
|
position: {x: 0.27750742, y: -0.6174421, z: 0.18369715}
|
||||||
|
rotation: {x: 0.13791609, y: -0.35166878, z: 0.86564475, w: 0.3285841}
|
||||||
|
scale: {x: 0.99999994, y: 1, z: 1}
|
||||||
|
- name: ik_hand_root
|
||||||
|
parentName: root
|
||||||
|
position: {x: -0, y: 0, z: 0}
|
||||||
|
rotation: {x: -1.1359555e-28, y: 1.4210855e-14, z: 7.993576e-15, w: 1}
|
||||||
|
scale: {x: 1, y: 1, z: 1}
|
||||||
|
- name: ik_hand_gun
|
||||||
|
parentName: ik_hand_root
|
||||||
|
position: {x: -0.1604951, y: 0.24690744, z: 0.81566244}
|
||||||
|
rotation: {x: 0.6849101, y: -0.29072824, z: 0.047615957, w: 0.6664143}
|
||||||
|
scale: {x: 1, y: 1, z: 1}
|
||||||
|
- name: ik_hand_l
|
||||||
|
parentName: ik_hand_gun
|
||||||
|
position: {x: -0.06526901, y: -0.16038367, z: 0.46446228}
|
||||||
|
rotation: {x: -0.42340243, y: 0.11589658, z: 0.8646669, w: -0.24423258}
|
||||||
|
scale: {x: 1, y: 1.0000001, z: 1.0000001}
|
||||||
|
- name: ik_hand_r
|
||||||
|
parentName: ik_hand_gun
|
||||||
|
position: {x: 0.0000016021728, y: -0.000000076293944, z: 0.0000047683716}
|
||||||
|
rotation: {x: 0.0000071935547, y: 0.0000055022288, z: -0.0000035018124, w: 1}
|
||||||
|
scale: {x: 1, y: 1, z: 0.99999994}
|
||||||
armTwist: 1
|
armTwist: 1
|
||||||
foreArmTwist: 0.02
|
foreArmTwist: 0.02
|
||||||
upperLegTwist: 1
|
upperLegTwist: 1
|
||||||
@@ -1075,22 +1031,15 @@ ModelImporter:
|
|||||||
hasTranslationDoF: 0
|
hasTranslationDoF: 0
|
||||||
hasExtraRoot: 1
|
hasExtraRoot: 1
|
||||||
skeletonHasParents: 1
|
skeletonHasParents: 1
|
||||||
lastHumanDescriptionAvatarSource: {fileID: 9000000, guid: 36078ab0369161e49a29d349ae3e0739,
|
lastHumanDescriptionAvatarSource: {instanceID: 0}
|
||||||
type: 3}
|
|
||||||
autoGenerateAvatarMappingIfUnspecified: 1
|
autoGenerateAvatarMappingIfUnspecified: 1
|
||||||
animationType: 3
|
animationType: 3
|
||||||
humanoidOversampling: 1
|
humanoidOversampling: 1
|
||||||
avatarSetup: 2
|
avatarSetup: 1
|
||||||
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||||
|
importBlendShapeDeformPercent: 0
|
||||||
remapMaterialsIfMaterialImportModeIsNone: 1
|
remapMaterialsIfMaterialImportModeIsNone: 1
|
||||||
additionalBone: 0
|
additionalBone: 0
|
||||||
userData:
|
userData:
|
||||||
assetBundleName:
|
assetBundleName:
|
||||||
assetBundleVariant:
|
assetBundleVariant:
|
||||||
AssetOrigin:
|
|
||||||
serializedVersion: 1
|
|
||||||
productId: 269483
|
|
||||||
packageName: One Handed Sword Animset Pro
|
|
||||||
packageVersion: 1.0
|
|
||||||
assetPath: Assets/SwordAnimsetPro/Animations/RootPlace/Attack_Combo_02_04_Anim.FBX
|
|
||||||
uploadId: 738342
|
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -68,7 +68,7 @@ Material:
|
|||||||
m_Scale: {x: 1, y: 1}
|
m_Scale: {x: 1, y: 1}
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
- _MainTex:
|
- _MainTex:
|
||||||
m_Texture: {fileID: 0}
|
m_Texture: {fileID: 2800000, guid: ecfd8dee444853641b96003ca2f834e8, type: 3}
|
||||||
m_Scale: {x: 1, y: 1}
|
m_Scale: {x: 1, y: 1}
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
- _MetallicGlossMap:
|
- _MetallicGlossMap:
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ Material:
|
|||||||
disabledShaderPasses:
|
disabledShaderPasses:
|
||||||
- MOTIONVECTORS
|
- MOTIONVECTORS
|
||||||
- DepthOnly
|
- DepthOnly
|
||||||
|
- SHADOWCASTER
|
||||||
m_LockedProperties:
|
m_LockedProperties:
|
||||||
m_SavedProperties:
|
m_SavedProperties:
|
||||||
serializedVersion: 3
|
serializedVersion: 3
|
||||||
@@ -122,7 +123,7 @@ Material:
|
|||||||
- _ZWrite: 0
|
- _ZWrite: 0
|
||||||
m_Colors:
|
m_Colors:
|
||||||
- _BaseColor: {r: 0, g: 0, b: 0, a: 0.13}
|
- _BaseColor: {r: 0, g: 0, b: 0, a: 0.13}
|
||||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
- _Color: {r: 0, g: 0, b: 0, a: 0.13}
|
||||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||||
- _SpecColor: {r: 0.29411763, g: 0.29411763, b: 0.29411763, a: 1}
|
- _SpecColor: {r: 0.29411763, g: 0.29411763, b: 0.29411763, a: 1}
|
||||||
m_BuildTextureStacks: []
|
m_BuildTextureStacks: []
|
||||||
|
|||||||
@@ -68,7 +68,7 @@ Material:
|
|||||||
m_Scale: {x: 1, y: 1}
|
m_Scale: {x: 1, y: 1}
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
- _MainTex:
|
- _MainTex:
|
||||||
m_Texture: {fileID: 0}
|
m_Texture: {fileID: 2800000, guid: 586f46705bac2a64383b5a9f7b024323, type: 3}
|
||||||
m_Scale: {x: 1, y: 1}
|
m_Scale: {x: 1, y: 1}
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
- _MetallicGlossMap:
|
- _MetallicGlossMap:
|
||||||
|
|||||||
@@ -68,7 +68,7 @@ Material:
|
|||||||
m_Scale: {x: 1, y: 1}
|
m_Scale: {x: 1, y: 1}
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
- _MainTex:
|
- _MainTex:
|
||||||
m_Texture: {fileID: 0}
|
m_Texture: {fileID: 2800000, guid: 3038f9b0643c18c4c9f7ece56db63dca, type: 3}
|
||||||
m_Scale: {x: 1, y: 1}
|
m_Scale: {x: 1, y: 1}
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
- _MetallicGlossMap:
|
- _MetallicGlossMap:
|
||||||
|
|||||||
196
Assets/ThirdParty/ENVIRO/Top-Down caves/Prefabs/Origin/Models/Materials/Crystals_red 1.mat
vendored
Normal file
196
Assets/ThirdParty/ENVIRO/Top-Down caves/Prefabs/Origin/Models/Materials/Crystals_red 1.mat
vendored
Normal file
@@ -0,0 +1,196 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!114 &-7966782797081402813
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 11
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
version: 10
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 8
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: Crystals_red 1
|
||||||
|
m_Shader: {fileID: -6465566751694194690, guid: 00a0b3897399f8b42a61a0333dd40ced,
|
||||||
|
type: 3}
|
||||||
|
m_Parent: {fileID: 0}
|
||||||
|
m_ModifiedSerializedProperties: 0
|
||||||
|
m_ValidKeywords:
|
||||||
|
- BASETEXTYPE_ALBEDO_EMISSIVE
|
||||||
|
- USEDISSOLVE_DONT_USE
|
||||||
|
- USEFRESNEL
|
||||||
|
- _ALPHATEST_ON
|
||||||
|
- _USEDISTANCEFADE
|
||||||
|
m_InvalidKeywords:
|
||||||
|
- _EMISSION
|
||||||
|
- _ENVIRONMENTREFLECTIONS_OFF
|
||||||
|
- _METALLICSPECGLOSSMAP
|
||||||
|
- _NORMALMAP
|
||||||
|
m_LightmapFlags: 2
|
||||||
|
m_EnableInstancingVariants: 1
|
||||||
|
m_DoubleSidedGI: 1
|
||||||
|
m_CustomRenderQueue: 2450
|
||||||
|
stringTagMap:
|
||||||
|
RenderType: TransparentCutout
|
||||||
|
disabledShaderPasses:
|
||||||
|
- MOTIONVECTORS
|
||||||
|
m_LockedProperties:
|
||||||
|
m_SavedProperties:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TexEnvs:
|
||||||
|
- BaseTex:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 7905193ef00a1844e9b9e2c14ce9be7f, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- DissolveMask:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- NOSMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: ead716f17a0a0f347adaf3ff0a109e6a, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _BaseMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: c0d899801acbe0845902935b9e0e857e, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _BumpMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 5a004b07e91ff744aa9143b4cdd46a2d, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailAlbedoMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailMask:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailNormalMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _EmissionMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 284695d770a91574cb92ebad906dc6f4, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _MainTex:
|
||||||
|
m_Texture: {fileID: 2800000, guid: c0d899801acbe0845902935b9e0e857e, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _MetallicGlossMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 18c6ef854a1f94045bcd407172b8d0f6, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _OcclusionMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ParallaxMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _SpecGlossMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 18c6ef854a1f94045bcd407172b8d0f6, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_Lightmaps:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_LightmapsInd:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_ShadowMasks:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
m_Ints: []
|
||||||
|
m_Floats:
|
||||||
|
- AOStrength: 3
|
||||||
|
- AlphaClipThreshold: 0.454
|
||||||
|
- BASETEXTYPE: 0
|
||||||
|
- DissolveNoiseScale: 25
|
||||||
|
- EffectStrenght: 0.14
|
||||||
|
- FresnelPower: 1.37
|
||||||
|
- Metalness: 0.13
|
||||||
|
- NormalStrength: 1.64
|
||||||
|
- Smoothness: 1.74
|
||||||
|
- USEDISSOLVE: 0
|
||||||
|
- USEDISSOLVEMASK: 0
|
||||||
|
- USEFRESNEL: 1
|
||||||
|
- Vector1_473704f964214ae2bc68475022d1524b: 0.05
|
||||||
|
- _AlphaClip: 1
|
||||||
|
- _AlphaToMask: 1
|
||||||
|
- _BendEffect: 0
|
||||||
|
- _BendMaxDistance: 1
|
||||||
|
- _BendMaxHeight: 0
|
||||||
|
- _BendMinDistance: 0.2
|
||||||
|
- _BendMinHeight: 1
|
||||||
|
- _Blend: 0
|
||||||
|
- _BlendModePreserveSpecular: 0
|
||||||
|
- _BumpScale: 1
|
||||||
|
- _CastShadows: 1
|
||||||
|
- _ClearCoatMask: 0
|
||||||
|
- _ClearCoatSmoothness: 0
|
||||||
|
- _Cull: 2
|
||||||
|
- _Cutoff: 0.5
|
||||||
|
- _DetailAlbedoMapScale: 1
|
||||||
|
- _DetailNormalMapScale: 1
|
||||||
|
- _DstBlend: 0
|
||||||
|
- _EffectThreshold: 0
|
||||||
|
- _EmissionScaleUI: 1.5
|
||||||
|
- _EnvironmentReflections: 0
|
||||||
|
- _FadeDistance: 0.28
|
||||||
|
- _FarFadeDistance: 500
|
||||||
|
- _GlossMapScale: 0
|
||||||
|
- _Glossiness: 0.613
|
||||||
|
- _GlossyReflections: 0
|
||||||
|
- _InverseFadeRange: 1
|
||||||
|
- _InverseFarFadeRange: 0.5
|
||||||
|
- _Metallic: 0.772
|
||||||
|
- _Mode: 0
|
||||||
|
- _OcclusionStrength: 1
|
||||||
|
- _Parallax: 0.02
|
||||||
|
- _QueueControl: 0
|
||||||
|
- _QueueOffset: 0
|
||||||
|
- _ReceiveShadows: 1
|
||||||
|
- _Smoothness: 0
|
||||||
|
- _SmoothnessTextureChannel: 0
|
||||||
|
- _SpecularHighlights: 1
|
||||||
|
- _SrcBlend: 1
|
||||||
|
- _Surface: 0
|
||||||
|
- _Threshold: 0.184
|
||||||
|
- _USEDISTANCEFADE: 1
|
||||||
|
- _USESCANWAVE: 0
|
||||||
|
- _UVSec: 0
|
||||||
|
- _WaveTrail: 4
|
||||||
|
- _WorkflowMode: 1
|
||||||
|
- _ZTest: 4
|
||||||
|
- _ZWrite: 1
|
||||||
|
- _ZWriteControl: 0
|
||||||
|
m_Colors:
|
||||||
|
- BaseColor: {r: 0.92593974, g: 0.92593974, b: 0.92593974, a: 1}
|
||||||
|
- Color_613d1588816440ec9b17710effb7528b: {r: 0, g: 13.98681, b: 714.8679, a: 0}
|
||||||
|
- EmissiveColor: {r: 0.25206095, g: 0, b: 0.6901961, a: 1.5}
|
||||||
|
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
- _BendVector: {r: 0, g: -1, b: 0, a: 0}
|
||||||
|
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
- _EmissionColor: {r: 29.508846, g: 3.0899315, b: 0, a: 1.5}
|
||||||
|
- _EmissionColorUI: {r: 1, g: 0.10344824, b: 0, a: 1}
|
||||||
|
- _FresnelColor: {r: 0.03481903, g: 0, b: 0.70710677, a: 0}
|
||||||
|
- _ScanWaveColor: {r: 0, g: 0.5949242, b: 1, a: 0}
|
||||||
|
- _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1}
|
||||||
|
m_BuildTextureStacks: []
|
||||||
|
m_AllowLocking: 1
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: b5eabfbed738a224284015c33b62e54b
|
guid: 4dd6a2e84f333e0448c7f41299d7e12d
|
||||||
timeCreated: 1431698653
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 2100000
|
||||||
userData:
|
userData:
|
||||||
assetBundleName:
|
assetBundleName:
|
||||||
assetBundleVariant:
|
assetBundleVariant:
|
||||||
@@ -1,5 +1,89 @@
|
|||||||
%YAML 1.1
|
%YAML 1.1
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!114 &-9002994301735285202
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 1
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: d20bc7e4150a82f4ba03191390f832f8, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
parameterName: Randomized
|
||||||
|
weights: 210000002100000021000000
|
||||||
|
--- !u!1102 &-6212810689603984707
|
||||||
|
AnimatorState:
|
||||||
|
serializedVersion: 6
|
||||||
|
m_ObjectHideFlags: 1
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: Blend Tree
|
||||||
|
m_Speed: 1
|
||||||
|
m_CycleOffset: 0
|
||||||
|
m_Transitions:
|
||||||
|
- {fileID: 4661024869372733565}
|
||||||
|
m_StateMachineBehaviours:
|
||||||
|
- {fileID: 6394280332537993716}
|
||||||
|
- {fileID: 9213551054618683998}
|
||||||
|
- {fileID: 6184924150879439133}
|
||||||
|
- {fileID: -9002994301735285202}
|
||||||
|
m_Position: {x: 50, y: 50, z: 0}
|
||||||
|
m_IKOnFeet: 0
|
||||||
|
m_WriteDefaultValues: 1
|
||||||
|
m_Mirror: 0
|
||||||
|
m_SpeedParameterActive: 0
|
||||||
|
m_MirrorParameterActive: 0
|
||||||
|
m_CycleOffsetParameterActive: 0
|
||||||
|
m_TimeParameterActive: 0
|
||||||
|
m_Motion: {fileID: -1705551523853769300}
|
||||||
|
m_Tag:
|
||||||
|
m_SpeedParameter:
|
||||||
|
m_MirrorParameter:
|
||||||
|
m_CycleOffsetParameter:
|
||||||
|
m_TimeParameter:
|
||||||
|
--- !u!206 &-1705551523853769300
|
||||||
|
BlendTree:
|
||||||
|
m_ObjectHideFlags: 1
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: Blend Tree
|
||||||
|
m_Childs:
|
||||||
|
- serializedVersion: 2
|
||||||
|
m_Motion: {fileID: 7400008, guid: a9e228972999b0d46a21e30edf97d812, type: 3}
|
||||||
|
m_Threshold: 0
|
||||||
|
m_Position: {x: 0, y: 0}
|
||||||
|
m_TimeScale: 1
|
||||||
|
m_CycleOffset: 0
|
||||||
|
m_DirectBlendParameter: InputHorizontal
|
||||||
|
m_Mirror: 0
|
||||||
|
- serializedVersion: 2
|
||||||
|
m_Motion: {fileID: 7400000, guid: a9e228972999b0d46a21e30edf97d812, type: 3}
|
||||||
|
m_Threshold: 1
|
||||||
|
m_Position: {x: 0, y: 0}
|
||||||
|
m_TimeScale: 1
|
||||||
|
m_CycleOffset: 0
|
||||||
|
m_DirectBlendParameter: InputHorizontal
|
||||||
|
m_Mirror: 0
|
||||||
|
- serializedVersion: 2
|
||||||
|
m_Motion: {fileID: 7400054, guid: a9e228972999b0d46a21e30edf97d812, type: 3}
|
||||||
|
m_Threshold: 2
|
||||||
|
m_Position: {x: 0, y: 0}
|
||||||
|
m_TimeScale: 1
|
||||||
|
m_CycleOffset: 0
|
||||||
|
m_DirectBlendParameter: InputHorizontal
|
||||||
|
m_Mirror: 0
|
||||||
|
m_BlendParameter: Randomized
|
||||||
|
m_BlendParameterY: InputHorizontal
|
||||||
|
m_MinThreshold: 0
|
||||||
|
m_MaxThreshold: 2
|
||||||
|
m_UseAutomaticThresholds: 0
|
||||||
|
m_NormalizedBlendValues: 0
|
||||||
|
m_BlendType: 0
|
||||||
--- !u!91 &9100000
|
--- !u!91 &9100000
|
||||||
AnimatorController:
|
AnimatorController:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -201,6 +285,12 @@ AnimatorController:
|
|||||||
m_DefaultInt: 0
|
m_DefaultInt: 0
|
||||||
m_DefaultBool: 0
|
m_DefaultBool: 0
|
||||||
m_Controller: {fileID: 9100000}
|
m_Controller: {fileID: 9100000}
|
||||||
|
- m_Name: Randomized
|
||||||
|
m_Type: 1
|
||||||
|
m_DefaultFloat: 0
|
||||||
|
m_DefaultInt: 0
|
||||||
|
m_DefaultBool: 0
|
||||||
|
m_Controller: {fileID: 9100000}
|
||||||
m_AnimatorLayers:
|
m_AnimatorLayers:
|
||||||
- serializedVersion: 5
|
- serializedVersion: 5
|
||||||
m_Name: Base Layer
|
m_Name: Base Layer
|
||||||
@@ -15256,41 +15346,6 @@ MonoBehaviour:
|
|||||||
sounds:
|
sounds:
|
||||||
- {fileID: 8300000, guid: 08b5a5b778d6952438c6b3bedaa1e6af, type: 3}
|
- {fileID: 8300000, guid: 08b5a5b778d6952438c6b3bedaa1e6af, type: 3}
|
||||||
triggerTime: 0
|
triggerTime: 0
|
||||||
--- !u!114 &114030386879188540
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 1
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: f9058122f6ec699438581f28f117350d, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
startDamage: 0.05
|
|
||||||
endDamage: 0.9
|
|
||||||
damageMultiplier: 0
|
|
||||||
recoilID: 1
|
|
||||||
reactionID: 1
|
|
||||||
meleeAttackType: 1
|
|
||||||
damageType:
|
|
||||||
bodyParts:
|
|
||||||
- RightLowerArm
|
|
||||||
ignoreDefense: 0
|
|
||||||
activeRagdoll: 0
|
|
||||||
senselessTime: 0
|
|
||||||
resetAttackTrigger: 0
|
|
||||||
resetTriggerBeforeTime: 0.5
|
|
||||||
useAttackTimeScale: 0
|
|
||||||
slowMoActivationDistance: 3
|
|
||||||
lowHealthTh: 10
|
|
||||||
attackTimeScale: 0.2
|
|
||||||
attackTimeScaleStart: -1
|
|
||||||
attackTimeScaleEnd: -1
|
|
||||||
rotatePlayerTowardsTarget: 0
|
|
||||||
rotationActivationAngle: 45
|
|
||||||
debug: 0
|
|
||||||
--- !u!114 &114037387642052710
|
--- !u!114 &114037387642052710
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -15321,41 +15376,6 @@ MonoBehaviour:
|
|||||||
stateInfos: []
|
stateInfos: []
|
||||||
tags:
|
tags:
|
||||||
- CustomAction
|
- CustomAction
|
||||||
--- !u!114 &114101577822421078
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 1
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: f9058122f6ec699438581f28f117350d, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
startDamage: 0.05
|
|
||||||
endDamage: 0.9
|
|
||||||
damageMultiplier: 0
|
|
||||||
recoilID: 2
|
|
||||||
reactionID: 1
|
|
||||||
meleeAttackType: 1
|
|
||||||
damageType:
|
|
||||||
bodyParts:
|
|
||||||
- RightLowerArm
|
|
||||||
ignoreDefense: 0
|
|
||||||
activeRagdoll: 0
|
|
||||||
senselessTime: 0
|
|
||||||
resetAttackTrigger: 1
|
|
||||||
resetTriggerBeforeTime: 0.5
|
|
||||||
useAttackTimeScale: 0
|
|
||||||
slowMoActivationDistance: 3
|
|
||||||
lowHealthTh: 10
|
|
||||||
attackTimeScale: 0.2
|
|
||||||
attackTimeScaleStart: -1
|
|
||||||
attackTimeScaleEnd: -1
|
|
||||||
rotatePlayerTowardsTarget: 0
|
|
||||||
rotationActivationAngle: 45
|
|
||||||
debug: 0
|
|
||||||
--- !u!114 &114109424512592286
|
--- !u!114 &114109424512592286
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -15638,30 +15658,6 @@ MonoBehaviour:
|
|||||||
- {fileID: 8300000, guid: 08b5a5b778d6952438c6b3bedaa1e6af, type: 3}
|
- {fileID: 8300000, guid: 08b5a5b778d6952438c6b3bedaa1e6af, type: 3}
|
||||||
- {fileID: 8300000, guid: cf35a39ed3f005d49bf846fdd9eee7a0, type: 3}
|
- {fileID: 8300000, guid: cf35a39ed3f005d49bf846fdd9eee7a0, type: 3}
|
||||||
triggerTime: 0
|
triggerTime: 0
|
||||||
--- !u!114 &114263588767966834
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 1
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: 5f3b04f29aa5b134b99e94c78b296dcf, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
stateInfos: []
|
|
||||||
debug: 0
|
|
||||||
tags:
|
|
||||||
- tagName: Attack
|
|
||||||
tagType: 3
|
|
||||||
normalizedTime: {x: 0.1, y: 0.8}
|
|
||||||
- tagName: LockRotation
|
|
||||||
tagType: 0
|
|
||||||
normalizedTime: {x: 0.1, y: 0.7}
|
|
||||||
- tagName: LockMovement
|
|
||||||
tagType: 1
|
|
||||||
normalizedTime: {x: 0, y: 0.7}
|
|
||||||
--- !u!114 &114275699407771092
|
--- !u!114 &114275699407771092
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -15727,44 +15723,6 @@ MonoBehaviour:
|
|||||||
stateInfos: []
|
stateInfos: []
|
||||||
tags:
|
tags:
|
||||||
- CustomAction
|
- CustomAction
|
||||||
--- !u!114 &114304692954732270
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 1
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: ae6dcf6552bd02645a9ceb894d7a6cfa, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
audioSource: {fileID: 106114, guid: dfea19d1d34dd174d87195f78cb44ae7, type: 3}
|
|
||||||
sounds:
|
|
||||||
- {fileID: 8300000, guid: 60fdfa301881bae48ae59759cc83b842, type: 3}
|
|
||||||
- {fileID: 8300000, guid: f82a7d93926f978479349ce3a9e025f6, type: 3}
|
|
||||||
- {fileID: 8300000, guid: 08b5a5b778d6952438c6b3bedaa1e6af, type: 3}
|
|
||||||
- {fileID: 8300000, guid: cf35a39ed3f005d49bf846fdd9eee7a0, type: 3}
|
|
||||||
triggerTime: 0
|
|
||||||
--- !u!114 &114312089054784788
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 1
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: ae6dcf6552bd02645a9ceb894d7a6cfa, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
audioSource: {fileID: 106114, guid: dfea19d1d34dd174d87195f78cb44ae7, type: 3}
|
|
||||||
sounds:
|
|
||||||
- {fileID: 8300000, guid: 60fdfa301881bae48ae59759cc83b842, type: 3}
|
|
||||||
- {fileID: 8300000, guid: f82a7d93926f978479349ce3a9e025f6, type: 3}
|
|
||||||
- {fileID: 8300000, guid: 08b5a5b778d6952438c6b3bedaa1e6af, type: 3}
|
|
||||||
- {fileID: 8300000, guid: cf35a39ed3f005d49bf846fdd9eee7a0, type: 3}
|
|
||||||
triggerTime: 0
|
|
||||||
--- !u!114 &114324329624715244
|
--- !u!114 &114324329624715244
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -15865,25 +15823,6 @@ MonoBehaviour:
|
|||||||
- tagName: CustomAction
|
- tagName: CustomAction
|
||||||
tagType: 0
|
tagType: 0
|
||||||
normalizedTime: {x: 0.1, y: 0.35}
|
normalizedTime: {x: 0.1, y: 0.35}
|
||||||
--- !u!114 &114405241802589726
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 1
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: ae6dcf6552bd02645a9ceb894d7a6cfa, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
audioSource: {fileID: 106114, guid: dfea19d1d34dd174d87195f78cb44ae7, type: 3}
|
|
||||||
sounds:
|
|
||||||
- {fileID: 8300000, guid: 60fdfa301881bae48ae59759cc83b842, type: 3}
|
|
||||||
- {fileID: 8300000, guid: f82a7d93926f978479349ce3a9e025f6, type: 3}
|
|
||||||
- {fileID: 8300000, guid: cf35a39ed3f005d49bf846fdd9eee7a0, type: 3}
|
|
||||||
- {fileID: 8300000, guid: 08b5a5b778d6952438c6b3bedaa1e6af, type: 3}
|
|
||||||
triggerTime: 0
|
|
||||||
--- !u!114 &114406195790751738
|
--- !u!114 &114406195790751738
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -16487,30 +16426,6 @@ MonoBehaviour:
|
|||||||
tags:
|
tags:
|
||||||
- LockMovement
|
- LockMovement
|
||||||
- LockRotation
|
- LockRotation
|
||||||
--- !u!114 &114667135945300734
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 1
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: 5f3b04f29aa5b134b99e94c78b296dcf, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
stateInfos: []
|
|
||||||
debug: 0
|
|
||||||
tags:
|
|
||||||
- tagName: Attack
|
|
||||||
tagType: 3
|
|
||||||
normalizedTime: {x: 0.1, y: 0.8}
|
|
||||||
- tagName: LockRotation
|
|
||||||
tagType: 0
|
|
||||||
normalizedTime: {x: 0.1, y: 0.7}
|
|
||||||
- tagName: LockMovement
|
|
||||||
tagType: 1
|
|
||||||
normalizedTime: {x: 0, y: 0.7}
|
|
||||||
--- !u!114 &114669916436479170
|
--- !u!114 &114669916436479170
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -16603,30 +16518,6 @@ MonoBehaviour:
|
|||||||
stateInfos: []
|
stateInfos: []
|
||||||
tags:
|
tags:
|
||||||
- CustomAction
|
- CustomAction
|
||||||
--- !u!114 &114756031459307912
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 1
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: 5f3b04f29aa5b134b99e94c78b296dcf, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
stateInfos: []
|
|
||||||
debug: 0
|
|
||||||
tags:
|
|
||||||
- tagName: Attack
|
|
||||||
tagType: 3
|
|
||||||
normalizedTime: {x: 0.1, y: 0}
|
|
||||||
- tagName: LockRotation
|
|
||||||
tagType: 0
|
|
||||||
normalizedTime: {x: 0.1, y: 0.7}
|
|
||||||
- tagName: LockMovement
|
|
||||||
tagType: 1
|
|
||||||
normalizedTime: {x: 0, y: 0.7}
|
|
||||||
--- !u!114 &114771221009366196
|
--- !u!114 &114771221009366196
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -16724,41 +16615,6 @@ MonoBehaviour:
|
|||||||
stateInfos: []
|
stateInfos: []
|
||||||
tags:
|
tags:
|
||||||
- LockMovement
|
- LockMovement
|
||||||
--- !u!114 &114825370114345668
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 1
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: f9058122f6ec699438581f28f117350d, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
startDamage: 0.05
|
|
||||||
endDamage: 0.9
|
|
||||||
damageMultiplier: 1
|
|
||||||
recoilID: 1
|
|
||||||
reactionID: 1
|
|
||||||
meleeAttackType: 1
|
|
||||||
damageType:
|
|
||||||
bodyParts:
|
|
||||||
- RightLowerArm
|
|
||||||
ignoreDefense: 0
|
|
||||||
activeRagdoll: 0
|
|
||||||
senselessTime: 0
|
|
||||||
resetAttackTrigger: 0
|
|
||||||
resetTriggerBeforeTime: 0.5
|
|
||||||
useAttackTimeScale: 0
|
|
||||||
slowMoActivationDistance: 3
|
|
||||||
lowHealthTh: 10
|
|
||||||
attackTimeScale: 0.2
|
|
||||||
attackTimeScaleStart: -1
|
|
||||||
attackTimeScaleEnd: -1
|
|
||||||
rotatePlayerTowardsTarget: 0
|
|
||||||
rotationActivationAngle: 45
|
|
||||||
debug: 0
|
|
||||||
--- !u!114 &114838529179133088
|
--- !u!114 &114838529179133088
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -18027,7 +17883,7 @@ BlendTree:
|
|||||||
m_Name: Run
|
m_Name: Run
|
||||||
m_Childs:
|
m_Childs:
|
||||||
- serializedVersion: 2
|
- serializedVersion: 2
|
||||||
m_Motion: {fileID: 7400012, guid: 37c6cfe59f56e8a4799011397a870a8b, type: 3}
|
m_Motion: {fileID: 7400106, guid: 3ef453d7877555243997dba1cdaa2958, type: 3}
|
||||||
m_Threshold: 0
|
m_Threshold: 0
|
||||||
m_Position: {x: 0, y: 1}
|
m_Position: {x: 0, y: 1}
|
||||||
m_TimeScale: 1
|
m_TimeScale: 1
|
||||||
@@ -18153,7 +18009,7 @@ BlendTree:
|
|||||||
m_DirectBlendParameter: InputHorizontal
|
m_DirectBlendParameter: InputHorizontal
|
||||||
m_Mirror: 0
|
m_Mirror: 0
|
||||||
- serializedVersion: 2
|
- serializedVersion: 2
|
||||||
m_Motion: {fileID: 7400012, guid: 37c6cfe59f56e8a4799011397a870a8b, type: 3}
|
m_Motion: {fileID: 7400106, guid: 3ef453d7877555243997dba1cdaa2958, type: 3}
|
||||||
m_Threshold: 0
|
m_Threshold: 0
|
||||||
m_Position: {x: 0, y: 0}
|
m_Position: {x: 0, y: 0}
|
||||||
m_TimeScale: 1
|
m_TimeScale: 1
|
||||||
@@ -22661,28 +22517,6 @@ AnimatorStateTransition:
|
|||||||
m_InterruptionSource: 0
|
m_InterruptionSource: 0
|
||||||
m_OrderedInterruption: 1
|
m_OrderedInterruption: 1
|
||||||
m_CanTransitionToSelf: 1
|
m_CanTransitionToSelf: 1
|
||||||
--- !u!1101 &1101255493625229458
|
|
||||||
AnimatorStateTransition:
|
|
||||||
m_ObjectHideFlags: 1
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_Name:
|
|
||||||
m_Conditions: []
|
|
||||||
m_DstStateMachine: {fileID: 0}
|
|
||||||
m_DstState: {fileID: 0}
|
|
||||||
m_Solo: 0
|
|
||||||
m_Mute: 0
|
|
||||||
m_IsExit: 1
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TransitionDuration: 0.25
|
|
||||||
m_TransitionOffset: 0
|
|
||||||
m_ExitTime: 0.8
|
|
||||||
m_HasExitTime: 1
|
|
||||||
m_HasFixedDuration: 1
|
|
||||||
m_InterruptionSource: 0
|
|
||||||
m_OrderedInterruption: 1
|
|
||||||
m_CanTransitionToSelf: 1
|
|
||||||
--- !u!1101 &1101259247973905158
|
--- !u!1101 &1101259247973905158
|
||||||
AnimatorStateTransition:
|
AnimatorStateTransition:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -22705,31 +22539,6 @@ AnimatorStateTransition:
|
|||||||
m_InterruptionSource: 0
|
m_InterruptionSource: 0
|
||||||
m_OrderedInterruption: 1
|
m_OrderedInterruption: 1
|
||||||
m_CanTransitionToSelf: 1
|
m_CanTransitionToSelf: 1
|
||||||
--- !u!1101 &1101262937642278562
|
|
||||||
AnimatorStateTransition:
|
|
||||||
m_ObjectHideFlags: 1
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_Name:
|
|
||||||
m_Conditions:
|
|
||||||
- m_ConditionMode: 1
|
|
||||||
m_ConditionEvent: WeakAttack
|
|
||||||
m_EventTreshold: 0
|
|
||||||
m_DstStateMachine: {fileID: 0}
|
|
||||||
m_DstState: {fileID: 1102186001672383516}
|
|
||||||
m_Solo: 0
|
|
||||||
m_Mute: 0
|
|
||||||
m_IsExit: 0
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TransitionDuration: 0.11020672
|
|
||||||
m_TransitionOffset: 0.01405192
|
|
||||||
m_ExitTime: 0.75
|
|
||||||
m_HasExitTime: 1
|
|
||||||
m_HasFixedDuration: 0
|
|
||||||
m_InterruptionSource: 0
|
|
||||||
m_OrderedInterruption: 1
|
|
||||||
m_CanTransitionToSelf: 1
|
|
||||||
--- !u!1101 &1101264055223708130
|
--- !u!1101 &1101264055223708130
|
||||||
AnimatorStateTransition:
|
AnimatorStateTransition:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -24140,28 +23949,6 @@ AnimatorStateTransition:
|
|||||||
m_InterruptionSource: 0
|
m_InterruptionSource: 0
|
||||||
m_OrderedInterruption: 1
|
m_OrderedInterruption: 1
|
||||||
m_CanTransitionToSelf: 1
|
m_CanTransitionToSelf: 1
|
||||||
--- !u!1101 &1101473625656561818
|
|
||||||
AnimatorStateTransition:
|
|
||||||
m_ObjectHideFlags: 1
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_Name:
|
|
||||||
m_Conditions: []
|
|
||||||
m_DstStateMachine: {fileID: 0}
|
|
||||||
m_DstState: {fileID: 0}
|
|
||||||
m_Solo: 0
|
|
||||||
m_Mute: 0
|
|
||||||
m_IsExit: 1
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TransitionDuration: 0.2
|
|
||||||
m_TransitionOffset: 0
|
|
||||||
m_ExitTime: 0.85
|
|
||||||
m_HasExitTime: 1
|
|
||||||
m_HasFixedDuration: 1
|
|
||||||
m_InterruptionSource: 0
|
|
||||||
m_OrderedInterruption: 1
|
|
||||||
m_CanTransitionToSelf: 1
|
|
||||||
--- !u!1101 &1101476070418764840
|
--- !u!1101 &1101476070418764840
|
||||||
AnimatorStateTransition:
|
AnimatorStateTransition:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -24920,28 +24707,6 @@ AnimatorStateTransition:
|
|||||||
m_InterruptionSource: 0
|
m_InterruptionSource: 0
|
||||||
m_OrderedInterruption: 1
|
m_OrderedInterruption: 1
|
||||||
m_CanTransitionToSelf: 1
|
m_CanTransitionToSelf: 1
|
||||||
--- !u!1101 &1101559597476362148
|
|
||||||
AnimatorStateTransition:
|
|
||||||
m_ObjectHideFlags: 1
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_Name:
|
|
||||||
m_Conditions: []
|
|
||||||
m_DstStateMachine: {fileID: 0}
|
|
||||||
m_DstState: {fileID: 0}
|
|
||||||
m_Solo: 0
|
|
||||||
m_Mute: 0
|
|
||||||
m_IsExit: 1
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TransitionDuration: 0.2
|
|
||||||
m_TransitionOffset: 0
|
|
||||||
m_ExitTime: 0.8
|
|
||||||
m_HasExitTime: 1
|
|
||||||
m_HasFixedDuration: 1
|
|
||||||
m_InterruptionSource: 0
|
|
||||||
m_OrderedInterruption: 1
|
|
||||||
m_CanTransitionToSelf: 1
|
|
||||||
--- !u!1101 &1101561649539745982
|
--- !u!1101 &1101561649539745982
|
||||||
AnimatorStateTransition:
|
AnimatorStateTransition:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -27030,31 +26795,6 @@ AnimatorStateTransition:
|
|||||||
m_InterruptionSource: 0
|
m_InterruptionSource: 0
|
||||||
m_OrderedInterruption: 1
|
m_OrderedInterruption: 1
|
||||||
m_CanTransitionToSelf: 1
|
m_CanTransitionToSelf: 1
|
||||||
--- !u!1101 &1101963861138605418
|
|
||||||
AnimatorStateTransition:
|
|
||||||
m_ObjectHideFlags: 1
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_Name:
|
|
||||||
m_Conditions:
|
|
||||||
- m_ConditionMode: 1
|
|
||||||
m_ConditionEvent: WeakAttack
|
|
||||||
m_EventTreshold: 0
|
|
||||||
m_DstStateMachine: {fileID: 0}
|
|
||||||
m_DstState: {fileID: 1102861933717182418}
|
|
||||||
m_Solo: 0
|
|
||||||
m_Mute: 0
|
|
||||||
m_IsExit: 0
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TransitionDuration: 0.14999986
|
|
||||||
m_TransitionOffset: 0.049623918
|
|
||||||
m_ExitTime: 0.9116617
|
|
||||||
m_HasExitTime: 1
|
|
||||||
m_HasFixedDuration: 1
|
|
||||||
m_InterruptionSource: 0
|
|
||||||
m_OrderedInterruption: 1
|
|
||||||
m_CanTransitionToSelf: 1
|
|
||||||
--- !u!1101 &1101967999082563810
|
--- !u!1101 &1101967999082563810
|
||||||
AnimatorStateTransition:
|
AnimatorStateTransition:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
@@ -28702,36 +28442,6 @@ AnimatorState:
|
|||||||
m_MirrorParameter:
|
m_MirrorParameter:
|
||||||
m_CycleOffsetParameter:
|
m_CycleOffsetParameter:
|
||||||
m_TimeParameter:
|
m_TimeParameter:
|
||||||
--- !u!1102 &1102186001672383516
|
|
||||||
AnimatorState:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 1
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_Name: C
|
|
||||||
m_Speed: 1.2
|
|
||||||
m_CycleOffset: 0
|
|
||||||
m_Transitions:
|
|
||||||
- {fileID: 1101473625656561818}
|
|
||||||
m_StateMachineBehaviours:
|
|
||||||
- {fileID: 114101577822421078}
|
|
||||||
- {fileID: 114304692954732270}
|
|
||||||
- {fileID: 114263588767966834}
|
|
||||||
m_Position: {x: 50, y: 50, z: 0}
|
|
||||||
m_IKOnFeet: 1
|
|
||||||
m_WriteDefaultValues: 1
|
|
||||||
m_Mirror: 0
|
|
||||||
m_SpeedParameterActive: 0
|
|
||||||
m_MirrorParameterActive: 0
|
|
||||||
m_CycleOffsetParameterActive: 0
|
|
||||||
m_TimeParameterActive: 0
|
|
||||||
m_Motion: {fileID: 7400064, guid: a9e228972999b0d46a21e30edf97d812, type: 3}
|
|
||||||
m_Tag:
|
|
||||||
m_SpeedParameter:
|
|
||||||
m_MirrorParameter:
|
|
||||||
m_CycleOffsetParameter:
|
|
||||||
m_TimeParameter:
|
|
||||||
--- !u!1102 &1102186440903726776
|
--- !u!1102 &1102186440903726776
|
||||||
AnimatorState:
|
AnimatorState:
|
||||||
serializedVersion: 6
|
serializedVersion: 6
|
||||||
@@ -29810,37 +29520,6 @@ AnimatorState:
|
|||||||
m_MirrorParameter:
|
m_MirrorParameter:
|
||||||
m_CycleOffsetParameter:
|
m_CycleOffsetParameter:
|
||||||
m_TimeParameter:
|
m_TimeParameter:
|
||||||
--- !u!1102 &1102466317250516052
|
|
||||||
AnimatorState:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 1
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_Name: A
|
|
||||||
m_Speed: 1.3
|
|
||||||
m_CycleOffset: 0
|
|
||||||
m_Transitions:
|
|
||||||
- {fileID: 1101963861138605418}
|
|
||||||
- {fileID: 1101255493625229458}
|
|
||||||
m_StateMachineBehaviours:
|
|
||||||
- {fileID: 114825370114345668}
|
|
||||||
- {fileID: 114405241802589726}
|
|
||||||
- {fileID: 114667135945300734}
|
|
||||||
m_Position: {x: 50, y: 50, z: 0}
|
|
||||||
m_IKOnFeet: 1
|
|
||||||
m_WriteDefaultValues: 1
|
|
||||||
m_Mirror: 0
|
|
||||||
m_SpeedParameterActive: 0
|
|
||||||
m_MirrorParameterActive: 0
|
|
||||||
m_CycleOffsetParameterActive: 0
|
|
||||||
m_TimeParameterActive: 0
|
|
||||||
m_Motion: {fileID: 7400008, guid: a9e228972999b0d46a21e30edf97d812, type: 3}
|
|
||||||
m_Tag:
|
|
||||||
m_SpeedParameter:
|
|
||||||
m_MirrorParameter:
|
|
||||||
m_CycleOffsetParameter:
|
|
||||||
m_TimeParameter:
|
|
||||||
--- !u!1102 &1102473272169605230
|
--- !u!1102 &1102473272169605230
|
||||||
AnimatorState:
|
AnimatorState:
|
||||||
serializedVersion: 6
|
serializedVersion: 6
|
||||||
@@ -31605,37 +31284,6 @@ AnimatorState:
|
|||||||
m_MirrorParameter:
|
m_MirrorParameter:
|
||||||
m_CycleOffsetParameter:
|
m_CycleOffsetParameter:
|
||||||
m_TimeParameter:
|
m_TimeParameter:
|
||||||
--- !u!1102 &1102861933717182418
|
|
||||||
AnimatorState:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 1
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_Name: B
|
|
||||||
m_Speed: 1.4
|
|
||||||
m_CycleOffset: 0
|
|
||||||
m_Transitions:
|
|
||||||
- {fileID: 1101262937642278562}
|
|
||||||
- {fileID: 1101559597476362148}
|
|
||||||
m_StateMachineBehaviours:
|
|
||||||
- {fileID: 114030386879188540}
|
|
||||||
- {fileID: 114312089054784788}
|
|
||||||
- {fileID: 114756031459307912}
|
|
||||||
m_Position: {x: 50, y: 50, z: 0}
|
|
||||||
m_IKOnFeet: 1
|
|
||||||
m_WriteDefaultValues: 1
|
|
||||||
m_Mirror: 0
|
|
||||||
m_SpeedParameterActive: 0
|
|
||||||
m_MirrorParameterActive: 0
|
|
||||||
m_CycleOffsetParameterActive: 0
|
|
||||||
m_TimeParameterActive: 0
|
|
||||||
m_Motion: {fileID: 7400002, guid: a9e228972999b0d46a21e30edf97d812, type: 3}
|
|
||||||
m_Tag:
|
|
||||||
m_SpeedParameter:
|
|
||||||
m_MirrorParameter:
|
|
||||||
m_CycleOffsetParameter:
|
|
||||||
m_TimeParameter:
|
|
||||||
--- !u!1102 &1102866145726083920
|
--- !u!1102 &1102866145726083920
|
||||||
AnimatorState:
|
AnimatorState:
|
||||||
serializedVersion: 6
|
serializedVersion: 6
|
||||||
@@ -33937,14 +33585,8 @@ AnimatorStateMachine:
|
|||||||
m_Name: SwordAttack
|
m_Name: SwordAttack
|
||||||
m_ChildStates:
|
m_ChildStates:
|
||||||
- serializedVersion: 1
|
- serializedVersion: 1
|
||||||
m_State: {fileID: 1102466317250516052}
|
m_State: {fileID: -6212810689603984707}
|
||||||
m_Position: {x: 240, y: 120, z: 0}
|
m_Position: {x: 280, y: 130, z: 0}
|
||||||
- serializedVersion: 1
|
|
||||||
m_State: {fileID: 1102861933717182418}
|
|
||||||
m_Position: {x: 240, y: 50, z: 0}
|
|
||||||
- serializedVersion: 1
|
|
||||||
m_State: {fileID: 1102186001672383516}
|
|
||||||
m_Position: {x: 240, y: -20, z: 0}
|
|
||||||
m_ChildStateMachines: []
|
m_ChildStateMachines: []
|
||||||
m_AnyStateTransitions: []
|
m_AnyStateTransitions: []
|
||||||
m_EntryTransitions: []
|
m_EntryTransitions: []
|
||||||
@@ -33954,7 +33596,7 @@ AnimatorStateMachine:
|
|||||||
m_EntryPosition: {x: 50, y: 120, z: 0}
|
m_EntryPosition: {x: 50, y: 120, z: 0}
|
||||||
m_ExitPosition: {x: 528, y: 60, z: 0}
|
m_ExitPosition: {x: 528, y: 60, z: 0}
|
||||||
m_ParentStateMachinePosition: {x: 504, y: -36, z: 0}
|
m_ParentStateMachinePosition: {x: 504, y: -36, z: 0}
|
||||||
m_DefaultState: {fileID: 1102466317250516052}
|
m_DefaultState: {fileID: -6212810689603984707}
|
||||||
--- !u!1107 &1107517961391708756
|
--- !u!1107 &1107517961391708756
|
||||||
AnimatorStateMachine:
|
AnimatorStateMachine:
|
||||||
serializedVersion: 6
|
serializedVersion: 6
|
||||||
@@ -34993,7 +34635,7 @@ AnimatorStateMachine:
|
|||||||
m_ChildStateMachines:
|
m_ChildStateMachines:
|
||||||
- serializedVersion: 1
|
- serializedVersion: 1
|
||||||
m_StateMachine: {fileID: 1107736847571817844}
|
m_StateMachine: {fileID: 1107736847571817844}
|
||||||
m_Position: {x: 540, y: 192, z: 0}
|
m_Position: {x: 540, y: 190, z: 0}
|
||||||
- serializedVersion: 1
|
- serializedVersion: 1
|
||||||
m_StateMachine: {fileID: 1107135120639222350}
|
m_StateMachine: {fileID: 1107135120639222350}
|
||||||
m_Position: {x: 324, y: 132, z: 0}
|
m_Position: {x: 324, y: 132, z: 0}
|
||||||
@@ -37423,3 +37065,103 @@ AnimatorTransition:
|
|||||||
m_Mute: 0
|
m_Mute: 0
|
||||||
m_IsExit: 1
|
m_IsExit: 1
|
||||||
serializedVersion: 1
|
serializedVersion: 1
|
||||||
|
--- !u!1101 &4661024869372733565
|
||||||
|
AnimatorStateTransition:
|
||||||
|
m_ObjectHideFlags: 1
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name:
|
||||||
|
m_Conditions: []
|
||||||
|
m_DstStateMachine: {fileID: 0}
|
||||||
|
m_DstState: {fileID: 0}
|
||||||
|
m_Solo: 0
|
||||||
|
m_Mute: 0
|
||||||
|
m_IsExit: 1
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TransitionDuration: 0.25
|
||||||
|
m_TransitionOffset: 0
|
||||||
|
m_ExitTime: 0.8840206
|
||||||
|
m_HasExitTime: 1
|
||||||
|
m_HasFixedDuration: 1
|
||||||
|
m_InterruptionSource: 0
|
||||||
|
m_OrderedInterruption: 1
|
||||||
|
m_CanTransitionToSelf: 1
|
||||||
|
--- !u!114 &6184924150879439133
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 1
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: f9058122f6ec699438581f28f117350d, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
startDamage: 0.05
|
||||||
|
endDamage: 0.9
|
||||||
|
damageMultiplier: 1
|
||||||
|
recoilID: 1
|
||||||
|
reactionID: 1
|
||||||
|
meleeAttackType: 1
|
||||||
|
damageType:
|
||||||
|
bodyParts:
|
||||||
|
- RightLowerArm
|
||||||
|
ignoreDefense: 0
|
||||||
|
activeRagdoll: 0
|
||||||
|
senselessTime: 2
|
||||||
|
resetAttackTrigger: 0
|
||||||
|
resetTriggerBeforeTime: 0.5
|
||||||
|
useAttackTimeScale: 0
|
||||||
|
slowMoActivationDistance: 3
|
||||||
|
lowHealthTh: 10
|
||||||
|
attackTimeScale: 0.2
|
||||||
|
attackTimeScaleStart: -1
|
||||||
|
attackTimeScaleEnd: -1
|
||||||
|
rotatePlayerTowardsTarget: 0
|
||||||
|
rotationActivationAngle: 45
|
||||||
|
debug: 0
|
||||||
|
--- !u!114 &6394280332537993716
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 1
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: ae6dcf6552bd02645a9ceb894d7a6cfa, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
audioSource: {fileID: 106114, guid: dfea19d1d34dd174d87195f78cb44ae7, type: 3}
|
||||||
|
sounds:
|
||||||
|
- {fileID: 8300000, guid: 60fdfa301881bae48ae59759cc83b842, type: 3}
|
||||||
|
- {fileID: 8300000, guid: f82a7d93926f978479349ce3a9e025f6, type: 3}
|
||||||
|
- {fileID: 8300000, guid: cf35a39ed3f005d49bf846fdd9eee7a0, type: 3}
|
||||||
|
- {fileID: 8300000, guid: 08b5a5b778d6952438c6b3bedaa1e6af, type: 3}
|
||||||
|
triggerTime: 0
|
||||||
|
--- !u!114 &9213551054618683998
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 1
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 5f3b04f29aa5b134b99e94c78b296dcf, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
stateInfos: []
|
||||||
|
debug: 0
|
||||||
|
tags:
|
||||||
|
- tagName: Attack
|
||||||
|
tagType: 3
|
||||||
|
normalizedTime: {x: 0.1, y: 0.8}
|
||||||
|
- tagName: LockRotation
|
||||||
|
tagType: 0
|
||||||
|
normalizedTime: {x: 0.1, y: 0.7}
|
||||||
|
- tagName: LockMovement
|
||||||
|
tagType: 1
|
||||||
|
normalizedTime: {x: 0, y: 0.7}
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user