Example #1
0
    public bool Initialize(ICommandArgs args)
    {
        ChopCommandArgs commandArgs = args as ChopCommandArgs;

        if (commandArgs == null)
        {
            successful = false;
            finished   = true;
            throw new UnityException("Wrong type of args");
        }

        node = commandArgs.node;

        GameObject tree = node.GetBlock();

        if (!tree)
        {
            Stop();
            Debug.Log("No tree to chop");
            return(false);
        }

        spriteRenderer = tree.GetComponent <SpriteRenderer>();
        TickSystem.Subscribe(Chop);

        return(true);
    }
        public override CommandResult OnExecute(ICommandSource src, ICommandArgs args)
        {
            var message = args[1].ToString();
            var url     = args[2].ToString();

            if (args[0].Equals("*"))
            {
                UServer.Players.ForEach(p => {
                    p.UnturnedPlayer.sendBrowserRequest(message, url);
                });
                EssLang.Send(src, "REQUEST_URL_SUCCESS", EssLang.Translate("EVERYONE"), url);
            }
            else if (args[0].IsValidPlayerIdentifier)
            {
                var target = args[0].ToPlayer;
                target.UnturnedPlayer.sendBrowserRequest(message, url);
                EssLang.Send(src, "REQUEST_URL_SUCCESS", target.DisplayName, url);
            }
            else
            {
                return(CommandResult.Lang("PLAYER_NOT_FOUND", args[0]));
            }

            return(CommandResult.Success());
        }
        public override void OnExecute( ICommandSource source, ICommandArgs parameters )
        {
            if ( parameters.Length == 0 )
            {
                if ( source.IsConsole )
                {
                    ShowUsage( source );
                }
                else
                {
                    var player = source.ToPlayer();

                    EssLang.POSITION.SendTo( player,
                                          player.Position.x,
                                          player.Position.y,
                                          player.Position.z );
                }
            }
            else
            {
                var found = UPlayer.TryGet( parameters[0], p =>
                {
                    EssLang.POSITION_OTHER.SendTo( source,
                        p.DisplayName, p.Position.x, p.Position.y, p.Position.z );
                } );

                if ( !found )
                {
                    EssLang.PLAYER_NOT_FOUND.SendTo( source, parameters[0] );
                }
            }
        }
Example #4
0
        public override void OnExecute( ICommandSource src, ICommandArgs args )
        {
            if ( args.Length < 2 )
            {
                ShowUsage( src );
            }
            else
            {
                string name;

                if ( args[0].Is( name = "*console*" ) )
                {
                    CommandWindow.ConsoleInput.onInputText( args.Join( 1 ) );
                }
                else
                {
                    if ( !args[0].IsValidPlayerName )
                    {
                        EssLang.PLAYER_NOT_FOUND.SendTo( src, args[0] );
                        return;
                    }

                    var targetPlayer = args[0].ToPlayer;

                    ChatManager.Instance.askChat( targetPlayer.CSteamId, (byte) EChatMode.GLOBAL, args.Join( 1 ) );

                    name = targetPlayer.CharacterName;
                }

                EssLang.SUDO_EXECUTED.SendTo( src, name, args.Join( 1 ) );
            }
        }
Example #5
0
        public override void OnExecute( ICommandSource source, ICommandArgs parameters )
        {
            var player = source.ToPlayer();

            if ( parameters.Length == 0 || parameters.Length > 1 )
            {
                ShowUsage( source );
            }
            else if ( !EssProvider.WarpManager.Contains( parameters[0].ToString() ) )
            {
                EssLang.WARP_NOT_EXIST.SendTo( source, parameters[0] );
            }
            else if ( !player.HasPermission( $"essentials.warp.{parameters[0]}" ) )
            {
                EssLang.WARP_NO_PERMISSION.SendTo( source, parameters[0] );
            }
            else
            {
                var dest = EssProvider.WarpManager[parameters[0].ToString()];
                var cooldown = EssProvider.Config.WarpCooldown;

                if ( cooldown > 0 && !player.HasPermission( "essentials.warps.bypasscooldown" ) )
                {
                    EssLang.WARP_COOLDOWN.SendTo( source, cooldown );
                }

                Tasks.New( t =>
                {
                    player.Teleport( dest.Location, dest.Rotation );
                    EssLang.WARP_TELEPORTED.SendTo( source, parameters[0] );
                }).Delay( player.HasPermission( "essentials.warps.bypasscooldown" ) ? 0 : cooldown * 1000 ).Go();
            }
        }
        public override CommandResult OnExecute(ICommandSource src, ICommandArgs args)
        {
            if (args.IsEmpty)
            {
                if (src.IsConsole)
                {
                    return(CommandResult.ShowUsage());
                }

                GiveMaxSkills(src.ToPlayer(), false);
            }
            else
            {
                if (args.Length < 2 && src.IsConsole)
                {
                    return(CommandResult.ShowUsage());
                }

                if (!args[0].IsBool)
                {
                    return(CommandResult.Lang("INVALID_BOOLEAN", args[0]));
                }

                var overpower = args[0].ToBool;

                // player or all
                if (args.Length > 1)
                {
                    if (args[1].Equals("*"))
                    {
                        if (!src.HasPermission($"{Permission}.all"))
                        {
                            return(CommandResult.NoPermission($"{Permission}.all"));
                        }
                        UServer.Players.ForEach(p => GiveMaxSkills(p, overpower));
                        EssLang.Send(src, "MAX_SKILLS_ALL");
                    }
                    else
                    {
                        if (!src.HasPermission($"{Permission}.other"))
                        {
                            return(CommandResult.NoPermission($"{Permission}.other"));
                        }
                        if (!args[1].IsValidPlayerIdentifier)
                        {
                            return(CommandResult.Lang("PLAYER_NOT_FOUND", args[1]));
                        }
                        var targetPlayer = args[1].ToPlayer;
                        GiveMaxSkills(targetPlayer, overpower);
                        EssLang.Send(src, "MAX_SKILLS_TARGET", targetPlayer.DisplayName);
                    }
                }
                else     // self (with overpower)
                {
                    GiveMaxSkills(src.ToPlayer(), overpower);
                }
            }

            return(CommandResult.Success());
        }
Example #7
0
        public override CommandResult OnExecute(ICommandSource source, ICommandArgs parameters)
        {
            var kitConfig          = EssCore.Instance.Config.Kit;
            var hasEconomyProvider = UEssentials.EconomyProvider.IsPresent;

            var kits = KitModule.Instance.KitManager.Kits.Where(k => k.CanUse(source)).Select(k => {
                if (!hasEconomyProvider || !kitConfig.ShowCost || (k.Cost <= 0 && !kitConfig.ShowCostIfZero))
                {
                    return(k.Name);
                }
                return(string.Format(kitConfig.CostFormat, k.Name, k.Cost, UEssentials.EconomyProvider.Value.Currency));
            }).ToList();


            if (kits.Count == 0)
            {
                EssLang.Send(source, "KIT_NONE");
            }
            else
            {
                EssLang.Send(source, "KIT_LIST", string.Join(", ", kits.ToArray()));
            }

            return(CommandResult.Success());
        }
Example #8
0
        private CommandResult PositionCommand(ICommandSource src, ICommandArgs args, ICommand cmd)
        {
            if (args.Length == 0)
            {
                if (src.IsConsole)
                {
                    return(CommandResult.ShowUsage());
                }

                var p = src.ToPlayer();
                EssLang.Send(src, "POSITION", p.Position.x, p.Position.y, p.Position.z);
            }
            else
            {
                if (!src.HasPermission($"{cmd.Permission}.other"))
                {
                    return(CommandResult.NoPermission($"{cmd.Permission}.other"));
                }

                if (!args[0].IsValidPlayerIdentifier)
                {
                    return(CommandResult.LangError("PLAYER_NOT_FOUND", args[0]));
                }

                var p = args[0].ToPlayer;
                EssLang.Send(src, "POSITION_OTHER", p.DisplayName, p.Position.x, p.Position.y, p.Position.z);
            }

            return(CommandResult.Success());
        }
Example #9
0
        public override CommandResult OnExecute(ICommandSource src, ICommandArgs args)
        {
            var player = src.ToPlayer();

            float       dist = 2048f;
            RaycastInfo veh  = TraceRay(player, dist, RayMasks.VEHICLE);

            if (veh.vehicle != null)
            {
                if (!veh.vehicle.isLocked)
                {
                    VehicleManager.instance.channel.send("tellVehicleLock", ESteamCall.ALL, ESteamPacket.UPDATE_RELIABLE_BUFFER, veh.vehicle.instanceID, player.CSteamId, player.UnturnedPlayer.channel.owner.playerID.group, player.CSteamId != CSteamID.Nil);
                    EssLang.Send(src, "VEHICLE_LOCK");
                    return(CommandResult.Success());
                }
                else
                {
                    return(CommandResult.LangError("VEHICLE_ALREADY_LOCKED"));
                }
            }
            else
            {
                return(CommandResult.LangError("NO_OBJECT"));
            }
        }
Example #10
0
        public override CommandResult OnExecute(ICommandSource src, ICommandArgs args)
        {
            var player = src.ToPlayer();
            var look   = player.Look;

            if (PhysicsUtility.raycast(new Ray(look.aim.position, look.aim.forward), out RaycastHit hit, Mathf.Infinity, RayMasks.BARRICADE))
            {
                InteractableStorage storage = hit.transform.GetComponent <InteractableStorage>();

                if (storage != null)
                {
                    storage.isOpen                  = true;
                    storage.opener                  = player.UnturnedPlayer;
                    player.Inventory.isStoring      = true;
                    player.Inventory.isStorageTrunk = false;
                    player.Inventory.storage        = storage;
                    player.Inventory.updateItems(PlayerInventory.STORAGE, storage.items);
                    player.Inventory.sendStorage();

                    EssLang.Send(src, "STORAGE_OPEN");
                    return(CommandResult.Success());
                }
                else
                {
                    return(CommandResult.LangError("STORAGE_INVALID"));
                }
            }
Example #11
0
        public override CommandResult OnExecute(ICommandSource src, ICommandArgs args)
        {
            var player = src.ToPlayer();

            float       dist = 2048f;
            RaycastInfo veh  = TraceRay(player, dist, RayMasks.VEHICLE);

            if (veh.vehicle != null)
            {
                if (veh.vehicle.isLocked)
                {
                    VehicleManager.unlockVehicle(veh.vehicle, player.UnturnedPlayer);
                    EssLang.Send(src, "VEHICLE_UNLOCK");
                    return(CommandResult.Success());
                }
                else
                {
                    return(CommandResult.LangError("VEHICLE_NOT_LOCKED"));
                }
            }
            else
            {
                return(CommandResult.LangError("NO_OBJECT"));
            }
        }
Example #12
0
        internal override void OnCommand(ICommandArgs command)
        {
            //Execute the proxy before the other handlers to maintain consistency with non-proxy commands
            ExecuteProxy(command);

            base.OnCommand(command);
        }
        public override CommandResult OnExecute(ICommandSource src, ICommandArgs args)
        {
            if (args.IsEmpty || args.Length > 1)
            {
                return(CommandResult.ShowUsage());
            }

            try {
                var steamId = new CSteamID(ulong.Parse(args[0].ToString()));

                if (!steamId.IsValid())
                {
                    return(CommandResult.LangError("INVALID_STEAMID", steamId.m_SteamID));
                }

                ResetPlayer(steamId.m_SteamID);
                EssLang.Send(src, "PLAYER_RESET");
            } catch (FormatException) {
                var target = args[0].ToPlayer;

                if (target == null)
                {
                    return(CommandResult.LangError("PLAYER_NOT_FOUND", args[0]));
                }

                target.Kick(EssLang.Translate("PLAYER_RESET_KICK"));
                ResetPlayer(target.CSteamId.m_SteamID);

                EssLang.Send(src, "PLAYER_RESET");
            }

            return(CommandResult.Success());
        }
Example #14
0
        public override CommandResult OnExecute(ICommandSource src, ICommandArgs args)
        {
            var player     = src.ToPlayer();
            var playerMeta = player.Metadata;

            if (!playerMeta.Has(META_KEY_POS) || !playerMeta.Has(META_KEY_DELAY))
            {
                return(CommandResult.Lang("NOT_DIED_YET"));
            }

            var deathTime = playerMeta.Get <DateTime>(META_KEY_DELAY);
            var delta     = UEssentials.Config.BackDelay - (DateTime.Now - deathTime).Seconds;

            if (delta > 0 && !player.HasPermission($"essentials.bypass.backdelay"))
            {
                return(CommandResult.Lang("BACK_DELAY", TimeUtil.FormatSeconds((uint)delta)));
            }

            var backPosition = playerMeta.Get <Vector3>(META_KEY_POS);

            src.ToPlayer().Teleport(backPosition);
            EssLang.Send(src, "RETURNED");

            playerMeta.Remove(META_KEY_DELAY);
            playerMeta.Remove(META_KEY_POS);

            return(CommandResult.Success());
        }
        public override Options Execute(ICommandArgs commandArgs)
        {
            Console.WriteLine("Write Username which you want to Register:");
            var registerUserName = Console.ReadLine();

            Console.WriteLine("Enter a password:"******"Register Username {registerUserName}", new List <string>
            {
                "Register new Member",
                "Register new Librarian"
            });

            switch (option)
            {
            case "Register new Member":
                commandArgs.UsersService.CreateAccount(registerUserName, password, AccountType.Member);
                break;

            case "Register new Librarian":
                commandArgs.UsersService.CreateAccount(registerUserName, password, AccountType.Librarian);
                break;
            }

            Console.WriteLine($"User with name {registerUserName} was create");
            Console.ReadKey();
            return(Options.HomeMenu);
        }
Example #16
0
        public Options Execute(ICommandArgs commandArgs)
        {
            var option = commandArgs.MultipleChoice(title: "Login to System:", options: new List <Options>
            {
                Options.LoginMenu_Login,
                Options.LoginMenu_Register,
                Options.Quit
            });
            string username;

            switch (option)
            {
            case Options.LoginMenu_Login:
                Console.WriteLine("Enter your username:"******"Wrong username!");
                    Console.ReadKey();
                    return(Options.LoginMenu);
                }

                return(Options.HomeMenu);

            case Options.LoginMenu_Register:
                Console.WriteLine("Enter your username");
                username = Console.ReadLine();
                commandArgs.Users.CreateAccount(username, AccountType.Member);
                commandArgs.Users.Login(username);
                return(Options.HomeMenu);
            }

            return(option);
        }
Example #17
0
        private CommandResult RespawnItemsCommand(ICommandSource src, ICommandArgs args)
        {
            for (byte x = 0; x < Regions.WORLD_SIZE; x++)
            {
                for (byte y = 0; y < Regions.WORLD_SIZE; y++)
                {
                    var itemsCount = LevelItems.spawns[x, y].Count;
                    if (itemsCount <= 0)
                    {
                        continue;
                    }

                    for (var i = 0; i < itemsCount; i++)
                    {
                        var itemSpawnpoint = LevelItems.spawns[x, y][i];
                        var itemId         = LevelItems.getItem(itemSpawnpoint);

                        if (itemId == 0)
                        {
                            continue;
                        }

                        var item = new Item(itemId, true);
                        ItemManager.dropItem(item, itemSpawnpoint.point, false, false, false);
                    }
                }
            }
            EssLang.Send(src, "RESPAWNED_ITEMS");
            return(CommandResult.Success());
        }
Example #18
0
        private CommandResult DescendCommand(ICommandSource src, ICommandArgs args, ICommand cmd)
        {
            if (args.IsEmpty)
            {
                return(CommandResult.ShowUsage());
            }

            if (!args[0].IsFloat)
            {
                return(CommandResult.Lang("INVALID_NUMBER", args[0]));
            }

            if (args[0].ToFloat <= 0)
            {
                return(CommandResult.Lang("MUST_POSITIVE", args[0]));
            }

            var player = src.ToPlayer();
            var pos    = new Vector3(player.Position.x, player.Position.y, player.Position.z);
            var num    = args[0].ToFloat;

            pos.y -= num;

            player.Teleport(pos);
            EssLang.Send(src, "DESCENDED", num);

            return(CommandResult.Success());
        }
Example #19
0
        public static ICommand Create(ICommandArgs args)
        {
            bool   hasInvalidArgsCount = false;
            string cmdName             = string.Empty;

            if (args == null)
            {
                throw new CommandParseException(new Result("ERROR Unsupported command"));
            }

            /* Retrieve command name */
            cmdName = args.FullCommand.Split(' ')[0];

            /* Check if a command is supported */
            if (!Commands.IsBound(cmdName))
            {
                throw new CommandParseException(new Result("ERROR Unsupported command"));
            }

            /* Split whole command line */
            string[] cmd_args = args.FullCommand.Split(' ');

            /* Check for correct arguments */
            if (!Commands.AreArgumentsValid(cmdName, cmd_args))
            {
                hasInvalidArgsCount = true;
            }
            else
            {
                cmd_args = cmd_args.Skip(1).ToArray();
            }

            return(Commands.Build(cmdName, args.Context, args.UserContext, cmd_args, hasInvalidArgsCount));
        }
Example #20
0
        public void AscendCommand( ICommandSource src, ICommandArgs args, ICommand cmd )
        {
            if ( args.IsEmpty )
            {
                ShowUsage( src, cmd );
            }
            else if ( !args[0].IsFloat )
            {
                EssLang.INVALID_NUMBER.SendTo( src, args[0] );
            }
            else if ( args[0].ToFloat <= 0 )
            {
                EssLang.MUST_POSITIVE.SendTo( src, args[0] );
            }
            else
            {
                var player = src.ToPlayer();
                var pos = new Vector3(player.Position.x, player.Position.y, player.Position.z);
                var num = args[0].ToFloat;

                pos.y += num;

                player.Teleport( pos );
                player.SendMessage( $"You ascended {num} \"meters\"" );
            }
        }
Example #21
0
        public override CommandResult OnExecute(ICommandSource src, ICommandArgs args)
        {
            var player = src.ToPlayer();

            if (args[0].ToString() == "on")
            {
                player.Look.sendFreecamAllowed(true);
                player.Look.sendSpecStatsAllowed(true);

                EssLang.Send(src, "FREECAM_ON");
                return(CommandResult.Success());
            }
            else if (args[0].ToString() == "off")
            {
                player.Look.sendFreecamAllowed(false);
                player.Look.sendSpecStatsAllowed(false);

                EssLang.Send(src, "FREECAM_OFF");
                return(CommandResult.Success());
            }
            else
            {
                return(CommandResult.ShowUsage());
            }
        }
        public override Options Execute(ICommandArgs commandArgs)
        {
            Console.WriteLine("Write Username which you want to Register:");
            var registerUserName = Console.ReadLine();

            var option = this.MultipleChoice(title: $"Register Username {registerUserName}", new List <string>
            {
                "Register new Member",
                "Register new Librarian",
                "Back"
            });

            switch (option)
            {
            case "Register new Member":
                var newUsernameMember = commandArgs.UsersService.CreateAccount(registerUserName, AccountType.Member);
                commandArgs.UsersService.Accounts.Add(newUsernameMember);
                break;

            case "Register new Librarian":
                var newUsernameLibrarian = commandArgs.UsersService.CreateAccount(registerUserName, AccountType.Librarian);
                commandArgs.UsersService.Accounts.Add(newUsernameLibrarian);
                break;

            case "Back":
                Console.WriteLine("Returning to home menu...");
                Console.ReadKey();
                return(Options.HomeMenu);
            }

            Console.WriteLine($"Member with name {registerUserName} was create");

            return(Options.HomeMenu);
        }
 public void OnExecute( ICommandSource source, ICommandArgs args )
 {
     if ( _hasCommandParameter )
         _methodActionWithCommand( source, args, this );
     else
         _methodAction( source, args );
 }
Example #24
0
        public override void OnExecute( ICommandSource src, ICommandArgs args )
        {
            var player = src.ToPlayer();
            var dist = 1000f;

            if ( args.Length == 1 )
            {
                if ( !args[0].IsDouble )
                    goto usage;
                dist = (float) args[0].ToDouble;
            }

            var eyePos = player.GetEyePosition( dist );

            if ( !eyePos.HasValue )
            {
                EssLang.JUMP_NO_POSITION.SendTo( src );
            }
            else
            {
                var point = eyePos.Value;
                point.y += 6;

                player.Teleport( point );
                EssLang.JUMPED.SendTo( src, point.x, point.y, point.z );
            }
            return;

            usage:
            ShowUsage( src );
        }
Example #25
0
        private CommandResult PositionCommand(ICommandSource src, ICommandArgs args, ICommand cmd)
        {
            if (args.Length == 0)
            {
                if (src.IsConsole)
                {
                    return(CommandResult.ShowUsage());
                }
                var player = src.ToPlayer();

                EssLang.Send(player,
                             "POSITION",
                             player.Position.x,
                             player.Position.y,
                             player.Position.z);
            }
            else
            {
                var found = UPlayer.TryGet(args[0], p => {
                    EssLang.Send(src, "POSITION_OTHER", p.DisplayName, p.Position.x, p.Position.y, p.Position.z);
                });

                if (!found)
                {
                    return(CommandResult.Lang("PLAYER_NOT_FOUND", args[0]));
                }
            }

            return(CommandResult.Success());
        }
Example #26
0
        public override CommandResult OnExecute(ICommandSource src, ICommandArgs args)
        {
            switch (args.Length)
            {
            case 0:
                if (src.IsConsole)
                {
                    return(CommandResult.ShowUsage());
                }

                var eyePos = src.ToPlayer().GetEyePosition(3000);

                if (eyePos.HasValue)
                {
                    Explode(eyePos.Value);
                }
                break;

            case 1:
                if (args[0].Is("*"))
                {
                    UPlayer caller = null;

                    if (!src.IsConsole)
                    {
                        caller = src.ToPlayer();
                    }

                    UServer.Players.Where(p => p != caller).ForEach(p => Explode(p.Position));
                }
                else
                {
                    var found = UPlayer.TryGet(args[0], player => Explode(player.Position));

                    if (!found)
                    {
                        return(CommandResult.Lang(EssLang.PLAYER_NOT_FOUND, args[0]));
                    }
                }
                break;

            case 3:
                var pos = args.GetVector3(0);

                if (pos.HasValue)
                {
                    Explode(pos.Value);
                }
                else
                {
                    return(CommandResult.Lang(EssLang.INVALID_COORDS, args[0], args[1], args[2]));
                }
                break;

            default:
                return(CommandResult.ShowUsage());
            }

            return(CommandResult.Success());
        }
        public override CommandResult OnExecute(ICommandSource src, ICommandArgs args)
        {
            if (args[0].Equals("*"))
            {
                foreach (var player in UServer.Players.Where(player => player.HasComponent <FrozenPlayer>()))
                {
                    player.RemoveComponent <FrozenPlayer>();
                    EssLang.Send(player, "UNFROZEN_PLAYER", src.DisplayName);
                }

                EssLang.Send(src, "UNFROZEN_ALL");
            }
            else if (args[0].IsValidPlayerIdentifier)
            {
                var target = args[0].ToPlayer;

                if (!target.HasComponent <FrozenPlayer>())
                {
                    return(CommandResult.Lang("NOT_FROZEN", target.DisplayName));
                }
                target.RemoveComponent <FrozenPlayer>();

                EssLang.Send(src, "UNFROZEN_SENDER", target.DisplayName);
                EssLang.Send(target, "UNFROZEN_PLAYER", src.DisplayName);
            }
            else
            {
                return(CommandResult.Lang("PLAYER_NOT_FOUND", args[0]));
            }
            return(CommandResult.Success());
        }
Example #28
0
        /// <summary>
        /// 处理命令系统业务逻辑
        /// </summary>
        /// <param name="evt"></param>
        public override void ProcessLogic(PropertyMessage evt)
        {
            //执行Undo操作
            if (evt.PropertyName.Equals("CommandArgs"))
            {
                ICommandArgs _args = (ICommandArgs)evt.NewValue;
                if (!_args.GetCommandName().ToLower().Equals("undo"))
                {
                    return;
                }
                _CommandService.GetCommandStack().Undo();
                return;
            }

            //执行Redo操作
            if (evt.PropertyName.Equals("CommandArgs"))
            {
                ICommandArgs _args = (ICommandArgs)evt.NewValue;
                if (!_args.GetCommandName().ToLower().Equals("redo"))
                {
                    return;
                }
                _CommandService.GetCommandStack().Redo();
                return;
            }
        }
Example #29
0
        private CommandResult PvpCommand(ICommandSource src, ICommandArgs args)
        {
            if (args.IsEmpty)
            {
                return(CommandResult.ShowUsage());
            }

            var toggleVal = GetToggleValue(args[0]);

            if (!toggleVal.HasValue)
            {
                return(CommandResult.ShowUsage());
            }
            if (toggleVal.Value)
            {
                Provider.isPvP = true;
                EssLang.Send(src, "PVP_ENABLED");
            }
            else
            {
                Provider.isPvP = false;
                EssLang.Send(src, "PVP_DISABLED");
            }
            return(CommandResult.Success());
        }
        public override void OnExecute( ICommandSource source, ICommandArgs parameters )
        {
            if ( parameters.IsEmpty )
            {
                if ( source.IsConsole )
                    ShowUsage( source );
                else
                    GiveMaxSkills( source.ToPlayer(), false );
            }
            else
            {
                if ( !parameters[0].IsBool || parameters.Length < 2 && source.IsConsole )
                {
                    ShowUsage( source );
                    return;
                }

                var overpower = parameters[0].ToBool;
                var targetPlayer = parameters.Length == 2 ? parameters[1].ToPlayer : source.ToPlayer();

                if ( targetPlayer == null )
                    EssLang.PLAYER_NOT_FOUND.SendTo( source, parameters[1] );
                else
                {
                    GiveMaxSkills( targetPlayer, overpower );

                    if ( source.IsConsole || source.ToPlayer() != targetPlayer )
                        EssLang.MAX_SKILLS_TARGET.SendTo( source, targetPlayer.DisplayName );
                }
            }
        }
Example #31
0
        private CommandResult ShutdownCommand(ICommandSource src, ICommandArgs args)
        {
            int delay = 0;

            if (args.Length > 0)
            {
                if (!args[0].IsInt)
                {
                    return(CommandResult.Lang("INVALID_NUMBER", args[0]));
                }
                else if ((delay = args[0].ToInt) < 0)
                {
                    delay = 0;
                }
            }
            // Will only send the messages if delay > 0
            if (delay > 0)
            {
                if (args.Length > 1)
                {
                    UServer.Broadcast(args.Join(1)); // Broadcast <reason>
                }
                EssLang.Send(src, "SHUTDOWN_DELAY_SENDER", TimeUtil.FormatSeconds((uint)delay));
            }
            Provider.shutdown(delay);
            return(CommandResult.Success());
        }
Example #32
0
        public override Options Execute(ICommandArgs commandArgs)
        {
            Console.WriteLine("Please enter the ISBN of the book:");
            var isbn = Console.ReadLine();

            Console.WriteLine("Please enter the Title of the book:");
            var title = Console.ReadLine();

            Console.WriteLine("Please enter the Pages of the book:");
            var pages = int.Parse(Console.ReadLine());

            Console.WriteLine("Please enter the Subject of the book:");
            var subject = Console.ReadLine();

            Console.WriteLine("Pleae enter the publisher of the book:");
            var publishers = Console.ReadLine();

            Console.WriteLine("Pleae enter the Publish Date of the book:");
            var publishDate = Console.ReadLine();

            Console.WriteLine("Please enter the Author of the book:");
            var author = Console.ReadLine();

            IBook book = new Book(isbn, title, pages, subject, publishers, publishDate, author);

            commandArgs.LibraryService.AddBook(book);

            return(Options.HomeMenu);
        }
Example #33
0
        public override CommandResult OnExecute(ICommandSource src, ICommandArgs args)
        {
            var player = src.ToPlayer();
            var dist   = 1000f;

            if (args.Length == 1)
            {
                if (!args[0].IsDouble)
                {
                    return(CommandResult.ShowUsage());
                }

                dist = (float)args[0].ToDouble;
            }

            var eyePos = player.GetEyePosition(dist);

            if (!eyePos.HasValue)
            {
                return(CommandResult.Lang("JUMP_NO_POSITION"));
            }

            var point = eyePos.Value;

            point.y += 6;

            player.Teleport(point);
            EssLang.Send(src, "JUMPED", point.x, point.y, point.z);

            return(CommandResult.Success());
        }
Example #34
0
        public override Options Execute(ICommandArgs commandArgs)
        {
            Console.WriteLine("Enter ISBN of the book you want to renew");
            var isbnBook = Console.ReadLine();

            var bookLending = commandArgs.LibraryService.SystemService.BookLendings.FirstOrDefault(b => b.BookItem.Book.ISBN == isbnBook && b.User == commandArgs.UsersService.CurrentAccount);

            if (bookLending == null)
            {
                Console.WriteLine($"Book with the following ISBN: {isbnBook} does not exist");
                Console.ReadKey();
                return(Options.HomeMenu);
            }

            if (commandArgs.LibraryService.SystemService.ValidateLendPeriod(bookLending))
            {
                Console.WriteLine("Enter how many days you want to renew the book");
                var days = int.Parse(Console.ReadLine());
                if (days > 10)
                {
                    Console.WriteLine("You can renew the book up to 10 days");
                    Console.ReadKey();
                    return(Options.HomeMenu);
                }

                bookLending.Date = bookLending.Date.AddDays(days);

                Console.WriteLine($"You renewed the book from {DateTime.Now} to {bookLending.Date}");
                Console.ReadKey();
            }

            return(Options.HomeMenu);
        }
Example #35
0
        public override CommandResult OnExecute(ICommandSource src, ICommandArgs args)
        {
            if (args.IsEmpty || args.Length > 1)
            {
                if (src.IsConsole)
                {
                    return(CommandResult.ShowUsage());
                }

                EssLang.Send(src, "PING", src.ToPlayer().Ping);
            }
            else
            {
                var target = args[0].ToPlayer;

                if (target == null)
                {
                    return(CommandResult.Lang("PLAYER_NOT_FOUND", args[0]));
                }

                EssLang.Send(src, "PING_OTHER", target.DisplayName, target.Ping);
            }

            return(CommandResult.Success());
        }
Example #36
0
        public override CommandResult OnExecute(ICommandSource src, ICommandArgs args)
        {
            if (args.IsEmpty)
            {
                return(CommandResult.ShowUsage());
            }

            if (args[0].Is("*"))
            {
                UServer.Players.ForEach(p => p.Kill());

                EssLang.KILL_ALL.SendTo(src);
            }
            else if (args[0].IsValidPlayerName)
            {
                var target = args[0].ToPlayer;
                target.Kill();

                EssLang.KILL_PLAYER.SendTo(src, target.DisplayName);
            }
            else
            {
                EssLang.PLAYER_NOT_FOUND.SendTo(src, args[0]);
            }

            return(CommandResult.Success());
        }
Example #37
0
        public override Options Execute(ICommandArgs commandArgs)
        {
            Console.WriteLine("Enter Username");
            var userName = Console.ReadLine();

            var user = commandArgs.LibrarySystemContext.AccountsOldData.SingleOrDefault(u => u.UserName == userName);

            var option = this.MultipleChoice(title: $"Edit user {user}", new List <Options>
            {
                Options.EditUsername,
                Options.EditUserType,
                Options.Quit
            });

            switch (option)
            {
            case Options.EditUsername:
                Console.WriteLine("Enter new Username");
                var newUserName = Console.ReadLine();
                user.UserName = newUserName;
                break;

            case Options.EditUserType:
                Console.WriteLine("Enter new userType");
                var newUserType = Console.ReadLine();
                user.Type = (AccountType)Enum.Parse(typeof(AccountType), newUserType);
                break;
            }

            return(Options.HomeMenu);
        }
Example #38
0
        /// <summary>
        /// Run a Smoke unit test.
        /// </summary>
        /// <param name="element">The unit test element.</param>
        /// <param name="previousUnitResults">The previous unit test results.</param>
        /// <param name="args">The command arguments passed to WixUnit.</param>
        public static void RunUnitTest(XmlElement element, UnitResults previousUnitResults, ICommandArgs args)
        {
            string arguments = element.GetAttribute("Arguments");
            string expectedErrors = element.GetAttribute("ExpectedErrors");
            string expectedWarnings = element.GetAttribute("ExpectedWarnings");
            string extensions = element.GetAttribute("Extensions");
            string toolsDirectory = element.GetAttribute("ToolsDirectory");

            string toolFile = Path.Combine(toolsDirectory, "Smoke.exe");
            StringBuilder commandLine = new StringBuilder(arguments);

            // handle extensions
            if (!String.IsNullOrEmpty(extensions))
            {
                foreach (string extension in extensions.Split(';'))
                {
                    commandLine.AppendFormat(" -ext \"{0}\"", extension);
                }
            }

            // run the tool
            ArrayList output = ToolUtility.RunTool(toolFile, commandLine.ToString());
            previousUnitResults.Errors.AddRange(ToolUtility.GetErrors(output, expectedErrors, expectedWarnings));
            previousUnitResults.Output.AddRange(output);
        }
Example #39
0
        /// <summary>
        /// Run a Insignia unit test.
        /// </summary>
        /// <param name="element">The unit test element.</param>
        /// <param name="previousUnitResults">The previous unit test results.</param>
        /// <param name="args">The command arguments passed to WixUnit.</param>
        public static void RunUnitTest(XmlElement element, UnitResults previousUnitResults, ICommandArgs args)
        {
            string arguments = element.GetAttribute("Arguments");
            string expectedErrors = element.GetAttribute("ExpectedErrors");
            string expectedWarnings = element.GetAttribute("ExpectedWarnings");
            string tempDirectory = element.GetAttribute("TempDirectory");
            string toolsDirectory = element.GetAttribute("ToolsDirectory");

            string toolFile = Path.Combine(toolsDirectory, "Insignia.exe");
            StringBuilder commandLine = new StringBuilder(arguments);

            // handle wixunit arguments
            if (args.NoTidy)
            {
                commandLine.Append(" -notidy");
            }

            // handle child elements
            foreach (XmlNode node in element.ChildNodes)
            {
                if (node.NodeType == XmlNodeType.Element)
                {
                    switch (node.LocalName)
                    {
                        case "SourceFile":
                            string sourceFile = Environment.ExpandEnvironmentVariables(node.InnerText.Trim());
                            string outputFile = Path.Combine(tempDirectory, sourceFile);

                            Directory.CreateDirectory(Path.GetDirectoryName(outputFile));

                            // If the file already exists, let's throw an error - otherwise one output file overwriting the other
                            // in the notidy case would be confusing
                            File.Copy(sourceFile, outputFile, false);

                            DirectoryInfo inputDirInfo = new DirectoryInfo(Path.GetDirectoryName(sourceFile));
                            FileInfo[] cabFiles = inputDirInfo.GetFiles("*.cab");
                            foreach (FileInfo cabFile in cabFiles)
                            {
                                File.Copy(cabFile.FullName, Path.Combine(Path.GetDirectoryName(outputFile), cabFile.Name), false);
                            }

                            // Remove any read-only attributes on the file
                            FileAttributes attributes = File.GetAttributes(outputFile);
                            attributes = (attributes & ~FileAttributes.ReadOnly);
                            File.SetAttributes(outputFile, attributes);

                            commandLine.AppendFormat(" -im \"{0}\"", outputFile);

                            previousUnitResults.OutputFiles.Add(outputFile);
                            break;
                    }
                }
            }

            // run the tool
            ArrayList output = ToolUtility.RunTool(toolFile, commandLine.ToString());
            previousUnitResults.Errors.AddRange(ToolUtility.GetErrors(output, expectedErrors, expectedWarnings));
            previousUnitResults.Output.AddRange(output);
        }
Example #40
0
        private static void InitialiseIoC(ICommandArgs commandArgs)
        {
            var resolver = new WindsorDependencyResolver(commandArgs);

            IoC.InitializeWith(resolver);

            log.Debug("IOC initialised.....");
        }
        public override void OnExecute( ICommandSource source, ICommandArgs parameters )
        {
            if ( parameters.IsEmpty || ( parameters.Length < 5 && source.IsConsole ) )
            {
                ShowUsage( source );
            }
            else
            {
                var rawId          = parameters[0].ToString();
                var rawAmount      = parameters.Length >= 2 ? parameters[1].ToString() : "1";
                var pos            = source.ToPlayer().Position;

                if ( parameters.Length == 5 )
                {
                    var argPos = parameters.GetVector3( 2 );

                    if ( !argPos.HasValue )
                    {
                        EssLang.INVALID_COORDS.SendTo( source, parameters[2], parameters[3], parameters[4] );
                        return;
                    }

                    pos = argPos.Value;
                }

                ushort amount;

                if ( !ushort.TryParse( rawAmount, out amount ) )
                {
                    EssLang.INVALID_NUMBER.SendTo( source, rawAmount );
                    return;
                }

                var itemAsset = ItemUtil.GetItem( rawId );

                if ( itemAsset.IsAbsent )
                {
                    EssLang.INVALID_ITEM_ID.SendTo( source, rawId );
                    return;
                }

                var item = new Item( itemAsset.Value.id, true );

                for ( var i = 0; i < amount; i++ )
                {
                    ItemManager.dropItem( item, pos, true, true, true );
                }

                if ( parameters.Length == 5 )
                    EssLang.SPAWNED_ITEM_AT.SendTo( source, amount, itemAsset.Value.Name, pos.x, pos.y, pos.z );
                else
                    EssLang.SPAWNED_ITEM.SendTo( source, amount, itemAsset.Value.Name );
            }
        }
Example #42
0
        /// <summary>
        /// Run a Compare unit test.
        /// </summary>
        /// <param name="element">The unit test element.</param>
        /// <param name="previousUnitResults">The previous unit test results.</param>
        /// <param name="update">Indicates whether to give the user the option to fix a failing test.</param>
        /// <param name="args">The command arguments passed to WixUnit.</param>
        public static void RunUnitTest(XmlElement element, UnitResults previousUnitResults, bool update, ICommandArgs args)
        {
            string file1 = Environment.ExpandEnvironmentVariables(element.GetAttribute("File1"));
            string file2 = Environment.ExpandEnvironmentVariables(element.GetAttribute("File2"));
            string testName = element.ParentNode.Attributes["Name"].Value;

            // Check the results
            ArrayList differences = CompareUnit.CompareResults(file1, file2, testName, update);
            previousUnitResults.Errors.AddRange(differences);
            previousUnitResults.Output.AddRange(differences);
        }
        public override void OnExecute( ICommandSource source, ICommandArgs parameters )
        {
            var respawnedCount = 0;

            UWorld.Animals.ForEach( animal =>
            {
                AnimalManager.sendAnimalAlive( animal, animal.transform.position, 0 );
                respawnedCount++;
            });

            EssLang.RESPAWNED_ANIMALS.SendTo( source, respawnedCount );
        }
        public override void OnExecute( ICommandSource src, ICommandArgs args )
        {
            if ( args.Length == 2 )
            {
                var found = UPlayer.TryGet( args[1], player => {
                    var vehId = args[0];

                    if ( !vehId.IsUshort || !IsValidVehicleId( vehId.ToUshort ) )
                    {
                        EssLang.INVALID_VEHICLE_ID.SendTo( src, vehId );
                    }
                    else
                    {
                        VehicleTool.giveVehicle( player.UnturnedPlayer, vehId.ToUshort );
                        EssLang.SPAWNED_VEHICLE_AT_PLAYER.SendTo( src, args[1] );
                    }
                });

                if ( !found )
                {
                    EssLang.PLAYER_NOT_FOUND.SendTo( src, args[1] );
                }
            }
            else if ( args.Length == 4 )
            {
                var pos = args.GetVector3( 1 );
                var vehId = args[0];

                if ( pos.HasValue )
                {
                    var pVal = pos.Value;

                    if ( !vehId.IsUshort || !IsValidVehicleId( vehId.ToUshort ) )
                    {
                        EssLang.INVALID_VEHICLE_ID.SendTo( src, vehId );
                    }
                    else
                    {
                        SpawnVehicle( pVal, vehId.ToUshort );
                        EssLang.SPAWNED_VEHICLE_AT_POSITION.SendTo( src, pVal.x, pVal.y, pVal.z );
                    }
                }
                else
                {
                    EssLang.INVALID_COORDS.SendTo( src, args[1], args[2], args[3] );
                }
            }
            else
            {
                ShowUsage( src );
            }
        }
Example #45
0
        public override void OnExecute( ICommandSource source, ICommandArgs parameters )
        {
            var kits = (
                from kit in EssProvider.KitManager.Kits
                where kit.CanUse( source )
                select kit.Name
            ).ToList();

            if ( kits.Count == 0 )
                EssLang.KIT_NONE.SendTo( source );
            else
                EssLang.KIT_LIST.SendTo( source, string.Join( ", ", kits.ToArray() ) );
        }
Example #46
0
        public override void OnExecute( ICommandSource source, ICommandArgs parameters )
        {
            var warps = (
                from warp in EssProvider.WarpManager.Warps
                where warp.CanUse( source )
                select warp.Name
            ).ToArray();

            if ( warps.Length == 0 )
                EssLang.WARP_NONE.SendTo( source );
            else
                EssLang.WARP_LIST.SendTo( source, string.Join( ", ", warps ) );
        }
        public override void OnExecute( ICommandSource source, ICommandArgs parameters )
        {
            var killedCount = 0;

            UWorld.Zombies.ForEach( zombie =>
            {
                if ( zombie.isDead ) return;
                ZombieManager.sendZombieDead( zombie, Vector3.zero );
                killedCount++;
            });

            EssLang.KILLED_ZOMBIES.SendTo( source, killedCount );
        }
Example #48
0
        public override void OnExecute( ICommandSource src, ICommandArgs args )
        {
            switch ( args.Length )
            {
                case 0:
                    if ( src.IsConsole )
                    {
                        ShowUsage( src );
                        return;
                    }

                    var eyePos = src.ToPlayer().GetEyePosition( 3000 );

                    if ( eyePos.HasValue )
                    {
                        Explode( eyePos.Value );
                    }
                    break;

                case 1:
                    var found = UPlayer.TryGet( args[0], player =>
                        Explode( player.Position )
                    );

                    if ( !found )
                    {
                        EssLang.PLAYER_NOT_FOUND.SendTo( src, args[0] );
                    }
                    break;

                case 3:
                    var pos = args.GetVector3( 0 );

                    if ( pos.HasValue )
                    {
                        Explode( pos.Value );
                    }
                    else
                    {
                        EssLang.INVALID_COORDS.SendTo( src, args[0], args[1], args[2] );
                    }
                    break;

                default:
                    ShowUsage( src );
                    return;
            }
        }
Example #49
0
        public override void before_each_spec()
        {
            var dependencyResolver = MockRepository.GenerateStub<IDependencyResolver>();
            fileSystemProvider = MockRepository.GenerateStub<IFileSystemProvider>();
            packageBuilder = MockRepository.GenerateStub<IPackageCommand>();
            rootPackageTree = MockRepository.GenerateStub<IPackageTree>();
            buildMetaData = MockRepository.GenerateStub<IBuildMetaData>();

            commandArgs = new CommandArgs("horn", false, null, false, null);

            dependencyResolver.Stub(x => x.HasComponent<ICommandArgs>()).Return(true);

            dependencyResolver.Stub(x => x.Resolve<ICommandArgs>()).Return(commandArgs);

            dependencyResolver.Stub(x => x.Resolve<IPackageCommand>("install")
                ).Return(packageBuilder);

            IoC.InitializeWith(dependencyResolver);

            rootPackageTree.Stub(x => x.Result).Return(new DirectoryInfo(@"z:\horn"));

            buildMetaData.ProjectInfo= new Dictionary<string, object>();

            rootPackageTree.Stub(x => x.GetAllPackageMetaData()).Return(new List<IBuildMetaData> {buildMetaData});

            rootPackageTree.Stub(x => x.Name).Return("horn");

            var category = new Category(null, rootPackageTree);

            fileSystemProvider.Stub(x => x.GetFiles(Arg<DirectoryInfo>.Is.TypeOf, Arg<string>.Is.TypeOf)).Return(
                new List<FileInfo>
                    {
                        new FileInfo(string.Format("horn-{0}.zip",
                                                   new DateTime(2009, 10, 30).ToString(FileSystemProvider.FileDateFormat))),
                        new FileInfo(string.Format("horn-{0}.zip",
                                                   new DateTime(2009, 10, 29).ToString(FileSystemProvider.FileDateFormat))),
                        new FileInfo(string.Format("horn-{0}.zip",
                                                   new DateTime(2009, 10, 31).ToString(FileSystemProvider.FileDateFormat)))
                    }.ToArray());

            package = new PackageDouble(category, buildMetaData);

            string zipFileName = string.Format("{0}-{1}.zip", package.Name, DateTime.Now.ToString(FileSystemProvider.FileDateFormat));

            fileSystemProvider.Stub(
                x => x.ZipFolder(Arg<DirectoryInfo>.Is.TypeOf, Arg<DirectoryInfo>.Is.TypeOf, Arg<string>.Is.TypeOf)).
                Return(new FileInfo(zipFileName));
        }
 public override void OnExecute( ICommandSource source, ICommandArgs parameters )
 {
     if ( parameters.IsEmpty || parameters.Length > 1 )
     {
         ShowUsage( source );
     }
     else if ( !EssProvider.WarpManager.Contains( parameters[0].ToString() ) )
     {
         EssLang.WARP_NOT_EXIST.SendTo( source, parameters[0] );
     }
     else
     {
         EssProvider.WarpManager.Delete( parameters[0].ToString() );
         EssLang.WARP_REMOVED.SendTo( source, parameters[0] );
     }
 }
Example #51
0
        public override void OnExecute( ICommandSource source, ICommandArgs parameters )
        {
            if ( parameters.Length < 2 )
            {
                ShowUsage( source );
            }
            else
            {
                var target = parameters[0].ToPlayer;

                if ( target == null )
                {
                    EssLang.PLAYER_NOT_FOUND.SendTo( source, parameters[0] );
                }
                else
                {
                    var message = string.Format(
                        EssProvider.Config.PrivateMessageFormat,
                        source.DisplayName,
                        parameters.Join( 1 )
                    );

                    target.SendMessage( message );

                    Spies.ForEach( p =>
                    {
                        UPlayer.From( p ).SendMessage( 
                            $"Spy: ({source.DisplayName} -> {target.CharacterName}): {parameters.Join( 1 )}",
                            Color.gray 
                        );
                    } );

                    if ( Conversations.ContainsKey( source.DisplayName ) )
                    {
                        if ( !Conversations[ source.DisplayName ].Equals( target.DisplayName ) )
                        {
                            Conversations[ source.DisplayName ] = target.CharacterName;
                        }
                    }
                    else
                    {
                        Conversations.Add( source.DisplayName, target.DisplayName );
                    }
                }
            }
        }
Example #52
0
        public override void OnExecute( ICommandSource source, ICommandArgs parameters )
        {
            var displayName = source.DisplayName;

            if ( BackDict.ContainsKey( displayName ) )
            {
                source.ToPlayer().Teleport( BackDict[displayName] );

                BackDict.Remove( displayName );

                EssLang.RETURNED.SendTo( source );
            }
            else
            {
                EssLang.NOT_DIED_YET.SendTo( source );
            }
        }
Example #53
0
        /// <summary>
        /// Run a Process unit test.
        /// </summary>
        /// <param name="element">The unit test element.</param>
        /// <param name="previousUnitResults">The previous unit test results.</param>
        /// <param name="args">The command arguments passed to WixUnit.</param>
        public static void RunUnitTest(XmlElement element, UnitResults previousUnitResults, ICommandArgs args)
        {
            string arguments = element.GetAttribute("Arguments");
            string executable = element.GetAttribute("Executable");
            string expectedReturnCode = element.GetAttribute("ExpectedReturnCode");
            string workingDirectory = element.GetAttribute("WorkingDirectory");

            bool compareReturnCodes = false;

            // Check if an ExpectedReturnCode was set
            if (null != expectedReturnCode && String.Empty != expectedReturnCode)
            {
                compareReturnCodes = true;
            }

            // Set the current working directory if one was specified
            string currentDirectory = Environment.CurrentDirectory;

            if (null != workingDirectory && String.Empty != workingDirectory)
            {
                Environment.CurrentDirectory = workingDirectory;
            }

            // Run the process
            int actualReturnCode;
            ArrayList output = ToolUtility.RunTool(executable, arguments, out actualReturnCode);
            Environment.CurrentDirectory = currentDirectory;

            previousUnitResults.Output.AddRange(output);

            // Check the results
            if (compareReturnCodes)
            {
                if (actualReturnCode == Convert.ToInt32(expectedReturnCode))
                {
                    previousUnitResults.Output.Add(String.Format("Actual return code {0} matched expected return code {1}", actualReturnCode, expectedReturnCode));
                }
                else
                {
                    previousUnitResults.Errors.Add(String.Format("Actual return code {0} did not match expected return code {1}", actualReturnCode, expectedReturnCode));
                    previousUnitResults.Output.Add(String.Format("Actual return code {0} did not match expected return code {1}", actualReturnCode, expectedReturnCode));
                }
            }
        }
Example #54
0
        public override void OnExecute( ICommandSource source, ICommandArgs parameters )
        {
            if ( parameters.IsEmpty || parameters.Length > 1 )
            {
                if ( source.IsConsole )
                    source.SendMessage( "Use /ping [player]" );
                else
                    EssLang.PING.SendTo( source, source.ToPlayer().Ping );
            }
            else
            {
                var target = parameters[0].ToPlayer;

                if ( target == null )
                    EssLang.PLAYER_NOT_FOUND.SendTo( source, parameters[0] );
                else
                    EssLang.PING_OTHER.SendTo( source, target.DisplayName, target.Ping );
            }
        }
        public override void OnExecute( ICommandSource source, ICommandArgs parameters )
        {
            var player = source.ToPlayer();

            if ( parameters.IsEmpty )
            {
                ShowUsage( source );
            }
            else if ( parameters[0].Is( "all" ) )
            {
                player.RocketPlayer.Inventory.Items.ToList().ForEach( item => Repair( player, item ) );
                EssLang.ALL_REPAIRED.SendTo( source );
            }
            else if ( parameters[0].Is( "hand" ) )
            {
                Repair( player, player.RocketPlayer.Inventory.Items[0] );
                EssLang.HAND_REPAIRED.SendTo( source );
            }
        }
Example #56
0
        /// <summary>
        /// Run a Dark unit test.
        /// </summary>
        /// <param name="element">The unit test element.</param>
        /// <param name="previousUnitResults">The previous unit test results.</param>
        /// <param name="args">The command arguments passed to WixUnit.</param>
        public static void RunUnitTest(XmlElement element, UnitResults previousUnitResults, ICommandArgs args)
        {
            string arguments = element.GetAttribute("Arguments");
            string expectedErrors = element.GetAttribute("ExpectedErrors");
            string expectedWarnings = element.GetAttribute("ExpectedWarnings");
            string tempDirectory = element.GetAttribute("TempDirectory");
            string toolsDirectory = element.GetAttribute("ToolsDirectory");

            string toolFile = Path.Combine(toolsDirectory, "dark.exe");
            StringBuilder commandLine = new StringBuilder(arguments);

            // handle wixunit arguments
            if (args.NoTidy)
            {
                commandLine.Append(" -notidy");
            }

            // determine the correct extension for the decompiled output
            string extension = ".wxs";
            if (0 <= arguments.IndexOf("-xo"))
            {
                extension = ".wixout";
            }

            // handle any previous outputs
            string outputFile = null;
            foreach (string databaseFile in previousUnitResults.OutputFiles)
            {
                commandLine.AppendFormat(" \"{0}\"", databaseFile);

                outputFile = Path.Combine(tempDirectory, String.Concat("decompiled_", Path.GetFileNameWithoutExtension(databaseFile), extension));
            }
            previousUnitResults.OutputFiles.Clear();

            commandLine.AppendFormat(" \"{0}\" -x \"{1}\"", outputFile, tempDirectory);
            previousUnitResults.OutputFiles.Add(outputFile);

            // run the tool
            ArrayList output = ToolUtility.RunTool(toolFile, commandLine.ToString());
            previousUnitResults.Errors.AddRange(ToolUtility.GetErrors(output, expectedErrors, expectedWarnings));
            previousUnitResults.Output.AddRange(output);
        }
        public override void OnExecute( ICommandSource source, ICommandArgs parameters )
        {
            if ( parameters.IsEmpty )
            {
                if ( source.IsConsole )
                {
                    ShowUsage( source );
                    return;
                }

                var currentVeh = source.ToPlayer().CurrentVehicle;

                if ( currentVeh != null )
                {
                    VehicleManager.sendVehicleFuel( currentVeh, currentVeh.asset.fuel );

                    EssLang.VEHICLE_REFUELED.SendTo( source );
                }
                else
                {
                    EssLang.NOT_IN_VEHICLE.SendTo( source );
                }
            }
            else if ( parameters[0].Is( "all" ) )
            {
                var allVehicles = UWorld.Vehicles;

                lock ( allVehicles )
                {
                    allVehicles
                    .Where( veh => !veh.isExploded && !veh.isUnderwater)
                    .ToList()
                    .ForEach( vehicle =>
                    {
                        VehicleManager.sendVehicleFuel( vehicle, vehicle.asset.fuel );
                    });

                    EssLang.VEHICLE_REFUELED_ALL.SendTo( source );
                }
            }
        }
Example #58
0
        public PackageBuilder(IGet get, IProcessFactory processFactory, ICommandArgs commandArgs)
        {
            if (get == null)
            {
                throw new ArgumentNullException("get");
            }

            if (processFactory == null)
            {
                throw new ArgumentNullException("processFactory");
            }

            if (commandArgs == null)
            {
                throw new ArgumentNullException("commandArgs");
            }

            this.get = get;
            this.processFactory = processFactory;
            this.commandArgs = commandArgs;
        }
Example #59
0
        public override void OnExecute( ICommandSource source, ICommandArgs parameters )
        {
            if ( parameters.IsEmpty )
            {
                ShowUsage( source );
            }
            else
            {
                var target = parameters[0].ToPlayer;

                if ( target == null )
                {
                    EssLang.PLAYER_NOT_FOUND.SendTo( source, parameters[0] );
                }
                else
                {
                    target.Kill();
                    EssLang.KILL_PLAYER.SendTo( source, target.DisplayName );
                }
            }
        }
        public override void OnExecute( ICommandSource source, ICommandArgs parameters )
        {
            var count = 0;

            UWorld.Zombies.ForEach( zombie =>
            {
                ZombieManager.sendZombieAlive(
                    zombie,
                    zombie.type,
                    (byte) zombie.speciality,
                    zombie.shirt,
                    zombie.pants,
                    zombie.hat,
                    zombie.gear,
                    zombie.transform.position,
                    0
                );
                count++;
            });

            EssLang.RESPAWNED_ZOMBIES.SendTo( source, count );
        }