void Start() { cAuto = GetComponent <CameraAutoMove> (); cResp = GetComponent <CameraResponder> (); CameraHeight = cameraHeight; /* * UserControlManager.Instance.RegisterOnSelectedCallback( (c) => { * cAuto.MoveCameraParallelToZeroPlane(c.transform.position, 0.2f); * * }); */ }
void Start() { if (instance != null) { Debug.LogError("There should not be two mouse managers"); } instance = this; camCont = Camera.main.GetComponent <CameraControls> (); camAuto = Camera.main.GetComponent <CameraAutoMove> (); hexOutliner = Instantiate(UIHexBuilder.Instance.flatHexPrefab); hexOutliner.name = "Cursor"; hexOutliner.SetActive(false); hexOutliner.GetComponent <MeshRenderer> ().material.color = Color.green; //Control Modes controlModes = new ControlMode[6]; controlModes [(int)ControlModeEnum.Observe] = new ControlMode( type: ControlModeEnum.Observe, onMouseOver: (hex) => { }, onMouseNotOverMap: () => { }, onLeftClick: (hex) => { }, onRightClick: (hex) => { }, onTabPressed: () => { }, onEnteringMode: () => { }, onLeavingMode: () => { }, autoOnly: false ); controlModes [(int)ControlModeEnum.Move] = new ControlMode( type: ControlModeEnum.Move, onMouseOver: (hex) => { MovementMouseUI(hex); }, onMouseNotOverMap: () => { DisableMoveUI(); }, onLeftClick: (hex) => { SelectHex(hex); }, onRightClick: (hex) => { MoveSelectedToHex(hex); }, onTabPressed: () => { if (selected != null) { SelectNext(selected); } }, onEnteringMode: () => { SelectFirst(); }, onLeavingMode: () => { DisableMoveUI(); if (selected != null) { selected.HideMovementHexes(); } }, autoOnly: false ); //Placement PlacementMode pm = new PlacementMode(TeamManager.Instance.TeamsInMatch); controlModes [(int)ControlModeEnum.Placement] = new ControlMode( type: ControlModeEnum.Placement, onMouseOver: (hex) => { //if over valid hex, green & show ghost of model, else red pm.PlacementUI(hex); }, onMouseNotOverMap: () => { pm.DisablePlacementUI(); }, onLeftClick: (hex) => { pm.PlaceContestant(hex); //or pick up previously placed contestant }, onRightClick: (hex) => { //perhaps remove contestant? }, onTabPressed: () => { //cycle through contestants }, onEnteringMode: () => { //select first contestant - which is done by constructor }, onLeavingMode: () => { pm.EraseUI(); }, autoOnly: false ); }