Removed fixed statement when accessing fixed fields.

This commit is contained in:
hondacrx
2019-12-07 11:45:28 -05:00
parent 9c83bc7e82
commit 56819e632d
6 changed files with 39 additions and 63 deletions
@@ -130,12 +130,9 @@ namespace Game.DataStorage
areaTriggerTemplate.Flags = (AreaTriggerFlags)templates.Read<uint>(2);
unsafe
{
fixed (float* b = areaTriggerTemplate.DefaultDatas.Data)
{
for (byte i = 0; i < SharedConst.MaxAreatriggerEntityData; ++i)
b[i] = templates.Read<float>(3 + i);
}
areaTriggerTemplate.DefaultDatas.Data[i] = templates.Read<float>(3 + i);
}
areaTriggerTemplate.ScriptId = Global.ObjectMgr.GetScriptId(templates.Read<string>(9));
@@ -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);
@@ -188,11 +188,7 @@ namespace Game.Entities
}
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;
}
case AreaTriggerTypes.Polygon:
@@ -540,13 +540,11 @@ namespace Game.Entities
stats.QuestItems.Add(item);
unsafe
{
fixed (int* ptr = Raw.data)
{
for (int i = 0; i < SharedConst.MaxGOData; i++)
stats.Data[i] = ptr[i];
}
stats.Data[i] = Raw.data[i];
}
stats.RequiredLevel = (uint)RequiredLevel;
QueryData.Stats = stats;
+6 -12
View File
@@ -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]);
}
}
+2 -8
View File
@@ -3655,12 +3655,9 @@ namespace Game
go.size = db2go.Scale;
unsafe
{
fixed (int* b = go.Raw.data)
{
for (byte x = 0; x < db2go.PropValue.Length; ++x)
b[x] = db2go.PropValue[x];
}
go.Raw.data[x] = db2go.PropValue[x];
}
go.RequiredLevel = 0;
@@ -3701,12 +3698,9 @@ namespace Game
got.size = result.Read<float>(7);
unsafe
{
fixed (int* b = got.Raw.data)
{
for (byte x = 0; x < SharedConst.MaxGOData; ++x)
b[x] = result.Read<int>(8 + x);
}
got.Raw.data[x] = result.Read<int>(8 + x);
}
got.RequiredLevel = result.Read<int>(42);