diff options
author | chai <chaifix@163.com> | 2020-11-09 20:50:17 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2020-11-09 20:50:17 +0800 |
commit | d21321d1e0d594ab247679cbfde86737aa24979c (patch) | |
tree | c22021ea204c25eda3a3eaa23b7aedd904eb00cc /Assets/Scripts | |
parent | 0fdb81ffb2af8c39cfd611f485d46f3341206832 (diff) |
*misc
Diffstat (limited to 'Assets/Scripts')
-rw-r--r-- | Assets/Scripts/ApplicationMain.cs | 7 | ||||
-rw-r--r-- | Assets/Scripts/Avatar/AbilitySystem.cs | 6 | ||||
-rw-r--r-- | Assets/Scripts/Avatar/Avatar.cs | 6 | ||||
-rw-r--r-- | Assets/Scripts/Avatar/HitDefination.cs | 6 | ||||
-rw-r--r-- | Assets/Scripts/Managers/BattleManager.cs | 12 | ||||
-rw-r--r-- | Assets/Scripts/Managers/BattleManager.cs.meta | 11 | ||||
-rw-r--r-- | Assets/Scripts/Managers/HitManager.cs | 3 | ||||
-rw-r--r-- | Assets/Scripts/Physics/PhysicsWorld.cs | 16 |
8 files changed, 44 insertions, 23 deletions
diff --git a/Assets/Scripts/ApplicationMain.cs b/Assets/Scripts/ApplicationMain.cs index 2c310e9b..e445e2ee 100644 --- a/Assets/Scripts/ApplicationMain.cs +++ b/Assets/Scripts/ApplicationMain.cs @@ -10,14 +10,12 @@ public class ApplicationMain : MonoBehaviour PhysicsWorld.Instance.Init();
PhysicsWorld.Instance.onUpdate += OnPhysicsUpdate; - PhysicsWorld.Instance.onAfterUpdate += OnAfterPhysicsUpdate; } void Update() { InputManager.Instance.Update();
AvatarManager.Instance.OnUpdate();
-
PhysicsWorld.Instance.Update();
} @@ -27,11 +25,6 @@ public class ApplicationMain : MonoBehaviour AvatarManager.Instance.OnPhysicsUpdate();
}
- void OnAfterPhysicsUpdate()
- {
-
- }
-
private void OnDrawGizmos()
{
PhysicsWorld.Instance.DrawGizmos();
diff --git a/Assets/Scripts/Avatar/AbilitySystem.cs b/Assets/Scripts/Avatar/AbilitySystem.cs index 9d289884..5f6e9364 100644 --- a/Assets/Scripts/Avatar/AbilitySystem.cs +++ b/Assets/Scripts/Avatar/AbilitySystem.cs @@ -76,12 +76,14 @@ public class AbilitySystem public void OnHit(HitInfo info)
{
-
+ if (m_Currrent != null)
+ m_Currrent.OnHit(info);
} public void OnHurt(HurtInfo info)
{
- + if (m_Currrent != null)
+ m_Currrent.OnHurt(info); } public void SwitchToAbility(AbilityBase targetAbility) diff --git a/Assets/Scripts/Avatar/Avatar.cs b/Assets/Scripts/Avatar/Avatar.cs index dc6c7858..03cceccb 100644 --- a/Assets/Scripts/Avatar/Avatar.cs +++ b/Assets/Scripts/Avatar/Avatar.cs @@ -99,12 +99,14 @@ public class Avatar : MonoBehaviour, IInteractable public virtual void OnHit(HitInfo hitInfo)
{
- Debug.Log("Hit");
+ //Debug.Log("Hit");
+ m_AbilitySystem.OnHit(hitInfo);
}
public virtual void OnHurt(HurtInfo hurtInfo)
{
- Debug.Log("Hurt");
+ //Debug.Log("Hurt");
+ m_AbilitySystem.OnHurt(hurtInfo);
}
}
diff --git a/Assets/Scripts/Avatar/HitDefination.cs b/Assets/Scripts/Avatar/HitDefination.cs index 96ceaf00..22a78325 100644 --- a/Assets/Scripts/Avatar/HitDefination.cs +++ b/Assets/Scripts/Avatar/HitDefination.cs @@ -2,7 +2,9 @@ using System.Collections.Generic; using UnityEngine; -// 一个hit的效果,如果一个attack有多个hit,需要定义多个HitDef +/// <summary>
+/// 一个hit的效果,如果一个attack有多个hit,需要定义多个HitDef
+/// </summary> public class HitDefination { public float start = 0f; @@ -13,6 +15,4 @@ public class HitDefination public Vector3 sparkPosition; // 特效位置(sparkHost为空时生效) public Quaternion sparkRotation; // 特效旋转 public Vector3 sparkScale = Vector3.one; // 特效缩放 - - }
\ No newline at end of file diff --git a/Assets/Scripts/Managers/BattleManager.cs b/Assets/Scripts/Managers/BattleManager.cs new file mode 100644 index 00000000..012862cd --- /dev/null +++ b/Assets/Scripts/Managers/BattleManager.cs @@ -0,0 +1,12 @@ +using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class BattleManager : Singleton<BattleManager>
+{
+ public void OnHitOccured()
+ {
+
+ }
+
+}
diff --git a/Assets/Scripts/Managers/BattleManager.cs.meta b/Assets/Scripts/Managers/BattleManager.cs.meta new file mode 100644 index 00000000..ce0cee41 --- /dev/null +++ b/Assets/Scripts/Managers/BattleManager.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1131367ba4b66ec4493a09bdeb570943 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Managers/HitManager.cs b/Assets/Scripts/Managers/HitManager.cs index dfa6530f..2b198788 100644 --- a/Assets/Scripts/Managers/HitManager.cs +++ b/Assets/Scripts/Managers/HitManager.cs @@ -102,6 +102,9 @@ public class HitManager : Singleton<HitManager> hurtInfo.hitDef = hitDef;
hurtbox.Host.OnHurt(hurtInfo);
+
+ // 场景处理特效等
+ BattleManager.Instance.OnHitOccured();
}
}
}
diff --git a/Assets/Scripts/Physics/PhysicsWorld.cs b/Assets/Scripts/Physics/PhysicsWorld.cs index ec3b0ac8..7b7787d4 100644 --- a/Assets/Scripts/Physics/PhysicsWorld.cs +++ b/Assets/Scripts/Physics/PhysicsWorld.cs @@ -35,8 +35,8 @@ public class PhysicsWorld : Singleton<PhysicsWorld> {
public delegate void Callback();
+ public Callback onBeforeUpdate;
public Callback onUpdate;
- public Callback onAfterUpdate;
private int m_UpdateRate = 60;
// 重力加速度
@@ -112,28 +112,26 @@ public class PhysicsWorld : Singleton<PhysicsWorld> }
/// <summary>
- /// 物理系统已稳定的逻辑帧率执行
+ /// 物理系统以稳定的逻辑帧率执行
/// </summary>
public void Update()
{
- BeforeUpdate();
float preTime = m_TimeCount;
m_TimeCount = Time.time;
float deltaTime = m_TimeCount - preTime;
while (deltaTime > 1f / m_UpdateRate)
{
+ BeforeTick();
+ onBeforeUpdate?.Invoke();
Tick();
- if(onUpdate != null)
- onUpdate();
+ onUpdate?.Invoke();
deltaTime -= 1f / m_UpdateRate;
}
m_TimeCount -= deltaTime;
- if(onAfterUpdate != null)
- onAfterUpdate();
}
// 更新之前
- private void BeforeUpdate()
+ private void BeforeTick()
{
m_CollisionInfo.Clear();
}
@@ -238,7 +236,7 @@ public class PhysicsWorld : Singleton<PhysicsWorld> }
/// <summary>
- /// 处理有物体的动力学运动
+ /// 处理动力学
/// </summary>
/// <param name="prim"></param>
/// <param name="deltaTime"></param>
|