Пример #1
0
    public override bool Execute(string command, string[] args, Composer composer)
    {
        this.composer = composer;
        composer.setTypePermission(false);

        GameManager gm     = GameManager.Instance();
        HackManager hm     = HackManager.Instance();
        Player      player = gm.getPlayer();
        List <Hack> hacks  = hm.getHacksForPlayer(player);

        if (args.Length == 2)
        {
            string id = args [1];
            try {
                int intId = Int32.Parse(id);
                foreach (Hack hack in hacks)
                {
                    if (hack.getId() == intId)
                    {
                        if (hack.canHack(player))
                        {
                            hm.setCurrentHack(hack);
                            current = new HackingEvent(composer, hack);
                            composer.StartEvent(current);
                            return(true);
                        }
                        else
                        {
                            print("/-------------------------\\");
                            print("|----- UPGRADE NEEDED ----|");
                            print("|- BUY IT BEFORE HACKING -|");
                            print("\\-------------------------/");
                            print("");
                            composer.setTypePermission(true);
                            return(true);
                        }
                    }
                }
                print("Hack not found. Check available jobs.");
            } catch (Exception e) {
                Debug.Log(e.StackTrace);
                return(true);
            }
        }

        if (current == null)
        {
            print("<b>Available hacks:</b>");
            if (hacks.Count == 0)
            {
                print("There are no hacking jobs available.. Try upgrading your hardware!");
                return(true);
            }

            print("To start hack, use command: hack <id>");

            foreach (Hack hack in hacks)
            {
                print("-------------------");
                print("Hacking job: <i>" + hack.getId() + "</i>");
                print("Name: <i>" + hack.getName() + "</i>");
                print("  - Description:<i> ");
                print("       " + hack.getDescription() + "</i>");
                print("  - Reward:<i> " + hack.getReward() + "$</i>");
            }

            composer.setTypePermission(true);
            return(true);
        }
        return(true);
    }
Пример #2
0
 public void clearCurrent()
 {
     this.current = null;
 }