Example #1
0
    public void UnitCommands()
    {
        GameObject newObj;

        foreach (UnitCommands command in Enum.GetValues(typeof(UnitCommands)))
        {
            if (command == global::UnitCommands.Move)
            {
                newObj = (GameObject)Instantiate(prefab, transform);
                newObj.GetComponent <CommandUiSender>().SetCommand(new MoveCommand());
                UnitPanel.Add(BtnDecorator.Decorate(newObj));
            }
            if (command == global::UnitCommands.Hold)
            {
                newObj = (GameObject)Instantiate(prefab, transform);
                newObj.GetComponent <CommandUiSender>().SetCommand(new StopCommand());
                UnitPanel.Add(BtnDecorator.Decorate(newObj));
            }
            if (command == global::UnitCommands.Build || command == global::UnitCommands.Repair && firstUnit.GetComponent <RtsObject>().unitType == UnitType.Worker)
            {
                newObj = (GameObject)Instantiate(prefab, transform);
                newObj.GetComponent <CommandUiSender>().SetCommand(new MoveCommand());
                UnitPanel.Add(BtnDecorator.Decorate(newObj));
            }
        }

        if (firstUnit.GetComponent <RtsObject>().unitType == UnitType.Worker)
        {
            newObj = (GameObject)Instantiate(prefab, transform);
            newObj.GetComponent <CommandUiSender>().SetCommand(new OpenBuildCommand());
            UnitPanel.Add(BtnDecorator.BuildDecorate(newObj));
        }
    }
Example #2
0
    public void CreateBuildingsPanel()
    {
        isBuildingPanelOpen = true;
        ClearUnitPanel();
        GameObject newObj;

        foreach (var item in GameManager.main.gameObject.GetComponent <Faction>().GetBuildableBuildings())
        {
            newObj = (GameObject)Instantiate(prefab, transform);
            BuildCommand buildCommand = new BuildCommand(item.keyBind);
            buildCommand.SetUnit(item.Prefab);
            newObj.GetComponent <CommandUiSender>().SetCommand(buildCommand);
            newObj.GetComponent <Image>().sprite = item.ItemImage;
            UnitPanel.Add(BtnDecorator.BuildDecorate(newObj));
        }

        //newObj = (GameObject)Instantiate(prefab, transform);
    }