public void UpdateButtons() { TileMoveable moveable = playerController.selectedGameObject.GetComponent <TileMoveable>(); playerController.confirmButton.gameObject.SetActive(moveable.CurrentPath != null && moveable.CurrentMoveDistance != 0.0f); playerController.cancelButton.gameObject.SetActive(false); }
public void SelectObject(GameObject go) { this.displayText.text = go.name; tileMoveable = go.GetComponent <TileMoveable>(); discreteSpeedMoveable = go.GetComponent <DiscreteSpeedMoveable>(); if (tileMoveable != null) { if (tileMoveable.MaxMoveDistance == tileMoveable.CurrentMoveDistance) { UnlockSpeedPanel(); } else { LockSpeedPanel(); } } UpdatePotentialSlider(); UpdateDiscreteSpeedSlider(); turret = go.GetComponent <TurretScript>(); if (turret != null) { } }
public void Select(TileMoveable newSelection) { if (newSelection != null) { this.ShowControls(); //Unselect the old model?! this.tileMoveable = newSelection; this.tileMoveable.ghostTransform.gameObject.SetActive(true); this.ghostCollider = this.tileMoveable.ghostTransform.GetComponent <BoxCollider>(); // todo: Do I want to grab ownership / become the parent of the ghostTransform, // Then give it back after? this.tileMoveable.ghostTransform.parent = this.transform; if (this.tileMoveable.CurrentPath == null || this.tileMoveable.CurrentPath.path.Count == 0) { SetPositionAndDirection(tileMoveable.transform.position, tileMoveable.transform.forward); this.ClearPathLines(); } else { UpdatePathLines(); Vector3 finalPos; Vector3 finalDir; this.tileMoveable.CurrentPath.GetEndDirAndPos(out finalDir, out finalPos); Debug.Log("FinalPos:" + finalPos); SetPositionAndDirection(finalPos, finalDir); } } else { this.HideControls(); // this.gameObject.SetActive(false); } }
public void OnScreenClick(PointerEventData pointerData) { RaycastHit hitInfo; Ray ray = Camera.main.ScreenPointToRay(pointerData.position); if (Physics.Raycast(ray, out hitInfo, 1000.0f, playerController.unitLayer) && pointerData.pointerId == kLeftMouse) { playerController.SelectObject(hitInfo.transform.gameObject); TileMoveable moveable = playerController.selectedGameObject.GetComponent <TileMoveable>(); controlWidget.Select(moveable); rangeCircle.UseForMoveable(moveable); turnRadiusCircles.UseForMoveable(moveable); } else { controlWidget.OnPointerClick(pointerData); } }
public void UseForMoveable(TileMoveable moveable) { selectedMoveable = moveable; UpdateToMoveable(); }