// Use this for initialization void Start() { boxTools = new BoxTools(0, 3, this.OnBoxMerged); actions = new[] { UserActionFactory.Left(boxTools.MergeLeft), UserActionFactory.Right(boxTools.MergeRight), UserActionFactory.Up(boxTools.MergeUp), UserActionFactory.Down(boxTools.MergeDown), }; this.stateSavables = new StateSavable[] { score, playTime }; MouseState.InitCurrent(); gameConfig = GameConfigTools.Difficulty2Config(GameState.Current.Difficulty); bombCount = 0; SetProgressActive(true); SetDefaultMaxTimeRemain(); ResetTimer(); score.Reset(); AddBox(); UpdatePosition(); }
void OnGUI() { if (!_originWorldMousePoint.HasValue || _originWorldMousePoint.Value == Camera.main.ScreenToWorldPoint(Input.mousePosition)) { return; } Vector3 originScreenPoint = Camera.main.WorldToScreenPoint(_originWorldMousePoint.Value); Vector2 pos = new Vector2(originScreenPoint.x, Screen.height - originScreenPoint.y); Vector2 size = new Vector2(Input.mousePosition.x - originScreenPoint.x, originScreenPoint.y - Input.mousePosition.y); Rect rect = new Rect(pos, size); BoxTools.DrawRect(rect, _BoxColor); BoxTools.DrawRectBorder(rect, 1f, Color.blue); }