コード例 #1
0
            public override void VisitMobileTeleport(MobileTeleport teleport)
            {
                if (!_player.Session.AccessLevel.IsAdminOrGm())
                {
                    _player.HasPvpEffect.ThrowIfTrue(ErrorCodes.CantBeUsedInPvp);
                    teleport.EffectHandler.ContainsEffect(EffectType.effect_teleport_cooldown).ThrowIfTrue(ErrorCodes.TeleportSourceNotUsable);
                }

                var ownerCharacter = teleport.GetOwnerAsCharacter();

                if (_player.Character != ownerCharacter)
                {
                    var playerGang = _player.Gang;
                    playerGang.ThrowIfNull(ErrorCodes.CharacterNotInGang);
                    playerGang.IsMember(ownerCharacter).ThrowIfFalse(ErrorCodes.CharacterNotInTheOwnerGang);
                }

                VisitTeleport(teleport);
            }
コード例 #2
0
 public virtual void VisitMobileTeleport(MobileTeleport teleport)
 {
 }