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)); } }
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); }