Removed fixed statement when accessing fixed fields.
This commit is contained in:
@@ -131,11 +131,8 @@ namespace Game.DataStorage
|
|||||||
|
|
||||||
unsafe
|
unsafe
|
||||||
{
|
{
|
||||||
fixed (float* b = areaTriggerTemplate.DefaultDatas.Data)
|
for (byte i = 0; i < SharedConst.MaxAreatriggerEntityData; ++i)
|
||||||
{
|
areaTriggerTemplate.DefaultDatas.Data[i] = templates.Read<float>(3 + i);
|
||||||
for (byte i = 0; i < SharedConst.MaxAreatriggerEntityData; ++i)
|
|
||||||
b[i] = templates.Read<float>(3 + i);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
areaTriggerTemplate.ScriptId = Global.ObjectMgr.GetScriptId(templates.Read<string>(9));
|
areaTriggerTemplate.ScriptId = Global.ObjectMgr.GetScriptId(templates.Read<string>(9));
|
||||||
|
|||||||
@@ -314,12 +314,9 @@ namespace Game.Entities
|
|||||||
|
|
||||||
unsafe
|
unsafe
|
||||||
{
|
{
|
||||||
fixed (float* ptr = GetTemplate().BoxDatas.Extents)
|
extentsX = GetTemplate().BoxDatas.Extents[0];
|
||||||
{
|
extentsY = GetTemplate().BoxDatas.Extents[1];
|
||||||
extentsX = ptr[0];
|
extentsZ = GetTemplate().BoxDatas.Extents[2];
|
||||||
extentsY = ptr[1];
|
|
||||||
extentsZ = ptr[2];
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var check = new AnyUnitInObjectRangeCheck(this, GetTemplate().MaxSearchRadius, false);
|
var check = new AnyUnitInObjectRangeCheck(this, GetTemplate().MaxSearchRadius, false);
|
||||||
|
|||||||
@@ -182,39 +182,35 @@ namespace Game.Entities
|
|||||||
switch (TriggerType)
|
switch (TriggerType)
|
||||||
{
|
{
|
||||||
case AreaTriggerTypes.Sphere:
|
case AreaTriggerTypes.Sphere:
|
||||||
{
|
{
|
||||||
MaxSearchRadius = Math.Max(SphereDatas.Radius, SphereDatas.RadiusTarget);
|
MaxSearchRadius = Math.Max(SphereDatas.Radius, SphereDatas.RadiusTarget);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case AreaTriggerTypes.Box:
|
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:
|
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)
|
foreach (Vector2 vertice in PolygonVertices)
|
||||||
MaxSearchRadius = pointDist;
|
{
|
||||||
|
float pointDist = vertice.GetLength();
|
||||||
|
|
||||||
|
if (pointDist > MaxSearchRadius)
|
||||||
|
MaxSearchRadius = pointDist;
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case AreaTriggerTypes.Cylinder:
|
case AreaTriggerTypes.Cylinder:
|
||||||
{
|
{
|
||||||
MaxSearchRadius = CylinderDatas.Radius;
|
MaxSearchRadius = CylinderDatas.Radius;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -541,12 +541,10 @@ namespace Game.Entities
|
|||||||
|
|
||||||
unsafe
|
unsafe
|
||||||
{
|
{
|
||||||
fixed (int* ptr = Raw.data)
|
for (int i = 0; i < SharedConst.MaxGOData; i++)
|
||||||
{
|
stats.Data[i] = Raw.data[i];
|
||||||
for (int i = 0; i < SharedConst.MaxGOData; i++)
|
|
||||||
stats.Data[i] = ptr[i];
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
stats.RequiredLevel = (uint)RequiredLevel;
|
stats.RequiredLevel = (uint)RequiredLevel;
|
||||||
|
|
||||||
QueryData.Stats = stats;
|
QueryData.Stats = stats;
|
||||||
|
|||||||
@@ -509,19 +509,13 @@ namespace Game.Entities
|
|||||||
{
|
{
|
||||||
unsafe
|
unsafe
|
||||||
{
|
{
|
||||||
fixed (float* ptr = areaTriggerTemplate.BoxDatas.Extents)
|
data.WriteFloat(areaTriggerTemplate.BoxDatas.Extents[0]);
|
||||||
{
|
data.WriteFloat(areaTriggerTemplate.BoxDatas.Extents[1]);
|
||||||
data.WriteFloat(ptr[0]);
|
data.WriteFloat(areaTriggerTemplate.BoxDatas.Extents[2]);
|
||||||
data.WriteFloat(ptr[1]);
|
|
||||||
data.WriteFloat(ptr[2]);
|
|
||||||
}
|
|
||||||
|
|
||||||
fixed (float* ptr = areaTriggerTemplate.BoxDatas.ExtentsTarget)
|
data.WriteFloat(areaTriggerTemplate.BoxDatas.ExtentsTarget[0]);
|
||||||
{
|
data.WriteFloat(areaTriggerTemplate.BoxDatas.ExtentsTarget[1]);
|
||||||
data.WriteFloat(ptr[0]);
|
data.WriteFloat(areaTriggerTemplate.BoxDatas.ExtentsTarget[2]);
|
||||||
data.WriteFloat(ptr[1]);
|
|
||||||
data.WriteFloat(ptr[2]);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -3656,11 +3656,8 @@ namespace Game
|
|||||||
|
|
||||||
unsafe
|
unsafe
|
||||||
{
|
{
|
||||||
fixed (int* b = go.Raw.data)
|
for (byte x = 0; x < db2go.PropValue.Length; ++x)
|
||||||
{
|
go.Raw.data[x] = db2go.PropValue[x];
|
||||||
for (byte x = 0; x < db2go.PropValue.Length; ++x)
|
|
||||||
b[x] = db2go.PropValue[x];
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
go.RequiredLevel = 0;
|
go.RequiredLevel = 0;
|
||||||
@@ -3702,11 +3699,8 @@ namespace Game
|
|||||||
|
|
||||||
unsafe
|
unsafe
|
||||||
{
|
{
|
||||||
fixed (int* b = got.Raw.data)
|
for (byte x = 0; x < SharedConst.MaxGOData; ++x)
|
||||||
{
|
got.Raw.data[x] = result.Read<int>(8 + x);
|
||||||
for (byte x = 0; x < SharedConst.MaxGOData; ++x)
|
|
||||||
b[x] = result.Read<int>(8 + x);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
got.RequiredLevel = result.Read<int>(42);
|
got.RequiredLevel = result.Read<int>(42);
|
||||||
|
|||||||
Reference in New Issue
Block a user