Beispiel #1
0
    // Start is called before the first frame update
    void Start()
    {
        LoadTileData();
        CreateStage();
        LoadMyMoney();
        if (IsInitial == 1)
        {
            InitialCreatePlayerList();
        }
        else
        {
            Debug.Log("OK");
            CreatePlayerList();
        }
        // ターンプレイヤーの取得
        turnPlayer = playerlist[TurnPlayerManagerScript.getTurnPlayerNum() - 1];

        // 初期値はあと3歩に設定
        Text atotext = atonannpo.GetComponent <Text>();

        atotext.text = "あと3歩";

        countMove        = 0;
        countAttachMoney = 0;
    }
Beispiel #2
0
    /*
     * // 指定された位置のタイルがウイルスに感染しているならtrueを返す
     * private bool IsVirus(Vector2Int pos)
     * {
     *  var cell = tileList[pos.x, pos.y];
     *  return (cell == TileType.VIRUS_1) || (cell == TileType.VIRUS_2) || (cell == TileType.VIRUS_3) || (cell == TileType.VIRUS_4);
     * }
     */



    // 指定された方向にプレイヤーが移動できるか検証
    // 移動できる場合は移動する
    private void TryMovePlayer(ActionType direction, GameObject player)
    {
        // プレイヤーの現在地を取得
        var currentPlayerPos = playerPosTable[player];  // 任意のプレイヤーの現在地を取得

        // プレイヤーの移動先の位置を計算
        var nextPlayerPos = GetNextPositionAlong(currentPlayerPos, direction);

        // プレイヤーの移動先がステージ内ではない場合無視
        if (!IsValidPosition(nextPlayerPos))
        {
            return;
        }

        // プレイヤーの移動先に他のプレイヤーがいる場合、無視
        if (IsOtherPlayer(nextPlayerPos))
        {
            return;
        }

        // プレイヤーの移動
        player.transform.position = GetDisplayPosition(nextPlayerPos.x, nextPlayerPos.y);

        // プレイヤーの位置を更新
        playerPosTable[player] = nextPlayerPos;

        OnlyPositionList[TurnPlayerManagerScript.getTurnPlayerNum() - 1] = nextPlayerPos;

        IsSuccessAction = 1;
    }
Beispiel #3
0
 public void OnClickCenterButton()
 {
     if (1 <= countMove && countMove <= 3 && countAttachVirus == 0)  // 一歩でも歩いていたら
     {
         Vector2Int turnPlayerPos;
         turnPlayerPos = playerPosTable[turnPlayer];
         AttachVirus(turnPlayerPos, TurnPlayerManagerScript.getTurnPlayerNum());
         countAttachVirus += 1;
     }
 }
Beispiel #4
0
    // 自分のウイルスのタイルをロードする
    private void LoadMyVirus()
    {
        int i = 1;

        foreach (var pair in posVirusTable)
        {
            if (pair.Value == TurnPlayerManagerScript.getTurnPlayerNum())
            {
                GameObject myVirus = new GameObject("myVirus_" + i);
                var        sr      = myVirus.AddComponent <SpriteRenderer>();
                sr.sprite                  = virusSprite[TurnPlayerManagerScript.getTurnPlayerNum() - 1];
                sr.sortingOrder            = 3;
                myVirus.transform.position = GetDisplayPosition(pair.Key.x, pair.Key.y);
                i += 1;
                Debug.Log("aaa" + pair.Key.x);
            }
        }
    }
Beispiel #5
0
    // 自分の財産のタイルをロードする
    private void LoadMyMoney()
    {
        int i = 1;

        foreach (var pair in posMoneyTable)
        {
            if (pair.Value == TurnPlayerManagerScript.getTurnPlayerNum())
            {
                GameObject myMoney = new GameObject("myMoney_" + i);
                posMoneyObjectTable.Add(new Vector2Int(pair.Key.x, pair.Key.y), myMoney);
                var sr = myMoney.AddComponent <SpriteRenderer>();
                sr.sprite                  = MoneySprite[TurnPlayerManagerScript.getTurnPlayerNum() - 1];
                sr.sortingOrder            = 3;
                myMoney.transform.position = GetDisplayPosition(pair.Key.x, pair.Key.y);
                i += 1;
                Debug.Log("aaa" + pair.Key.x);
            }
        }
    }
Beispiel #6
0
    // Start is called before the first frame update
    void Start()
    {
        LoadTileData();
        CreateStage();
        LoadMyVirus();
        if (IsInitial == 1)
        {
            InitialCreatePlayerList();
        }
        else
        {
            Debug.Log("OK");
            CreatePlayerList();
        }
        // ターンプレイヤーの取得
        turnPlayer = playerlist[TurnPlayerManagerScript.getTurnPlayerNum() - 1];

        countMove        = 0;
        countAttachVirus = 0;
    }
Beispiel #7
0
 public void OnClickCenterButton()
 {
     if (1 <= countMove && countMove <= 3 && countAttachMoney == 0)  // 一歩でも歩いていたら
     {
         Vector2Int turnPlayerPos;
         IsSuccessAction = 0;
         int IsPreAttached = 0;
         // すでに自分が置いた場所には置けないようにする
         foreach (var pair in posMoneyTable)
         {
             if (playerPosTable[turnPlayer] == pair.Key && pair.Value == TurnPlayerManagerScript.getTurnPlayerNum())
             {
                 IsPreAttached = 1;
             }
         }
         if (IsPreAttached == 0)
         {
             turnPlayerPos = playerPosTable[turnPlayer];
             AttachMoney(turnPlayerPos, TurnPlayerManagerScript.getTurnPlayerNum());
             countAttachMoney += 1;
         }
     }
 }
Beispiel #8
0
    public void OnClick()
    {
        playerTable.Clear();
        a = 0;
        PlayerManager     script = playerConfig.GetComponent <PlayerManager>();
        List <GameObject> list   = script.playerList;

        foreach (GameObject player in list)
        {
            a += 1;
            GameObject textObject = player.transform.Find("Text").gameObject;
            Text       playerName = textObject.GetComponent <Text>();
            if (playerName.text == "")
            {
                GameObject placeholderObject = player.transform.Find("Placeholder").gameObject;
                Text       placeholderName   = placeholderObject.GetComponent <Text>();
                playerTable.Add(a, placeholderName.text);
            }
            else
            {
                playerTable.Add(a, playerName.text);
            }
        }
        foreach (var pair in playerTable)
        {
            Debug.Log(pair.Value);
            Debug.Log(pair.Key);
        }
        TurnPlayerManagerScript.setTurnPlayerNum(0);
        TurnPlayerManagerScript.setRoundNum(1);
        TurnPlayerManagerScript.setTotalPlayers(a);
        GameScript.IsInitial = 1;
        GameScript.OnlyPositionList.Clear();
        GameScript.posMoneyTable.Clear();
        SceneManager.LoadScene("CheckPlayerScene");
    }