예제 #1
0
 /// <inheritdoc />
 public void Execute(IPlayerEntity player, object[] parameters)
 {
     if (player.PlayerData.Mode.HasFlag(ModeType.MATCHLESS_MODE))
     {
         player.PlayerData.Mode &= ~ModeType.MATCHLESS_MODE;
         _playerDataPacketFactory.SendModifyMode(player);
         _logger.LogTrace($"Player '{player.Object.Name}' is not anymore in undying mode.");
     }
     else
     {
         _logger.LogTrace($"Player '{player.Object.Name}' is currently not in undying mode.");
     }
 }
예제 #2
0
 /// <inheritdoc />
 public void Execute(IPlayerEntity player, object[] parameters)
 {
     if (!player.PlayerData.Mode.HasFlag(ModeType.TRANSPARENT_MODE))
     {
         player.PlayerData.Mode |= ModeType.TRANSPARENT_MODE;
         _playerDataPacketFactory.SendModifyMode(player);
         _logger.LogTrace($"Player '{player.Object.Name}' is now invisible.");
     }
     else
     {
         _logger.LogTrace($"Player '{player.Object.Name}' is already invisible.");
     }
 }
예제 #3
0
 /// <inheritdoc />
 public void Execute(IPlayerEntity player, object[] parameters)
 {
     if (player.PlayerData.Mode.HasFlag(ModeType.TRANSPARENT_MODE))
     {
         player.PlayerData.Mode &= ~ModeType.TRANSPARENT_MODE;
         _playerDataPacketFactory.SendModifyMode(player);
         _moverPacketFactory.SendDestinationPosition(player);
         _moverPacketFactory.SendMoverPositionAngle(player, sendOwnPlayer: false);
         _logger.LogTrace($"Player '{player.Object.Name}' is not anymore invisible.");
     }
     else
     {
         _logger.LogTrace($"Player '{player.Object.Name}' is currently not invisible.");
     }
 }
예제 #4
0
 /// <inheritdoc />
 public void Execute(IPlayerEntity player, object[] parameters)
 {
     if (parameters.Length == 1)
     {
         IPlayerEntity playerToFreeze = _worldServer.GetPlayerEntity(parameters[0].ToString());
         if (!player.PlayerData.Mode.HasFlag(ModeType.DONMOVE_MODE))
         {
             playerToFreeze.PlayerData.Mode |= ModeType.DONMOVE_MODE;
             _playerDataPacketFactory.SendModifyMode(playerToFreeze);
             _logger.LogTrace($"Player '{playerToFreeze.Object.Name}' is now freezed.");
         }
         else
         {
             _logger.LogTrace($"Player '{playerToFreeze.Object.Name}' is already freezed.");
         }
     }
     else
     {
         throw new ArgumentException("Too many or not enough arguments.");
     }
 }