public ulong Generate() { if (_nextGuid >= ObjectGuid.GetMaxCounter(_highGuid) - 1) { HandleCounterOverflow(); } if (_highGuid == HighGuid.Creature || _highGuid == HighGuid.Vehicle || _highGuid == HighGuid.GameObject || _highGuid == HighGuid.Transport) { CheckGuidTrigger(_nextGuid); } return(_nextGuid++); }