Skip to content

Commit 175424d

Browse files
committed
Core/Misc: Reduce differences between branches
1 parent 5b2106d commit 175424d

28 files changed

Lines changed: 1079 additions & 1071 deletions

File tree

src/common/Cryptography/Authentication/AuthCrypt.cpp renamed to src/common/Cryptography/Authentication/WorldPacketCrypt.cpp

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,18 +15,15 @@
1515
* with this program. If not, see <http://www.gnu.org/licenses/>.
1616
*/
1717

18-
#include "AuthCrypt.h"
19-
#include "BigNumber.h"
18+
#include "WorldPacketCrypt.h"
2019
#include "Errors.h"
2120
#include "HMAC.h"
2221

23-
#include <cstring>
24-
25-
AuthCrypt::AuthCrypt() :
26-
_initialized(false)
27-
{ }
22+
WorldPacketCrypt::WorldPacketCrypt() : _initialized(false)
23+
{
24+
}
2825

29-
void AuthCrypt::Init(SessionKey const& K)
26+
void WorldPacketCrypt::Init(SessionKey const& K)
3027
{
3128
uint8 ServerEncryptionKey[] = { 0xCC, 0x98, 0xAE, 0x04, 0xE8, 0x97, 0xEA, 0xCA, 0x12, 0xDD, 0xC0, 0x93, 0x42, 0x91, 0x53, 0x57 };
3229
_serverEncrypt.Init(Trinity::Crypto::HMAC_SHA1::GetDigestOf(ServerEncryptionKey, K));
@@ -41,13 +38,13 @@ void AuthCrypt::Init(SessionKey const& K)
4138
_initialized = true;
4239
}
4340

44-
void AuthCrypt::DecryptRecv(uint8 *data, size_t len)
41+
void WorldPacketCrypt::DecryptRecv(uint8 *data, size_t len)
4542
{
4643
ASSERT(_initialized);
4744
_clientDecrypt.UpdateData(data, len);
4845
}
4946

50-
void AuthCrypt::EncryptSend(uint8 *data, size_t len)
47+
void WorldPacketCrypt::EncryptSend(uint8 *data, size_t len)
5148
{
5249
ASSERT(_initialized);
5350
_serverEncrypt.UpdateData(data, len);

src/common/Cryptography/Authentication/AuthCrypt.h renamed to src/common/Cryptography/Authentication/WorldPacketCrypt.h

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -15,27 +15,27 @@
1515
* with this program. If not, see <http://www.gnu.org/licenses/>.
1616
*/
1717

18-
#ifndef _AUTHCRYPT_H
19-
#define _AUTHCRYPT_H
18+
#ifndef _WORLDPACKETCRYPT_H
19+
#define _WORLDPACKETCRYPT_H
2020

2121
#include "ARC4.h"
2222
#include "AuthDefines.h"
23-
#include <array>
2423

25-
class TC_COMMON_API AuthCrypt
24+
class TC_COMMON_API WorldPacketCrypt
2625
{
27-
public:
28-
AuthCrypt();
26+
public:
27+
WorldPacketCrypt();
2928

30-
void Init(SessionKey const& K);
31-
void DecryptRecv(uint8* data, size_t len);
32-
void EncryptSend(uint8* data, size_t len);
29+
void Init(SessionKey const& K);
30+
void DecryptRecv(uint8* data, size_t len);
31+
void EncryptSend(uint8* data, size_t len);
3332

34-
bool IsInitialized() const { return _initialized; }
33+
bool IsInitialized() const { return _initialized; }
3534

36-
private:
37-
Trinity::Crypto::ARC4 _clientDecrypt;
38-
Trinity::Crypto::ARC4 _serverEncrypt;
39-
bool _initialized;
35+
private:
36+
Trinity::Crypto::ARC4 _clientDecrypt;
37+
Trinity::Crypto::ARC4 _serverEncrypt;
38+
bool _initialized;
4039
};
41-
#endif
40+
41+
#endif // _WORLDPACKETCRYPT_H

src/common/DataStores/DBCFileLoader.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ bool DBCFileLoader::Load(char const* filename, char const* fmt)
8888
for (uint32 i = 1; i < fieldCount; ++i)
8989
{
9090
fieldsOffset[i] = fieldsOffset[i - 1];
91-
if (fmt[i - 1] == 'b' || fmt[i - 1] == 'X') // byte fields
91+
if (fmt[i - 1] == FT_BYTE || fmt[i - 1] == FT_NA_BYTE) // byte fields
9292
fieldsOffset[i] += sizeof(uint8);
9393
else // 4 byte fields (int32/float/strings)
9494
fieldsOffset[i] += sizeof(uint32);

src/common/DataStores/DBCFileLoader.h

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -24,17 +24,17 @@
2424

2525
enum DbcFieldFormat
2626
{
27-
FT_NA='x', //not used or unknown, 4 byte size
28-
FT_NA_BYTE='X', //not used or unknown, byte
29-
FT_STRING='s', //char*
30-
FT_FLOAT='f', //float
31-
FT_INT='i', //uint32
32-
FT_BYTE='b', //uint8
33-
FT_SORT='d', //sorted by this field, field is not included
34-
FT_IND='n', //the same, but parsed to data
35-
FT_LOGIC='l', //Logical (boolean)
36-
FT_SQL_PRESENT='p', //Used in sql format to mark column present in sql dbc
37-
FT_SQL_ABSENT='a' //Used in sql format to mark column absent in sql dbc
27+
FT_NA = 'x', //not used or unknown, 4 byte size
28+
FT_NA_BYTE = 'X', //not used or unknown, byte
29+
FT_STRING = 's', //char*
30+
FT_FLOAT = 'f', //float
31+
FT_INT = 'i', //uint32
32+
FT_BYTE = 'b', //uint8
33+
FT_SORT = 'd', //sorted by this field, field is not included
34+
FT_IND = 'n', //the same, but parsed to data
35+
FT_LOGIC = 'l', //Logical (boolean)
36+
FT_SQL_PRESENT = 'p', //Used in sql format to mark column present in sql dbc
37+
FT_SQL_ABSENT = 'a' //Used in sql format to mark column absent in sql dbc
3838
};
3939

4040
class TC_COMMON_API DBCFileLoader
@@ -51,21 +51,21 @@ class TC_COMMON_API DBCFileLoader
5151
float getFloat(size_t field) const
5252
{
5353
ASSERT(field < file.fieldCount);
54-
float val = *reinterpret_cast<float*>(offset+file.GetOffset(field));
54+
float val = *reinterpret_cast<float*>(offset + file.GetOffset(field));
5555
EndianConvert(val);
5656
return val;
5757
}
5858
uint32 getUInt(size_t field) const
5959
{
6060
ASSERT(field < file.fieldCount);
61-
uint32 val = *reinterpret_cast<uint32*>(offset+file.GetOffset(field));
61+
uint32 val = *reinterpret_cast<uint32*>(offset + file.GetOffset(field));
6262
EndianConvert(val);
6363
return val;
6464
}
6565
uint8 getUInt8(size_t field) const
6666
{
6767
ASSERT(field < file.fieldCount);
68-
return *reinterpret_cast<uint8*>(offset+file.GetOffset(field));
68+
return *reinterpret_cast<uint8*>(offset + file.GetOffset(field));
6969
}
7070

7171
const char *getString(size_t field) const
@@ -78,8 +78,8 @@ class TC_COMMON_API DBCFileLoader
7878

7979
private:
8080
Record(DBCFileLoader &file_, unsigned char *offset_): offset(offset_), file(file_) { }
81-
unsigned char *offset;
82-
DBCFileLoader &file;
81+
unsigned char* offset;
82+
DBCFileLoader& file;
8383

8484
friend class DBCFileLoader;
8585

src/server/game/DungeonFinding/LFGMgr.cpp

Lines changed: 28 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,7 @@ LFGDungeonData const* LFGMgr::GetLFGDungeon(uint32 id)
187187
return nullptr;
188188
}
189189

190-
void LFGMgr::LoadLFGDungeons(bool reload /* = false */)
190+
void LFGMgr::LoadLFGDungeons()
191191
{
192192
uint32 oldMSTime = getMSTime();
193193

@@ -223,10 +223,9 @@ void LFGMgr::LoadLFGDungeons(bool reload /* = false */)
223223
// Fill teleport locations from DB
224224
// 0 1 2 3 4
225225
QueryResult result = WorldDatabase.Query("SELECT dungeonId, position_x, position_y, position_z, orientation FROM lfg_dungeon_template");
226-
227226
if (!result)
228227
{
229-
TC_LOG_INFO("server.loading", ">> Loaded 0 lfg entrance positions. DB table `lfg_dungeon_template` is empty!");
228+
TC_LOG_INFO("server.loading", ">> Loaded 0 lfg dungeon templates. DB table `lfg_dungeon_template` is empty!");
230229
return;
231230
}
232231

@@ -243,17 +242,19 @@ void LFGMgr::LoadLFGDungeons(bool reload /* = false */)
243242
continue;
244243
}
245244

246-
LFGDungeonData& data = dungeonItr->second;
247-
data.x = fields[1].GetFloat();
248-
data.y = fields[2].GetFloat();
249-
data.z = fields[3].GetFloat();
250-
data.o = fields[4].GetFloat();
245+
LFGDungeonData& data = dungeonItr->second;
246+
data.x = fields[1].GetFloat();
247+
data.y = fields[2].GetFloat();
248+
data.z = fields[3].GetFloat();
249+
data.o = fields[4].GetFloat();
251250

252251
++count;
253252
}
254253
while (result->NextRow());
255254

256-
TC_LOG_INFO("server.loading", ">> Loaded {} lfg entrance positions in {} ms", count, GetMSTimeDiffToNow(oldMSTime));
255+
TC_LOG_INFO("server.loading", ">> Loaded {} lfg dungeon templates in {} ms", count, GetMSTimeDiffToNow(oldMSTime));
256+
257+
CachedDungeonMapStore.clear();
257258

258259
// Fill all other teleport coords from areatriggers
259260
for (LFGDungeonContainer::iterator itr = LfgDungeonStore.begin(); itr != LfgDungeonStore.end(); ++itr)
@@ -266,7 +267,7 @@ void LFGMgr::LoadLFGDungeons(bool reload /* = false */)
266267
AreaTriggerTeleport const* at = sObjectMgr->GetMapEntranceTrigger(dungeon.map);
267268
if (!at)
268269
{
269-
TC_LOG_ERROR("sql.sql", "Failed to load dungeon {}, cant find areatrigger for map {}", dungeon.name, dungeon.map);
270+
TC_LOG_ERROR("sql.sql", "Failed to load dungeon {} (Id: {}), cant find areatrigger for map {}", dungeon.name, dungeon.id, dungeon.map);
270271
continue;
271272
}
272273

@@ -281,11 +282,6 @@ void LFGMgr::LoadLFGDungeons(bool reload /* = false */)
281282
CachedDungeonMapStore[dungeon.group].insert(dungeon.id);
282283
CachedDungeonMapStore[0].insert(dungeon.id);
283284
}
284-
285-
if (reload)
286-
{
287-
CachedDungeonMapStore.clear();
288-
}
289285
}
290286

291287
LFGMgr* LFGMgr::instance()
@@ -1700,41 +1696,41 @@ LfgLockMap const LFGMgr::GetLockedDungeons(ObjectGuid guid)
17001696
if (!dungeon) // should never happen - We provide a list from sLFGDungeonStore
17011697
continue;
17021698

1703-
uint32 lockData = 0;
1699+
uint32 lockStatus = 0;
17041700
if (denyJoin)
1705-
lockData = LFG_LOCKSTATUS_RAID_LOCKED;
1701+
lockStatus = LFG_LOCKSTATUS_RAID_LOCKED;
17061702
else if (dungeon->expansion > expansion)
1707-
lockData = LFG_LOCKSTATUS_INSUFFICIENT_EXPANSION;
1703+
lockStatus = LFG_LOCKSTATUS_INSUFFICIENT_EXPANSION;
17081704
else if (DisableMgr::IsDisabledFor(DISABLE_TYPE_MAP, dungeon->map, player))
1709-
lockData = LFG_LOCKSTATUS_RAID_LOCKED;
1705+
lockStatus = LFG_LOCKSTATUS_RAID_LOCKED;
17101706
else if (DisableMgr::IsDisabledFor(DISABLE_TYPE_LFG_MAP, dungeon->map, player))
1711-
lockData = LFG_LOCKSTATUS_RAID_LOCKED;
1707+
lockStatus = LFG_LOCKSTATUS_RAID_LOCKED;
17121708
else if (dungeon->difficulty > DUNGEON_DIFFICULTY_NORMAL && player->GetBoundInstance(dungeon->map, Difficulty(dungeon->difficulty)))
1713-
lockData = LFG_LOCKSTATUS_RAID_LOCKED;
1709+
lockStatus = LFG_LOCKSTATUS_RAID_LOCKED;
17141710
else if (dungeon->minlevel[expansion] > level)
1715-
lockData = LFG_LOCKSTATUS_TOO_LOW_LEVEL;
1711+
lockStatus = LFG_LOCKSTATUS_TOO_LOW_LEVEL;
17161712
else if (dungeon->maxlevel[expansion] < level)
1717-
lockData = LFG_LOCKSTATUS_TOO_HIGH_LEVEL;
1713+
lockStatus = LFG_LOCKSTATUS_TOO_HIGH_LEVEL;
17181714
else if (dungeon->seasonal && !IsSeasonActive(dungeon->id))
1719-
lockData = LFG_LOCKSTATUS_NOT_IN_SEASON;
1715+
lockStatus = LFG_LOCKSTATUS_NOT_IN_SEASON;
17201716
else if (AccessRequirement const* ar = sObjectMgr->GetAccessRequirement(dungeon->map, Difficulty(dungeon->difficulty)))
17211717
{
17221718
if (ar->item_level && player->GetAverageItemLevel() < ar->item_level)
1723-
lockData = LFG_LOCKSTATUS_TOO_LOW_GEAR_SCORE;
1719+
lockStatus = LFG_LOCKSTATUS_TOO_LOW_GEAR_SCORE;
17241720
else if (ar->achievement && !player->HasAchieved(ar->achievement))
1725-
lockData = LFG_LOCKSTATUS_MISSING_ACHIEVEMENT;
1721+
lockStatus = LFG_LOCKSTATUS_MISSING_ACHIEVEMENT;
17261722
else if (player->GetTeam() == ALLIANCE && ar->quest_A && !player->GetQuestRewardStatus(ar->quest_A))
1727-
lockData = LFG_LOCKSTATUS_QUEST_NOT_COMPLETED;
1723+
lockStatus = LFG_LOCKSTATUS_QUEST_NOT_COMPLETED;
17281724
else if (player->GetTeam() == HORDE && ar->quest_H && !player->GetQuestRewardStatus(ar->quest_H))
1729-
lockData = LFG_LOCKSTATUS_QUEST_NOT_COMPLETED;
1725+
lockStatus = LFG_LOCKSTATUS_QUEST_NOT_COMPLETED;
17301726
else
17311727
if (ar->item)
17321728
{
17331729
if (!player->HasItemCount(ar->item) && (!ar->item2 || !player->HasItemCount(ar->item2)))
1734-
lockData = LFG_LOCKSTATUS_MISSING_ITEM;
1730+
lockStatus = LFG_LOCKSTATUS_MISSING_ITEM;
17351731
}
17361732
else if (ar->item2 && !player->HasItemCount(ar->item2))
1737-
lockData = LFG_LOCKSTATUS_MISSING_ITEM;
1733+
lockStatus = LFG_LOCKSTATUS_MISSING_ITEM;
17381734
}
17391735

17401736
/* @todo VoA closed if WG is not under team control (LFG_LOCKSTATUS_RAID_LOCKED)
@@ -1743,8 +1739,8 @@ LfgLockMap const LFGMgr::GetLockedDungeons(ObjectGuid guid)
17431739
lockData = LFG_LOCKSTATUS_ATTUNEMENT_TOO_HIGH_LEVEL;
17441740
*/
17451741

1746-
if (lockData)
1747-
lock[dungeon->Entry()] = lockData;
1742+
if (lockStatus)
1743+
lock[dungeon->Entry()] = lockStatus;
17481744
}
17491745

17501746
return lock;

src/server/game/DungeonFinding/LFGMgr.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -318,7 +318,7 @@ class TC_GAME_API LFGMgr
318318
/// Loads rewards for random dungeons
319319
void LoadRewards();
320320
/// Loads dungeons from dbc and adds teleport coords
321-
void LoadLFGDungeons(bool reload = false);
321+
void LoadLFGDungeons();
322322

323323
// Multiple files
324324
/// Check if given guid applied for random dungeon

src/server/game/Entities/Creature/Creature.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -191,7 +191,7 @@ WorldPacket CreatureTemplate::BuildQueryData(LocaleConstant loc) const
191191
queryTemp.Allow = true;
192192

193193
queryTemp.Stats.Name = locName;
194-
queryTemp.Stats.NameAlt = locTitle;
194+
queryTemp.Stats.Title = locTitle;
195195
queryTemp.Stats.CursorName = IconName;
196196
queryTemp.Stats.Flags = type_flags;
197197
queryTemp.Stats.CreatureType = type;
@@ -2681,7 +2681,7 @@ void Creature::UpdateMovementFlags()
26812681
}
26822682

26832683
if (!isInAir)
2684-
RemoveUnitMovementFlag(MOVEMENTFLAG_FALLING);
2684+
SetFall(false);
26852685

26862686
SetSwim(CanSwim() && IsInWater());
26872687
}

src/server/game/Entities/Creature/CreatureData.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -517,7 +517,7 @@ struct VendorItemData
517517
return &m_items[slot];
518518
}
519519
bool Empty() const { return m_items.empty(); }
520-
uint8 GetItemCount() const { return m_items.size(); }
520+
uint32 GetItemCount() const { return uint32(m_items.size()); }
521521
void AddItem(uint32 item, int32 maxcount, uint32 ptime, uint32 ExtendedCost)
522522
{
523523
m_items.emplace_back(item, maxcount, ptime, ExtendedCost);

src/server/game/Entities/GameObject/GameObject.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -289,9 +289,9 @@ bool GameObject::Create(ObjectGuid::LowType guidlow, uint32 name_id, Map* map, u
289289
return false;
290290
}
291291

292-
if (goinfo->type == GAMEOBJECT_TYPE_MO_TRANSPORT)
292+
if (goinfo->type == GAMEOBJECT_TYPE_MAP_OBJ_TRANSPORT)
293293
{
294-
TC_LOG_ERROR("sql.sql", "Gameobject (GUID: {} Entry: {}) not created: gameobject type GAMEOBJECT_TYPE_MO_TRANSPORT cannot be manually created.", guidlow, name_id);
294+
TC_LOG_ERROR("sql.sql", "Gameobject (GUID: {} Entry: {}) not created: gameobject type GAMEOBJECT_TYPE_MAP_OBJ_TRANSPORT cannot be manually created.", guidlow, name_id);
295295
return false;
296296
}
297297

@@ -1244,7 +1244,7 @@ bool GameObject::IsTransport() const
12441244
if (!gInfo)
12451245
return false;
12461246

1247-
return gInfo->type == GAMEOBJECT_TYPE_TRANSPORT || gInfo->type == GAMEOBJECT_TYPE_MO_TRANSPORT;
1247+
return gInfo->type == GAMEOBJECT_TYPE_TRANSPORT || gInfo->type == GAMEOBJECT_TYPE_MAP_OBJ_TRANSPORT;
12481248
}
12491249

12501250
// is Dynamic transport = non-stop Transport
@@ -1255,7 +1255,7 @@ bool GameObject::IsDynTransport() const
12551255
if (!gInfo)
12561256
return false;
12571257

1258-
return gInfo->type == GAMEOBJECT_TYPE_MO_TRANSPORT || (gInfo->type == GAMEOBJECT_TYPE_TRANSPORT && !gInfo->transport.pause);
1258+
return gInfo->type == GAMEOBJECT_TYPE_MAP_OBJ_TRANSPORT || (gInfo->type == GAMEOBJECT_TYPE_TRANSPORT && !gInfo->transport.pause);
12591259
}
12601260

12611261
bool GameObject::IsDestructibleBuilding() const
@@ -1925,7 +1925,7 @@ void GameObject::Use(Unit* user)
19251925
return;
19261926
}
19271927

1928-
case GAMEOBJECT_TYPE_SUMMONING_RITUAL: //18
1928+
case GAMEOBJECT_TYPE_RITUAL: //18
19291929
{
19301930
if (user->GetTypeId() != TYPEID_PLAYER)
19311931
return;
@@ -2731,7 +2731,7 @@ void GameObject::BuildValuesUpdate(uint8 updateType, ByteBuffer* data, Player co
27312731
dynFlags |= GO_DYNFLAG_LO_SPARKLE;
27322732
break;
27332733
case GAMEOBJECT_TYPE_TRANSPORT:
2734-
case GAMEOBJECT_TYPE_MO_TRANSPORT:
2734+
case GAMEOBJECT_TYPE_MAP_OBJ_TRANSPORT:
27352735
{
27362736
if (uint32 transportPeriod = GetTransportPeriod())
27372737
{

src/server/game/Entities/GameObject/GameObject.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -288,13 +288,13 @@ class TC_GAME_API GameObject : public WorldObject, public GridObject<GameObject>
288288
GameObjectModel* m_model;
289289
void GetRespawnPosition(float &x, float &y, float &z, float* ori = nullptr) const;
290290

291-
Transport* ToTransport() { if (GetGOInfo()->type == GAMEOBJECT_TYPE_MO_TRANSPORT) return reinterpret_cast<Transport*>(this); else return nullptr; }
292-
Transport const* ToTransport() const { if (GetGOInfo()->type == GAMEOBJECT_TYPE_MO_TRANSPORT) return reinterpret_cast<Transport const*>(this); else return nullptr; }
291+
Transport* ToTransport() { if (GetGOInfo()->type == GAMEOBJECT_TYPE_MAP_OBJ_TRANSPORT) return reinterpret_cast<Transport*>(this); else return nullptr; }
292+
Transport const* ToTransport() const { if (GetGOInfo()->type == GAMEOBJECT_TYPE_MAP_OBJ_TRANSPORT) return reinterpret_cast<Transport const*>(this); else return nullptr; }
293293

294-
float GetStationaryX() const override { if (GetGOInfo()->type != GAMEOBJECT_TYPE_MO_TRANSPORT) return m_stationaryPosition.GetPositionX(); return GetPositionX(); }
295-
float GetStationaryY() const override { if (GetGOInfo()->type != GAMEOBJECT_TYPE_MO_TRANSPORT) return m_stationaryPosition.GetPositionY(); return GetPositionY(); }
296-
float GetStationaryZ() const override { if (GetGOInfo()->type != GAMEOBJECT_TYPE_MO_TRANSPORT) return m_stationaryPosition.GetPositionZ(); return GetPositionZ(); }
297-
float GetStationaryO() const override { if (GetGOInfo()->type != GAMEOBJECT_TYPE_MO_TRANSPORT) return m_stationaryPosition.GetOrientation(); return GetOrientation(); }
294+
float GetStationaryX() const override { if (GetGOInfo()->type != GAMEOBJECT_TYPE_MAP_OBJ_TRANSPORT) return m_stationaryPosition.GetPositionX(); return GetPositionX(); }
295+
float GetStationaryY() const override { if (GetGOInfo()->type != GAMEOBJECT_TYPE_MAP_OBJ_TRANSPORT) return m_stationaryPosition.GetPositionY(); return GetPositionY(); }
296+
float GetStationaryZ() const override { if (GetGOInfo()->type != GAMEOBJECT_TYPE_MAP_OBJ_TRANSPORT) return m_stationaryPosition.GetPositionZ(); return GetPositionZ(); }
297+
float GetStationaryO() const override { if (GetGOInfo()->type != GAMEOBJECT_TYPE_MAP_OBJ_TRANSPORT) return m_stationaryPosition.GetOrientation(); return GetOrientation(); }
298298
void RelocateStationaryPosition(float x, float y, float z, float o) { m_stationaryPosition.Relocate(x, y, z, o); }
299299

300300
float GetInteractionDistance() const;

0 commit comments

Comments
 (0)