summaryrefslogtreecommitdiff
path: root/ActiveRagdoll/Assets/TABG/Scripts/Data
diff options
context:
space:
mode:
Diffstat (limited to 'ActiveRagdoll/Assets/TABG/Scripts/Data')
-rw-r--r--ActiveRagdoll/Assets/TABG/Scripts/Data/AnimationHandler.cs8
-rw-r--r--ActiveRagdoll/Assets/TABG/Scripts/Data/CharacterGearHandler.cs10
-rw-r--r--ActiveRagdoll/Assets/TABG/Scripts/Data/Gravity.cs2
-rw-r--r--ActiveRagdoll/Assets/TABG/Scripts/Data/MovementDataHandler.cs2
-rw-r--r--ActiveRagdoll/Assets/TABG/Scripts/Data/RiggingDataBase.cs56
-rw-r--r--ActiveRagdoll/Assets/TABG/Scripts/Data/RiggingDataBase.cs.meta11
-rw-r--r--ActiveRagdoll/Assets/TABG/Scripts/Data/RigidbodyHolder.cs11
-rw-r--r--ActiveRagdoll/Assets/TABG/Scripts/Data/SetRigidbodySettings.cs2
-rw-r--r--ActiveRagdoll/Assets/TABG/Scripts/Data/StandingDataHandler.cs60
-rw-r--r--ActiveRagdoll/Assets/TABG/Scripts/Data/StepHandler.cs2
-rw-r--r--ActiveRagdoll/Assets/TABG/Scripts/Data/Strength.cs15
11 files changed, 141 insertions, 38 deletions
diff --git a/ActiveRagdoll/Assets/TABG/Scripts/Data/AnimationHandler.cs b/ActiveRagdoll/Assets/TABG/Scripts/Data/AnimationHandler.cs
index bc20e7c..2d051bf 100644
--- a/ActiveRagdoll/Assets/TABG/Scripts/Data/AnimationHandler.cs
+++ b/ActiveRagdoll/Assets/TABG/Scripts/Data/AnimationHandler.cs
@@ -5,12 +5,18 @@ using UnityEngine;
namespace Rigging.Data
{
- public class AnimationHandler : MonoBehaviour
+ public class AnimationHandler : RiggingDataBase
{
+ protected override void OnStart()
+ {
+ base.OnStart();
+ }
+
+
}
}
diff --git a/ActiveRagdoll/Assets/TABG/Scripts/Data/CharacterGearHandler.cs b/ActiveRagdoll/Assets/TABG/Scripts/Data/CharacterGearHandler.cs
index 7490043..95ef268 100644
--- a/ActiveRagdoll/Assets/TABG/Scripts/Data/CharacterGearHandler.cs
+++ b/ActiveRagdoll/Assets/TABG/Scripts/Data/CharacterGearHandler.cs
@@ -5,19 +5,11 @@ using UnityEngine;
namespace Rigging.Data
{
- public class CharacterGearHandler : MonoBehaviour
+ public class CharacterGearHandler : RiggingDataBase
{
- // Start is called before the first frame update
- void Start()
- {
- }
- // Update is called once per frame
- void Update()
- {
- }
}
} \ No newline at end of file
diff --git a/ActiveRagdoll/Assets/TABG/Scripts/Data/Gravity.cs b/ActiveRagdoll/Assets/TABG/Scripts/Data/Gravity.cs
index f087185..2e24f81 100644
--- a/ActiveRagdoll/Assets/TABG/Scripts/Data/Gravity.cs
+++ b/ActiveRagdoll/Assets/TABG/Scripts/Data/Gravity.cs
@@ -5,7 +5,7 @@ using UnityEngine;
namespace Rigging.Data
{
- public class Gravity : MonoBehaviour
+ public class Gravity : RiggingDataBase
{
// Start is called before the first frame update
void Start()
diff --git a/ActiveRagdoll/Assets/TABG/Scripts/Data/MovementDataHandler.cs b/ActiveRagdoll/Assets/TABG/Scripts/Data/MovementDataHandler.cs
index ae3eb00..9a87817 100644
--- a/ActiveRagdoll/Assets/TABG/Scripts/Data/MovementDataHandler.cs
+++ b/ActiveRagdoll/Assets/TABG/Scripts/Data/MovementDataHandler.cs
@@ -4,7 +4,7 @@ using UnityEngine;
namespace Rigging.Data
{
- public class MovementDataHandler : MonoBehaviour
+ public class MovementDataHandler : RiggingDataBase
{
// Start is called before the first frame update
void Start()
diff --git a/ActiveRagdoll/Assets/TABG/Scripts/Data/RiggingDataBase.cs b/ActiveRagdoll/Assets/TABG/Scripts/Data/RiggingDataBase.cs
new file mode 100644
index 0000000..f304d5d
--- /dev/null
+++ b/ActiveRagdoll/Assets/TABG/Scripts/Data/RiggingDataBase.cs
@@ -0,0 +1,56 @@
+using UnityEngine;
+
+namespace Rigging.Data
+{
+
+ public class RiggingDataBase : MonoBehaviour
+ {
+
+ protected Player player;
+
+ private void Awake()
+ {
+ player = GetComponentInParent<Player>();
+ OnAwake();
+ }
+
+ private void Update()
+ {
+ OnUpdate();
+ }
+
+ private void FixedUpdate()
+ {
+ OnFixedUpdate();
+ }
+
+ private void Start()
+ {
+ OnStart();
+ }
+
+ private void LateUpdate()
+ {
+ OnLateUpdate();
+ }
+
+ protected virtual void OnAwake()
+ {
+ }
+ protected virtual void OnUpdate()
+ {
+ }
+ protected virtual void OnFixedUpdate()
+ {
+ }
+ protected virtual void OnStart()
+ {
+ }
+
+ protected virtual void OnLateUpdate()
+ {
+ }
+
+ }
+
+}
diff --git a/ActiveRagdoll/Assets/TABG/Scripts/Data/RiggingDataBase.cs.meta b/ActiveRagdoll/Assets/TABG/Scripts/Data/RiggingDataBase.cs.meta
new file mode 100644
index 0000000..3544c82
--- /dev/null
+++ b/ActiveRagdoll/Assets/TABG/Scripts/Data/RiggingDataBase.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 0a8f5353f5205904fb677c7c4c397460
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/ActiveRagdoll/Assets/TABG/Scripts/Data/RigidbodyHolder.cs b/ActiveRagdoll/Assets/TABG/Scripts/Data/RigidbodyHolder.cs
index ee3c350..eefa961 100644
--- a/ActiveRagdoll/Assets/TABG/Scripts/Data/RigidbodyHolder.cs
+++ b/ActiveRagdoll/Assets/TABG/Scripts/Data/RigidbodyHolder.cs
@@ -5,16 +5,15 @@ namespace Rigging.Data
{
// 保存所有14个骨骼
- public class RigidbodyHolder : MonoBehaviour
- {
- public Rigidbody[] allRigs;
+ public class RigidbodyHolder : RiggingDataBase
+ {
+ public Transform rootBone;
- //private WeaponHandler weapons;
+ public Rigidbody[] allRigs;
private void Start()
{
- allRigs = GetComponentsInChildren<Rigidbody>();
- //weapons = GetComponent<WeaponHandler>();
+ allRigs = rootBone.gameObject.GetComponentsInChildren<Rigidbody>();
}
private void Update()
diff --git a/ActiveRagdoll/Assets/TABG/Scripts/Data/SetRigidbodySettings.cs b/ActiveRagdoll/Assets/TABG/Scripts/Data/SetRigidbodySettings.cs
index cb4b4e6..0af06c9 100644
--- a/ActiveRagdoll/Assets/TABG/Scripts/Data/SetRigidbodySettings.cs
+++ b/ActiveRagdoll/Assets/TABG/Scripts/Data/SetRigidbodySettings.cs
@@ -5,7 +5,7 @@ using UnityEngine;
namespace Rigging.Data
{
- public class SetRigidbodySettings : MonoBehaviour
+ public class SetRigidbodySettings : RiggingDataBase
{
// Start is called before the first frame update
void Start()
diff --git a/ActiveRagdoll/Assets/TABG/Scripts/Data/StandingDataHandler.cs b/ActiveRagdoll/Assets/TABG/Scripts/Data/StandingDataHandler.cs
index 588f089..6a4aeb2 100644
--- a/ActiveRagdoll/Assets/TABG/Scripts/Data/StandingDataHandler.cs
+++ b/ActiveRagdoll/Assets/TABG/Scripts/Data/StandingDataHandler.cs
@@ -5,18 +5,64 @@ using UnityEngine;
namespace Rigging.Data
{
- public class StandingDataHandler : MonoBehaviour
+ public class StandingDataHandler : RiggingDataBase
{
- // Start is called before the first frame update
- void Start()
+
+ public float sinceGrounded; // 离地时间
+
+ public float sinceLanded;
+
+ public bool isGrounded;
+
+ public float distanceToGround = 1f;
+
+ private bool hasRecievedTouchedGround;
+
+ private MovementDataHandler movementData;
+
+ protected override void OnStart()
+ {
+ movementData = player.status.movementData;
+ }
+
+ protected override void OnFixedUpdate()
+ {
+ sinceGrounded += Time.fixedDeltaTime;
+ sinceLanded += Time.fixedDeltaTime;
+ if ((double)sinceGrounded > 0.1)
+ {
+ isGrounded = false;
+ }
+ }
+
+ protected override void OnLateUpdate()
+ {
+ hasRecievedTouchedGround = false;
+ }
+
+ public void TouchGround(float distance, Vector3 normal)
{
-
+ //if (sinceGrounded > 0.5f && (bool)wobbleShake)
+ //{
+ // wobbleShake.AddShake(-Vector3.up * 5f * Mathf.Pow(sinceGrounded, 1.5f), 0.8f);
+ //}
+ if (sinceGrounded > 0.5f)
+ {
+ Land(sinceGrounded);
+ }
+ sinceGrounded = 0f;
+ isGrounded = true;
+ if (distance > distanceToGround || !hasRecievedTouchedGround)
+ {
+ distanceToGround = distance;
+ }
+ hasRecievedTouchedGround = true;
+ //moveMentData.SetSlope(normal);
}
- // Update is called once per frame
- void Update()
+ private void Land(float landForce)
{
-
+ sinceLanded = 0f;
}
}
diff --git a/ActiveRagdoll/Assets/TABG/Scripts/Data/StepHandler.cs b/ActiveRagdoll/Assets/TABG/Scripts/Data/StepHandler.cs
index cf178c5..032cf3f 100644
--- a/ActiveRagdoll/Assets/TABG/Scripts/Data/StepHandler.cs
+++ b/ActiveRagdoll/Assets/TABG/Scripts/Data/StepHandler.cs
@@ -5,7 +5,7 @@ using UnityEngine;
namespace Rigging.Data
{
- public class StepHandler : MonoBehaviour
+ public class StepHandler : RiggingDataBase
{
// Start is called before the first frame update
void Start()
diff --git a/ActiveRagdoll/Assets/TABG/Scripts/Data/Strength.cs b/ActiveRagdoll/Assets/TABG/Scripts/Data/Strength.cs
index 6967953..b774c1a 100644
--- a/ActiveRagdoll/Assets/TABG/Scripts/Data/Strength.cs
+++ b/ActiveRagdoll/Assets/TABG/Scripts/Data/Strength.cs
@@ -5,19 +5,12 @@ using UnityEngine;
namespace Rigging.Data
{
- public class Strength : MonoBehaviour
+ public class Strength : RiggingDataBase
{
- // Start is called before the first frame update
- void Start()
- {
-
- }
- // Update is called once per frame
- void Update()
- {
-
- }
+
+
+
}
} \ No newline at end of file