From 56819e632d14104175effe3b54f752313d481cdc Mon Sep 17 00:00:00 2001 From: hondacrx Date: Sat, 7 Dec 2019 11:45:28 -0500 Subject: [PATCH] Removed fixed statement when accessing fixed fields. --- .../DataStorage/AreaTriggerDataStorage.cs | 7 +-- .../Game/Entities/AreaTrigger/AreaTrigger.cs | 9 ++-- .../AreaTrigger/AreaTriggerTemplate.cs | 46 +++++++++---------- .../Entities/GameObject/GameObjectData.cs | 8 ++-- Source/Game/Entities/Object/WorldObject.cs | 18 +++----- Source/Game/Globals/ObjectManager.cs | 14 ++---- 6 files changed, 39 insertions(+), 63 deletions(-) diff --git a/Source/Game/DataStorage/AreaTriggerDataStorage.cs b/Source/Game/DataStorage/AreaTriggerDataStorage.cs index 07eef850c..d070b0836 100644 --- a/Source/Game/DataStorage/AreaTriggerDataStorage.cs +++ b/Source/Game/DataStorage/AreaTriggerDataStorage.cs @@ -131,11 +131,8 @@ namespace Game.DataStorage unsafe { - fixed (float* b = areaTriggerTemplate.DefaultDatas.Data) - { - for (byte i = 0; i < SharedConst.MaxAreatriggerEntityData; ++i) - b[i] = templates.Read(3 + i); - } + for (byte i = 0; i < SharedConst.MaxAreatriggerEntityData; ++i) + areaTriggerTemplate.DefaultDatas.Data[i] = templates.Read(3 + i); } areaTriggerTemplate.ScriptId = Global.ObjectMgr.GetScriptId(templates.Read(9)); diff --git a/Source/Game/Entities/AreaTrigger/AreaTrigger.cs b/Source/Game/Entities/AreaTrigger/AreaTrigger.cs index 51508eb09..d884f722a 100644 --- a/Source/Game/Entities/AreaTrigger/AreaTrigger.cs +++ b/Source/Game/Entities/AreaTrigger/AreaTrigger.cs @@ -314,12 +314,9 @@ namespace Game.Entities unsafe { - fixed (float* ptr = GetTemplate().BoxDatas.Extents) - { - extentsX = ptr[0]; - extentsY = ptr[1]; - extentsZ = ptr[2]; - } + extentsX = GetTemplate().BoxDatas.Extents[0]; + extentsY = GetTemplate().BoxDatas.Extents[1]; + extentsZ = GetTemplate().BoxDatas.Extents[2]; } var check = new AnyUnitInObjectRangeCheck(this, GetTemplate().MaxSearchRadius, false); diff --git a/Source/Game/Entities/AreaTrigger/AreaTriggerTemplate.cs b/Source/Game/Entities/AreaTrigger/AreaTriggerTemplate.cs index a62eacc24..ccdcb73cf 100644 --- a/Source/Game/Entities/AreaTrigger/AreaTriggerTemplate.cs +++ b/Source/Game/Entities/AreaTrigger/AreaTriggerTemplate.cs @@ -182,39 +182,35 @@ namespace Game.Entities switch (TriggerType) { case AreaTriggerTypes.Sphere: - { - MaxSearchRadius = Math.Max(SphereDatas.Radius, SphereDatas.RadiusTarget); - break; - } + { + MaxSearchRadius = Math.Max(SphereDatas.Radius, SphereDatas.RadiusTarget); + break; + } case AreaTriggerTypes.Box: - { - fixed (float* ptr = BoxDatas.Extents) { - MaxSearchRadius = (float) Math.Sqrt(ptr[0] * ptr[0] / 4 + ptr[1] * ptr[1] / 4); + MaxSearchRadius = (float)Math.Sqrt(BoxDatas.Extents[0] * BoxDatas.Extents[0] / 4 + BoxDatas.Extents[1] * BoxDatas.Extents[1] / 4); + break; } - - break; - } case AreaTriggerTypes.Polygon: - { - if (PolygonDatas.Height <= 0.0f) - PolygonDatas.Height = 1.0f; - - foreach (Vector2 vertice in PolygonVertices) { - float pointDist = vertice.GetLength(); + if (PolygonDatas.Height <= 0.0f) + PolygonDatas.Height = 1.0f; - if (pointDist > MaxSearchRadius) - MaxSearchRadius = pointDist; + foreach (Vector2 vertice in PolygonVertices) + { + float pointDist = vertice.GetLength(); + + if (pointDist > MaxSearchRadius) + MaxSearchRadius = pointDist; + } + + break; } - - break; - } case AreaTriggerTypes.Cylinder: - { - MaxSearchRadius = CylinderDatas.Radius; - break; - } + { + MaxSearchRadius = CylinderDatas.Radius; + break; + } default: break; } diff --git a/Source/Game/Entities/GameObject/GameObjectData.cs b/Source/Game/Entities/GameObject/GameObjectData.cs index d72bfc501..3250b1875 100644 --- a/Source/Game/Entities/GameObject/GameObjectData.cs +++ b/Source/Game/Entities/GameObject/GameObjectData.cs @@ -541,12 +541,10 @@ namespace Game.Entities unsafe { - fixed (int* ptr = Raw.data) - { - for (int i = 0; i < SharedConst.MaxGOData; i++) - stats.Data[i] = ptr[i]; - } + for (int i = 0; i < SharedConst.MaxGOData; i++) + stats.Data[i] = Raw.data[i]; } + stats.RequiredLevel = (uint)RequiredLevel; QueryData.Stats = stats; diff --git a/Source/Game/Entities/Object/WorldObject.cs b/Source/Game/Entities/Object/WorldObject.cs index a87e33cc8..0d8407114 100644 --- a/Source/Game/Entities/Object/WorldObject.cs +++ b/Source/Game/Entities/Object/WorldObject.cs @@ -509,19 +509,13 @@ namespace Game.Entities { unsafe { - fixed (float* ptr = areaTriggerTemplate.BoxDatas.Extents) - { - data.WriteFloat(ptr[0]); - data.WriteFloat(ptr[1]); - data.WriteFloat(ptr[2]); - } + data.WriteFloat(areaTriggerTemplate.BoxDatas.Extents[0]); + data.WriteFloat(areaTriggerTemplate.BoxDatas.Extents[1]); + data.WriteFloat(areaTriggerTemplate.BoxDatas.Extents[2]); - fixed (float* ptr = areaTriggerTemplate.BoxDatas.ExtentsTarget) - { - data.WriteFloat(ptr[0]); - data.WriteFloat(ptr[1]); - data.WriteFloat(ptr[2]); - } + data.WriteFloat(areaTriggerTemplate.BoxDatas.ExtentsTarget[0]); + data.WriteFloat(areaTriggerTemplate.BoxDatas.ExtentsTarget[1]); + data.WriteFloat(areaTriggerTemplate.BoxDatas.ExtentsTarget[2]); } } diff --git a/Source/Game/Globals/ObjectManager.cs b/Source/Game/Globals/ObjectManager.cs index 20afc0b9b..880f41ae7 100644 --- a/Source/Game/Globals/ObjectManager.cs +++ b/Source/Game/Globals/ObjectManager.cs @@ -3656,11 +3656,8 @@ namespace Game unsafe { - fixed (int* b = go.Raw.data) - { - for (byte x = 0; x < db2go.PropValue.Length; ++x) - b[x] = db2go.PropValue[x]; - } + for (byte x = 0; x < db2go.PropValue.Length; ++x) + go.Raw.data[x] = db2go.PropValue[x]; } go.RequiredLevel = 0; @@ -3702,11 +3699,8 @@ namespace Game unsafe { - fixed (int* b = got.Raw.data) - { - for (byte x = 0; x < SharedConst.MaxGOData; ++x) - b[x] = result.Read(8 + x); - } + for (byte x = 0; x < SharedConst.MaxGOData; ++x) + got.Raw.data[x] = result.Read(8 + x); } got.RequiredLevel = result.Read(42);