private void DeselectUnits() { selectedObj = null; UI.CloseAllPanels(); for (int i = 0; i < selectedObjects.Count; i++) { // Grabs all objects in selected array and deselects them selectedInfo = selectedObjects[i].GetComponent <UnitSelection>(); selectedInfo.selected = false; } selectedObjects.Clear(); GameObject[] selectedIndicators = GameObject.FindGameObjectsWithTag("SelectedIndicator"); if (selectedIndicators.Length > 0) { // UnitSelection indicators for (int j = 0; j < selectedIndicators.Length; j++) { // Turns the unit UnitSelection indicator off selectedIndicators[j].transform.gameObject.SetActive(false); // Deselects the unit if (selectedIndicators[j].transform.parent.GetComponent <UnitSelection>()) { selectedIndicators[j].transform.parent.GetComponent <UnitSelection>().selected = false; } } } isSelected = false; }
void OnTriggerEnter(Collider other) { print("Trigger Enter Triggered. Other is: " + other.ToString()); if (other.gameObject != null) { //If the object we're colliding with is a unitSelection bubble... - Moore UnitSelection usScript = other.transform.parent.GetComponent <UnitSelection>(); if (usScript != null) { //Then we add ourselves to the selection and start following the player. But only if we're not a player. if (shipType != ShipType.Alpha && shipType != ShipType.Node) { CommandHandler.OnCommand += HandleCommandEvent; UnitSelection.OnDeselect += HandleDeselectEvent; isSelected = true; state = State.FollowPlayer; UpdateStatusIndicator(); } } //If the object we're colliding with is a Resonator AoE bubble... - Moore ResonatorEffectAreaBehavior reab = other.GetComponent <ResonatorEffectAreaBehavior>(); if (reab != null) { print("Trigger Entered. 'Other' is: " + reab.ToString()); reab.OnResonanceChange += SetRateModifer; print(rateModifier); } } }
void Awake() { groundMask = LayerMask.GetMask("Ground"); moveCommand = GetComponent <MoveCommand>(); unitSelection = GetComponent <UnitSelection>(); command = moveCommand.MoveUnits; }
public RectanglePattern(Point location, UnitSelection selection, int width, int spacing, int orientation) : base(location, selection) { this.width = width; this.spacing = spacing; this.orientation = orientation; }
// Update is called once per frame void Update() { var numberOfColliders = collidedObjects.Count; if (numberOfColliders > 0) { } if (availableResource <= 0) { // Need to add isGathering = false foreach (Collider collidedObject in collidedObjects) { UnitController unit = collidedObject.gameObject.GetComponent <UnitController>(); UnitSelection unitUnitSelection = collidedObject.gameObject.GetComponent <UnitSelection>(); if (unit) { if (unit.unitType == "Worker") { unitUnitSelection.isGathering = false; } } } Destroy(gameObject); } }
void Select() { if (currentCharacter == null) { units[highlightedCharacter].Select(true); slots[highlightedCharacter].Select(true); descriptionMenu.SetCharacter(highlightedCharacter); characterMenu.SetCharacter(highlightedCharacter); } else { units[currentCharacter].Select(true); slots[currentCharacter].Select(true); descriptionMenu.SetCharacter(currentCharacter); characterMenu.SetCharacter(currentCharacter); selectedUnit = units[currentCharacter]; //fade out other units foreach (UnitSelection u in units.Values) { if (u == selectedUnit) { continue; } u.SetAlphaMoving(0f); u.SetLightMoving(0f); u.SetRaycast(false); } //move unit to center selectedUnit.SetPositionMoving(center.anchoredPosition); } descriptionMenu.gameObject.SetActive(true); }
IEnumerator VillagerSpawn() { isTraining = true; selectedObj = inputScript.selectedObj; buildingScript = selectedObj.GetComponent <BuildingController>(); spawnPosition = new Vector3(buildingScript.location.x, buildingScript.location.y, buildingScript.location.z - 10f); nextSpawnTime = Time.time + spawnDelay; for (i = 1; i < 11; i++) { yield return(new WaitForSeconds(1)); } isTraining = false; var random1 = Random.Range(0, firstNames.Length); var random2 = Random.Range(0, lastNameFirst.Length); var random3 = Random.Range(0, lastNameSecond.Length); progressIcon = GameObject.Find("ProgressIcon").GetComponent <Image>(); workerUC = villagerPrefab.GetComponent <UnitController>(); workerUnitSelection = villagerPrefab.GetComponent <UnitSelection>(); progressIcon.sprite = workerUC.unitIcon; workerUC.unitName = firstNames[random1] + " " + lastNameFirst[random2] + lastNameSecond[random3]; workerUnitSelection.owner = team; Instantiate(villagerPrefab, spawnPosition, Quaternion.identity); villagerAudio = selectedObj.GetComponent <AudioSource>(); villagerAudio.clip = villagerReporting; villagerAudio.Play(); UI.TownHallSelect(); }
// pass flags - public void MakeSelectable(UnitSelection flags) { bool active = (flags & UnitSelection.Active) == UnitSelection.Active, inactive = (flags & UnitSelection.Inactive) == UnitSelection.Inactive, upgraded = (flags & UnitSelection.Upgraded) == UnitSelection.Upgraded, notUpgraded = (flags & UnitSelection.NotUpgraded) == UnitSelection.NotUpgraded, tempUpgraded = (flags & UnitSelection.TempUpgraded) == UnitSelection.TempUpgraded, notTempUpgraded = (flags & UnitSelection.NotTempUpgraded) == UnitSelection.NotTempUpgraded, defending = (flags & UnitSelection.Defending) == UnitSelection.Defending, notDefending = (flags & UnitSelection.NotDefending) == UnitSelection.NotDefending; _units.ForEach(ui => { if (inactive && (ui.IsKO || ui.IsDefending || ui.IsPrisoner) || active && (!ui.IsKO && !ui.IsDefending && !ui.IsPrisoner) || upgraded && ui.IsUpgraded || notUpgraded && !ui.IsUpgraded || tempUpgraded && ui.isTempUpgraded || notTempUpgraded && !ui.isTempUpgraded ) { ui.EnableSelection(); } }); _selectMode = true; }
private void Awake() { _unitSelection = GetComponentInParent <UnitSelection>(); // TODO: anything better? _camera = Camera.main; _rtsControls = new Rts(); // Setup UI callbacks, TODO: must check if something cleaner with new input system var e = new EventTrigger.Entry { eventID = EventTriggerType.BeginDrag }; e.callback.AddListener(StartDraggingAnimal); triggerAnimal.triggers.Add(e); e = new EventTrigger.Entry { eventID = EventTriggerType.EndDrag }; e.callback.AddListener(StopDraggingAnimal); triggerAnimal.triggers.Add(e); e = new EventTrigger.Entry { eventID = EventTriggerType.BeginDrag }; e.callback.AddListener(StartDraggingPlant); triggerPlant.triggers.Add(e); e = new EventTrigger.Entry { eventID = EventTriggerType.EndDrag }; e.callback.AddListener(StopDraggingPlant); triggerPlant.triggers.Add(e); #if UNITY_IOS || UNITY_ANDROID && !UNITY_EDITOR UnityEngine.InputSystem.EnhancedTouch.EnhancedTouchSupport.Enable(); #endif }
//bool displayGUI = false; //Progress progressObj; private void Awake() { var playerManager = GameObject.Find("Player Manager"); selection = playerManager.GetComponent <UnitSelection>(); manager = playerManager.GetComponent <GUIManager>(); gui.type = "Building"; if (buildingType == BuildingType.ProgressBuilding) { InvokeRepeating("Progress", 0, progressRate); } else if (buildingType == BuildingType.CompleteBuilding) { gameObject.name = name; gui.Awake(gameObject); for (int x = 0; x < techEffect.Length; x++) { Faction.Tech[techEffect[x].index].AddListener(gameObject); if (Faction.Tech[techEffect[x].index].active) { Upgraded(Faction.Tech[techEffect[x].index].name); } } } grid = GameObject.Find("UGrid").GetComponent <UGrid>(); healthObj = GetComponent <Health>(); //progressObj = GetComponent<Progress>(); }
public void OnPointerExit(PointerEventData eventData) { if (UnitSelection.Get().GetStart() != this && UnitSelection.Get().GetEnd() != this) { meshRenderer.material = NormalMaterial; } name = string.Format("CubeCell({0},{1})", Position.x, Position.y); }
void OnCollisionEnter(Collision col) { selectscript = col.gameObject.GetComponent <UnitSelection>(); if (!collidedObjects.Contains(col.collider) && col.collider.tag == "Selectable" && selectscript.isGathering == true) { collidedObjects.Add(col.collider); } }
private void SaveSelectedTargetUnit(UnitSelection unitSelection) { if (savedSelection != null) { savedSelection.SetSelectionImage(UnitSelection.SelectionType.None); } savedSelection = unitSelection; }
/// <summary> /// Internal method, do not use. /// </summary> internal void GatherByWorker(List <UnitController> gatheringUnits) { if (GameObject == null) { throw new ResourceExhaustedException(this); } UnitSelection.SetTarget(gatheringUnits, GameObject, GameObject.transform.position); }
public void OnPointerEnter(PointerEventData eventData) { if (UnitSelection.Get().GetStart() != this && UnitSelection.Get().GetEnd() != this) { meshRenderer.material = HighLightedMaterial; } AudioManager.Get().PlaySound("Grid/OnMouse", 0.1f); name = name + "(OnHovering)"; }
void Start() { maxHealth = health; unitSelection = FindObjectOfType <UnitSelection>(); agent = gameObject.GetComponent <NavMeshAgent>(); agent.updateRotation = false; }
internal static void MoveToPosition(Position where, UnitController unitController) { UnitSelection.SetTarget( new List <UnitController> { unitController }, GameManager.Instance.Terrain.gameObject, PositionHelper.PositionToLocation(where)); }
public void InitSupportClasses2() { sight = this.gameObject.AddComponent <UnitSight>(); // sight.InitSight(this, overlord, assets.sightSphere, sightRadius, mainMap.tileWidth); move = this.gameObject.AddComponent <UnitMovement> (); // move.InitMovement(mainMap, assets, baseStats.speed, baseStats.moveCosts, tileLocation); selection = this.gameObject.AddComponent <UnitSelection> (); //selection.InitSelection (this); }
public void MakeSelectable(UnitSelection flags) { Disable(); getUnitTypeUI(currentPlayer).ForEach(ui => ui.MakeSelectable(flags)); getUnitTypeUI(currentPlayer).ForEach(ui => ui.Maximise()); //indicator arrow resetSelection(); }
private void Start() { unitSelection = FindObjectOfType <UnitSelection>(); handler = FindObjectOfType <RunHandler>(); if (unit == handler.curHero) { unitSelection.CreateDisplay(unit, this.GetComponent <Button>()); } }
public void CellSelected(CubeCell cubeCell) { CurrentSelected = cubeCell; //Debug.Log("单元格选中:" + cubeCell.Position.x + "," + cubeCell.Position.y); if (cubeCell.CurrentUnit != null) { return; } UnitSelection.Get().ClearSelection(); UIManager.Get().PushPanel(PanelTypes.UnitGenerationPanel); }
private void Awake() { place = gameObject.GetComponent <BuildingPlacement>(); select = gameObject.GetComponent <UnitSelection>(); miniMap = GameObject.Find("MiniMap").GetComponent <MiniMap>(); faction = GameObject.Find("Faction Manager") .GetComponent <FactionManager>() .FactionList[select.FactionIndex] .GetComponent <Faction>(); ReconfigureWindows(); }
public void MakeSelectable(UnitSelection flags) { Disable(); getUnitTypeUI(currentPlayer).ForEach(ui => ui.MakeSelectable(flags)); getUnitTypeUI(currentPlayer).ForEach(ui => ui.Maximise()); //indicator arrow resetSelection(); }
private void Awake() { unitSelection = GetComponent <UnitSelection>(); if (isRealPlayer && PhotonNetwork.IsConnected) { photonView.Owner.TagObject = this; } playerNumber = gameManager.allPlayers.Count; gameManager.allPlayers.Add(this); }
public static void TurnOffUnitSelections(UnitSelection exception) { foreach (UnitSelection unitSelection in unitSelectionsStatic) { if (unitSelection != exception) { unitSelection.frontCard.SetActive(false); unitSelection.gameObject.SetActive(false); } } }
public void Start(GameObject obj) { select = GameObject.Find("Player Manager").GetComponent <UnitSelection>(); if (type == "Unit") { select.AddUnit(obj); } else if (type == "Building") { select.AddBuilding(obj); } }
void Start() { gameManger = FindObjectOfType <GameManager> (); unitSelection = FindObjectOfType <UnitSelection> (); int n = transform.Find("UnitButtons").childCount; unitButtons = new GameObject[n]; for (int i = 0; i < n; i++) { unitButtons [i] = transform.Find("UnitButtons").GetChild(i).gameObject; } changeTeamButton = transform.Find("ChangeTeamButton").gameObject; }
private void Start() { _unitSelection = GetComponentInParent <UnitSelection>(); // TODO: anything better? Gm.instance.MenuStateStarted += () => { _unitSelection.disable = true; }; Gm.instance.ExperienceStateStarted += () => { _unitSelection.disable = false; }; Gm.instance.PlayStateStarted += () => _unitSelection.disable = false; }
/// <summary> /// State enter event. Initializes state internal variables and prepares view elements. /// </summary> public override void Enter() { base.Enter(); GameManager manager = GameManager.Instance(); ui = manager.GameUIInstance.HelpUIInstance; if (unitSelection == null) { unitSelection = new UnitSelection(ui.UnitsTabPane); } InferSelectedItem(); AttachEventHandlers(); ui.Show(); }
public static GameObject PlaceProgressBuilding(Building building, List <UnitController> builderUnits, int factionIndex, Position position, Quaternion rotation, ResourceManager resourceManager) { Vector3 location = PositionHelper.PositionToLocation(position); try { BuildingHelper.CheckValidPlacement(building, position, location, false); } catch (Exception) { // Visualizing the error placement if (GameManager.Instance.Debug) { building.ClosePoints(GameManager.Instance.Grid, position.PointLocation); } throw; } for (int x = 0; x < building.cost.Length; x++) { if (building.cost[x] > 0 && resourceManager.resourceTypes[x].amount < building.cost[x]) { throw new InvalidOperationException( "Not enough resources for placing the " + building + " building"); } } for (int x = 0; x < building.cost.Length; x++) { if (building.cost[x] > 0) { resourceManager.resourceTypes[x].amount -= building.cost[x]; } } GameObject buildingObject; if (building.autoBuild) { buildingObject = BuildingHelper.InstantiateProgressBuilding( building, building.obj, factionIndex, position, rotation) .gameObject; } else { buildingObject = BuildingHelper.InstantiateProgressBuilding( building, building.progressObj, factionIndex, position, rotation) .gameObject; UnitSelection.SetTarget(builderUnits, buildingObject, buildingObject.transform.position); } return(buildingObject); }
/// <summary> /// Clears attack panels and corresponding buttons. /// </summary> private void ClearAttackPanels() { UnitSelection.DetectTarget(); UnitSelection.detectedEnemy = null; if (UnitSelection.enemySelector != null) { UnitSelection.enemySelector.SetActive(false); } foreach (GameObject actionBtn in actionButtons) { Destroy(actionBtn); } actionButtons.Clear(); }
void Start() { unit = GetComponent <Unit>(); unitSelection = FindObjectOfType <UnitSelection>(); canvas = unitSelection.hudCanvas.transform; healthBar = Instantiate(healthBarPrefab).GetComponent <HealthBar> (); healthBar.canvasRect = canvas.GetComponent <RectTransform>(); healthBar.transform.SetParent(canvas); healthBar.maxHealth = maxHealth; healthBar.entity = healthBarPosition; healthBar.gameObject.SetActive(unit.isSelected); health = maxHealth; isAlive = true; }
public CirclePattern(Point location, UnitSelection selection, int radius, int rotation) : base(location, selection) { this.radius = radius; this.rotation = rotation; }
// Use this for initialization void Start() { selection = GameObject.Find("Player Manager").GetComponent<UnitSelection>(); manager = GameObject.Find("Player Manager").GetComponent<GUIManager>(); gui.type = "Building"; g = GameObject.Find("Player Manager").GetComponent<GUIManager>().group; if(buildingType == BuildingType.ProgressBuilding){ InvokeRepeating("Progress", 0, progressRate); } else if(buildingType == BuildingType.CompleteBuilding){ gameObject.name = name; gui.Start(gameObject); for(int x = 0; x < techEffect.Length; x++){ g.tech[techEffect[x].index].AddListener(gameObject); if(g.tech[techEffect[x].index].active){ Upgraded(g.tech[techEffect[x].index].name); } } } grid = GameObject.Find("UGrid").GetComponent<UGrid>(); healthObj = GetComponent<Health>(); progressObj = GetComponent<Progress>(); }
public void ShowUnitSelectionUI(UnitSelection flags) { _ArmyUI.Show(); _ArmyUI.MakeSelectable(flags); Disable(); }
public void Start() { if(resourceManager == null){ resourceManager = gameObject.GetComponent<ResourceManager>(); } if(fog == null){ GameObject nObj; nObj = GameObject.Find("Fog"); if(nObj) fog = nObj.GetComponent<Fog>(); } if(unitSelect == null){ unitSelect = gameObject.GetComponent<UnitSelection>(); } if(grid == null){ GameObject nObj; nObj = GameObject.Find("UGrid"); if(nObj) grid = nObj.GetComponent<UGrid>(); } }
public UnitGroupPattern(Point location, UnitSelection selection) { this.location = location; this.selection = selection; }
void Start() { if(place == null){ place = gameObject.GetComponent<BuildingPlacement>(); } if(select == null){ select = gameObject.GetComponent<UnitSelection>(); } if(resourceManager == null){ resourceManager = gameObject.GetComponent<ResourceManager>(); } ReconfigureWindows(); }
public void Start(GameObject obj) { select = GameObject.Find("Player Manager").GetComponent<UnitSelection>(); if(type == "Unit"){ select.AddUnit(obj); } else if(type == "Building"){ select.AddBuilding(obj); } }
void Start() { selection = GameObject.Find("Player Manager").GetComponent<UnitSelection>(); vision = gameObject.GetComponent<VisionSignal>(); miniMap = gameObject.GetComponent<MiniMapSignal>(); gui.type = "Unit"; mGroup = GameObject.Find("Faction Manager").GetComponent<GroupManager>().groupList[group].GetComponent<Group>(); gui.Start(gameObject); for(int x = 0; x < techEffect.Length; x++){ mGroup.tech[techEffect[x].index].AddListener(gameObject); if(mGroup.tech[techEffect[x].index].active){ Upgraded(mGroup.tech[techEffect[x].index].name); } } gameObject.name = name; healthObj = GetComponent<Health>(); }