/// <summary> /// コンストラクタ /// </summary> /// <param name="position">操作対象プレイヤー</param> /// <param name="touchAction">タッチアクション</param> /// <param name="camera">カメラ</param> public BoardTouchController(Pong.PlayerConstant.Position position, Mhl.ISingleTouchActionable touchAction, UnityEngine.Camera camera) { this.position = position; this.touchAction = touchAction; this.camera = camera; }
/// <summary> /// ボード情報を作成 /// </summary> /// <param name="position">対象のボードの位置</param> /// <returns>ボード情報</returns> private BoardInfo CreateBoardInfo(Pong.PlayerConstant.Position position) { UnityEngine.Assertions.Assert.IsNotNull(boardHeights); if (position == Pong.PlayerConstant.Position.Left) { UnityEngine.Assertions.Assert.IsNotNull(boardLeftRigidbody); return(new BoardInfo(boardHeights[(int)position], ToVector3(boardLeftRigidbody.position))); } else { UnityEngine.Assertions.Assert.IsNotNull(boardRightRigidbody); return(new BoardInfo(boardHeights[(int)position], ToVector3(boardRightRigidbody.position))); } }
/// <summary> /// ボード情報の設定 /// </summary> /// <param name="pos">設定するボードの位置</param> private void SetBoardInfo(Pong.PlayerConstant.Position pos) { // Rigidbodyの取得とBoxCllider2DからHeightの取得 BoxCollider2D bc = null; if (pos == Pong.PlayerConstant.Position.Left) { bc = boardLeft.GetComponent <BoxCollider2D>(); boardLeftRigidbody = boardLeft.GetComponent <Rigidbody2D>(); UnityEngine.Assertions.Assert.IsNotNull(boardLeftRigidbody); } else { bc = boardRight.GetComponent <BoxCollider2D>(); boardRightRigidbody = boardRight.GetComponent <Rigidbody2D>(); UnityEngine.Assertions.Assert.IsNotNull(boardRightRigidbody); } UnityEngine.Assertions.Assert.IsNotNull(bc); boardHeights[(int)pos] = bc.size.y; }
public BoardCpu2Controller(Pong.PlayerConstant.Position position) { this.position = position; }
/// <summary> /// プレイヤーのタイプをセット /// </summary> /// <param name="position">対象プレイヤーの位置</param> /// <param name="type">タイプ</param> public void SetPlayerType(Pong.PlayerConstant.Position position, Pong.PlayerConstant.Type type) { playerTypes[(int)position] = type; }
/// <summary> /// プレイヤーのスコアを取得 /// </summary> /// <param name="position">取得対象プレイヤー</param> /// <returns>プレイヤーのスコア</returns> public int Get(Pong.PlayerConstant.Position position) { UnityEngine.Assertions.Assert.AreEqual(scores.Length, PlayerConstant.Count); return(scores[(int)position].Get()); }
/// <summary> /// 1点加算する /// </summary> /// <param name="position">加算するプレイヤー</param> public void Add(Pong.PlayerConstant.Position position) { UnityEngine.Assertions.Assert.AreEqual(scores.Length, PlayerConstant.Count); scores[(int)position].Add(1); }