More cleanups, transports still not working. working on a fix.
This commit is contained in:
@@ -70,6 +70,9 @@ namespace Game.Chat
|
|||||||
if (type.IsEnum)
|
if (type.IsEnum)
|
||||||
type = type.GetEnumUnderlyingType();
|
type = type.GetEnumUnderlyingType();
|
||||||
|
|
||||||
|
if (type.IsGenericType && type.GetGenericTypeDefinition() == typeof(Nullable<>))
|
||||||
|
type = Nullable.GetUnderlyingType(type);
|
||||||
|
|
||||||
switch (Type.GetTypeCode(type))
|
switch (Type.GetTypeCode(type))
|
||||||
{
|
{
|
||||||
case TypeCode.SByte:
|
case TypeCode.SByte:
|
||||||
|
|||||||
@@ -6247,14 +6247,14 @@ namespace Game.Entities
|
|||||||
|
|
||||||
void UpdateVisibilityOf_helper<T>(List<ObjectGuid> s64, T target, List<Unit> v) where T : WorldObject
|
void UpdateVisibilityOf_helper<T>(List<ObjectGuid> s64, T target, List<Unit> v) where T : WorldObject
|
||||||
{
|
{
|
||||||
|
s64.Add(target.GetGUID());
|
||||||
|
|
||||||
switch (target.GetTypeId())
|
switch (target.GetTypeId())
|
||||||
{
|
{
|
||||||
case TypeId.Unit:
|
case TypeId.Unit:
|
||||||
s64.Add(target.GetGUID());
|
|
||||||
v.Add(target.ToCreature());
|
v.Add(target.ToCreature());
|
||||||
break;
|
break;
|
||||||
case TypeId.Player:
|
case TypeId.Player:
|
||||||
s64.Add(target.GetGUID());
|
|
||||||
v.Add(target.ToPlayer());
|
v.Add(target.ToPlayer());
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2310,7 +2310,7 @@ namespace Game.Entities
|
|||||||
|
|
||||||
WorldPacket buffer = new();
|
WorldPacket buffer = new();
|
||||||
|
|
||||||
UpdateMask mask = new(191);
|
UpdateMask mask = new(194);
|
||||||
m_unitData.AppendAllowedFieldsMaskForFlag(mask, flags);
|
m_unitData.AppendAllowedFieldsMaskForFlag(mask, flags);
|
||||||
m_unitData.WriteUpdate(buffer, mask, true, this, target);
|
m_unitData.WriteUpdate(buffer, mask, true, this, target);
|
||||||
|
|
||||||
|
|||||||
@@ -73,6 +73,7 @@ namespace Game.Maps
|
|||||||
TransportTemplate transport = new();
|
TransportTemplate transport = new();
|
||||||
|
|
||||||
GeneratePath(goInfo, transport);
|
GeneratePath(goInfo, transport);
|
||||||
|
_transportTemplates[entry] = transport;
|
||||||
|
|
||||||
++count;
|
++count;
|
||||||
} while (result.NextRow());
|
} while (result.NextRow());
|
||||||
@@ -161,10 +162,11 @@ namespace Game.Maps
|
|||||||
spawn.PhaseGroup = phaseGroupId;
|
spawn.PhaseGroup = phaseGroupId;
|
||||||
|
|
||||||
foreach (uint mapId in transportTemplate.MapIds)
|
foreach (uint mapId in transportTemplate.MapIds)
|
||||||
_transportsByMap[mapId].Add(spawn);
|
_transportsByMap.Add(mapId, spawn);
|
||||||
|
|
||||||
_transportSpawns[guid] = spawn;
|
_transportSpawns[guid] = spawn;
|
||||||
|
|
||||||
|
count++;
|
||||||
} while (result.NextRow());
|
} while (result.NextRow());
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -554,7 +556,7 @@ namespace Game.Maps
|
|||||||
var segmentIndex = 0;
|
var segmentIndex = 0;
|
||||||
double distanceMoved = 0.0;
|
double distanceMoved = 0.0;
|
||||||
bool isOnPause = false;
|
bool isOnPause = false;
|
||||||
for (segmentIndex = 0; segmentIndex < leg.Segments.Count; ++segmentIndex)
|
for (segmentIndex = 0; segmentIndex < leg.Segments.Count - 1; ++segmentIndex)
|
||||||
{
|
{
|
||||||
var segment = leg.Segments[segmentIndex];
|
var segment = leg.Segments[segmentIndex];
|
||||||
if (time < segment.SegmentEndArrivalTimestamp)
|
if (time < segment.SegmentEndArrivalTimestamp)
|
||||||
|
|||||||
@@ -270,7 +270,7 @@ namespace Game.Movement
|
|||||||
T length_ = t * (dynamic)Length();
|
T length_ = t * (dynamic)Length();
|
||||||
index = ComputeIndexInBounds(length_);
|
index = ComputeIndexInBounds(length_);
|
||||||
//ASSERT(index < index_hi);
|
//ASSERT(index < index_hi);
|
||||||
u = (length_ - Length(index)) / (float)Length(index, index + 1);
|
u = (float)(length_ - Length(index)) / (float)Length(index, index + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
int ComputeIndexInBounds(T length_)
|
int ComputeIndexInBounds(T length_)
|
||||||
|
|||||||
Reference in New Issue
Block a user