summaryrefslogtreecommitdiff
path: root/marching/Assets/Scripts/Stats/CharacterStatsBase.cs
diff options
context:
space:
mode:
Diffstat (limited to 'marching/Assets/Scripts/Stats/CharacterStatsBase.cs')
-rw-r--r--marching/Assets/Scripts/Stats/CharacterStatsBase.cs54
1 files changed, 48 insertions, 6 deletions
diff --git a/marching/Assets/Scripts/Stats/CharacterStatsBase.cs b/marching/Assets/Scripts/Stats/CharacterStatsBase.cs
index a2e5fe2..b4869cb 100644
--- a/marching/Assets/Scripts/Stats/CharacterStatsBase.cs
+++ b/marching/Assets/Scripts/Stats/CharacterStatsBase.cs
@@ -1,16 +1,58 @@
using System.Collections;
using System.Collections.Generic;
+using System.Runtime.InteropServices;
using UnityEngine;
+using WK.Data;
-/// <summary>
-/// 角色基础属性
-/// </summary>
-public abstract class CharacterStatsBase
+namespace WK
{
+
+ [System.Runtime.InteropServices.StructLayout(LayoutKind.Explicit)]
+ public struct CharacterStatsValue
+ {
+ [System.Runtime.InteropServices.FieldOffset(0)]
+ public int i;
+ [System.Runtime.InteropServices.FieldOffset(0)]
+ public float f;
+ [System.Runtime.InteropServices.FieldOffset(0)]
+ public bool boolean;
+ [System.Runtime.InteropServices.FieldOffset(0)]
+ public char c;
+ [System.Runtime.InteropServices.FieldOffset(0)]
+ public Vector2 v2;
+ [System.Runtime.InteropServices.FieldOffset(0)]
+ public Vector3 v3;
+ [System.Runtime.InteropServices.FieldOffset(0)]
+ public Vector4 v4;
+ [System.Runtime.InteropServices.FieldOffset(0)]
+ public Color color;
+ }
+
+
/// <summary>
- /// 属性唯一标识
+ /// 运行时角色基础属性
/// </summary>
- public string UID;
+ public abstract class CharacterStats
+ {
+
+ /// <summary>
+ /// 表格数据
+ /// </summary>
+ public CharacterStatsMetadata metadata;
+
+ /// <summary>
+ /// 当前属性值
+ /// </summary>
+ public CharacterStatsValue value;
+
+ public string uid
+ {
+ get
+ {
+ return metadata.uid;
+ }
+ }
+ }
}