コード例 #1
0
	void Awake()
	{
		if (instance == null)
			instance = this;
		else if (instance != this)
			Destroy (this);
	}
コード例 #2
0
 // Use this for initialization
 void Start()
 {
     objC    = gameObject.GetComponent <ObjCreator>();
     floorC  = gameObject.GetComponent <FloorCreator>();
     wallC   = gameObject.GetComponent <WallCreator>();
     doorC   = gameObject.GetComponent <DoorCreator>();
     windowC = gameObject.GetComponent <WindowCreator>();
 }
コード例 #3
0
 // Update is called once per frame
 void Update()
 {
     if (player != null)
     {
         transform.position = new Vector3(player.transform.position.x + offSet.x, player.transform.position.y + offSet.y, offSet.z);
         fc = GameObject.FindGameObjectWithTag("Dungeon").GetComponent <FloorCreator>();
     }
 }
コード例 #4
0
 void Start()
 {
     floor = new FloorCreator(1);
     Debug.Log("floor initialized");
     Path = PathCreator.Instance.GetPath(floor);
     showPath();
     showFloor();
     Debug.Log("finished");
 }
コード例 #5
0
    private IEnumerator NextFloor(bool isSkipTransition = false)
    {
        ++_floorNumber;
        if (_floorNumber == 10)
        {
            _floorNumber = 1;
        }
        if (!isSkipTransition)
        {
            yield return(_banner.FadeInAnimation("テストダンジョン", _floorNumber));
        }

        _enemies.Clear();
        _fieldItems.Clear();

        LayerManager.RemoveAllLayer();
        // 同一フレームで、同じ GameObject に対して Destroy したあとに new GameObject できないようなので
        // yield return null で生成のタイミングをずらす
        yield return(null);

        LayerManager.CreateAllLayer();

        _floor = FloorCreator.CreateFloor(_floorNumber, _player, this);
        yield return(null); // TODO:yield return null を入れるとミニマップの位置が更新される

        _player.SyncCameraPosition();
        UpdatePassageSpotlightPosition(_player.Position);
        UpdateSpot(_player.Loc);

        var room = FindRoom(_player.Loc);

        if (room != null)
        {
            OnRoomEntering(room, _player.Loc);
            OnRoomEntered(room, _player.Loc);
        }

        var text = GameObject.Find("Canvas/Header/Text_Floor").GetComponent <Text>();

        text.text = string.Format("{0}F", _floorNumber);

        if (!isSkipTransition)
        {
            yield return(new WaitForSeconds(0.7f));

            yield return(_banner.FadeOutAnimation());
        }
        ChangeGameState(GameState.TurnStart);
    }
コード例 #6
0
    public void setSprite()
    {
        if (type != 2)
        {
            int x = (int)transform.localPosition.x;
            int y = (int)transform.localPosition.y;

            GameObject   floor = GameObject.FindGameObjectWithTag("Dungeon") as GameObject;
            FloorCreator fc    = floor.GetComponent <FloorCreator>();
            FloorCreator.TileType[][] tiles = fc.tiles;
            if (x < 0 || y < 0 || x >= fc.col || y >= fc.rows)
            {
                if (x == -1 && y > -1 && y < fc.rows)
                {
                    isT  = true;
                    isTL = true;
                    isBL = true;
                    isL  = true;
                    isD  = true;
                    if (tiles[x + 1][y].Equals(tileType))
                    {
                        isR = true;
                    }


                    if (y == 0)
                    {
                        isBR = true;
                    }
                    else
                    {
                        if (tiles[x + 1][y - 1].Equals(tileType))
                        {
                            isBR = true;
                        }
                    }
                    if (y == fc.rows - 1)
                    {
                        isTR = true;
                    }
                    else
                    {
                        if (tiles[x + 1][y + 1].Equals(tileType))
                        {
                            isTR = true;
                        }
                    }
                }
                else if (x != -1 && y > -1 && y < fc.rows)
                {
                    isTR = true;
                    isBR = true;
                    isR  = true;
                    isD  = true;
                    isT  = true;
                    if (tiles[x - 1][y].Equals(tileType))
                    {
                        isL = true;
                    }
                    if (y == 0)
                    {
                        isBL = true;
                    }
                    else
                    {
                        if (tiles[x - 1][y - 1].Equals(tileType))
                        {
                            isBL = true;
                        }
                    }
                    if (y == fc.rows - 1)
                    {
                        isTL = true;
                    }
                    else
                    {
                        if (tiles[x - 1][y + 1].Equals(tileType))
                        {
                            isTL = true;
                        }
                    }
                }
                if (y == -1 && x > -1 && x < fc.col)
                {
                    isL  = true;
                    isBL = true;
                    isBR = true;
                    isR  = true;
                    isD  = true;
                    if (tiles[x][y + 1].Equals(tileType))
                    {
                        isT = true;
                    }
                    if (x == 0)
                    {
                        isTL = true;
                    }
                    else
                    {
                        if (tiles[x - 1][y + 1].Equals(tileType))
                        {
                            isTL = true;
                        }
                    }
                    if (x == fc.col - 1)
                    {
                        isTR = true;
                    }
                    else
                    {
                        if (tiles[x + 1][y + 1].Equals(tileType))
                        {
                            isTR = true;
                        }
                    }
                }
                else if (y != -1 && x > -1 && x < fc.col)
                {
                    isL  = true;
                    isTL = true;
                    isTR = true;
                    isR  = true;
                    isT  = true;
                    if (tiles[x][y - 1].Equals(tileType))
                    {
                        isD = true;
                    }
                    if (x == 0)
                    {
                        isBL = true;
                    }
                    else
                    {
                        if (tiles[x - 1][y - 1].Equals(tileType))
                        {
                            isBL = true;
                        }
                    }
                    if (x == fc.col - 1)
                    {
                        isBR = true;
                    }
                    else
                    {
                        if (tiles[x + 1][y - 1].Equals(tileType))
                        {
                            isBR = true;
                        }
                    }
                }

                if (x == -1 && y == -1)
                {
                    isT  = true;
                    isL  = true;
                    isD  = true;
                    isR  = true;
                    isTL = true;
                    isBR = true;
                    isBL = true;
                    if (tiles[x + 1][y + 1].Equals(tileType))
                    {
                        isTR = true;
                    }
                }
                if (x == fc.col && y == -1)
                {
                    isT  = true;
                    isL  = true;
                    isD  = true;
                    isR  = true;
                    isTR = true;
                    isBR = true;
                    isBL = true;
                    if (tiles[x - 1][y + 1].Equals(tileType))
                    {
                        isTL = true;
                    }
                }
                if (x == fc.col && y == fc.rows)
                {
                    isT  = true;
                    isL  = true;
                    isD  = true;
                    isR  = true;
                    isTL = true;
                    isBR = true;
                    isTR = true;
                    if (tiles[x - 1][y - 1].Equals(tileType))
                    {
                        isBL = true;
                    }
                }
                if (x == -1 && y == fc.rows)
                {
                    isT  = true;
                    isL  = true;
                    isD  = true;
                    isR  = true;
                    isTL = true;
                    isBL = true;
                    isTR = true;
                    if (tiles[x + 1][y - 1].Equals(tileType))
                    {
                        isBR = true;
                    }
                }


                sprite.sprite = fullySurrounded[Random.Range(0, rightHalf5.Length)];
            }
            else
            {
                if (x < fc.col - 1 && tiles[x + 1][y].Equals(tileType))
                {
                    isR = true;
                }
                if (x > 0 && tiles[x - 1][y].Equals(tileType))
                {
                    isL = true;
                }
                if (y < fc.rows - 1 && tiles[x][y + 1].Equals(tileType))
                {
                    isT = true;
                }
                if (y > 0 && tiles[x][y - 1].Equals(tileType))
                {
                    isD = true;
                }

                if (x < fc.col - 1 && y < fc.rows - 1 && tiles[x + 1][y + 1].Equals(tileType))
                {
                    isTR = true;
                }
                if (x < fc.col - 1 && y > 0 && tiles[x + 1][y - 1].Equals(tileType))
                {
                    isBR = true;
                }
                if (x > 0 && y < fc.rows - 1 && tiles[x - 1][y + 1].Equals(tileType))
                {
                    isTL = true;
                }
                if (x > 0 && y > 0 && tiles[x - 1][y - 1].Equals(tileType))
                {
                    isBL = true;
                }

                if (x == 0)
                {
                    isL  = true;
                    isTL = true;
                    isBL = true;
                }
                if (x == fc.col - 1)
                {
                    isR  = true;
                    isTR = true;
                    isBR = true;
                }
                if (y == 0)
                {
                    isD  = true;
                    isBL = true;
                    isBR = true;
                }
                if (y == fc.rows - 1)
                {
                    isT  = true;
                    isTL = true;
                    isTR = true;
                }
            }



            //now we change sprite based on flag to trigger connected textures

            if (!isL && isR && isD && !isT && !isBL && isBR && !isTL && !isTR)
            {
                sprite.sprite = bottomRight3;
            }
            else if (isL && isR && isD && !isT && isBL && isBR && !isTL && !isTR)
            {
                sprite.sprite = bottomHalf5[Random.Range(0, bottomHalf5.Length)];
            }
            else if (isL && !isR && isD && !isT && isBL && !isBR && !isTL && !isTR)
            {
                sprite.sprite = bottomLeft3;
            }

            else if (!isL && isR && isD && isT && !isBL && isBR && !isTL && isTR)
            {
                sprite.sprite = rightHalf5[Random.Range(0, rightHalf5.Length)];
            }
            else if (isL && isR && isD && isT && isBL && isBR && isTL && isTR)
            {
                sprite.sprite = fullySurrounded[Random.Range(0, fullySurrounded.Length)];
            }
            else if (isL && !isR && isD && isT && isBL && !isBR && isTL && !isTR)
            {
                sprite.sprite = leftHalf5[Random.Range(0, leftHalf5.Length)];
            }

            else if (!isL && isR && !isD && isT && !isBL && !isBR && !isTL && isTR)
            {
                sprite.sprite = topRight3;
            }
            else if (isL && isR && !isD && isT && !isBL && !isBR && isTL && isTR)
            {
                sprite.sprite = topHalf5[Random.Range(0, topHalf5.Length)];
            }
            else if (isL && !isR && !isD && isT && !isBL && !isBR && isTL && !isTR)
            {
                sprite.sprite = topLeft3;
            }
            else if (!isL && isR && isD && !isT && !isBL && !isBR && !isTL && !isTR)
            {
                sprite.sprite = DR2;
            }
            else if (isL && isR && !isD && !isT && !isBL && !isBR && !isTL && !isTR)
            {
                sprite.sprite = LR2;
            }
            else if (isL && !isR && isD && !isT && !isBL && !isBR && !isTL && !isTR)
            {
                sprite.sprite = LD2;
            }
            else if (!isL && !isR && isD && isT && !isBL && !isBR && !isTL && !isTR)
            {
                sprite.sprite = UD2;
            }
            else if (isL && isR && isD && isT && isBL && isBR && isTL && isTR)
            {
                sprite.sprite = non;
            }
            else if (!isL && isR && !isD && isT && !isBL && !isBR && !isTL && !isTR)
            {
                sprite.sprite = UR2;
            }
            else if (isL && !isR && !isD && isT && !isBL && !isBR && !isTL && !isTR)
            {
                sprite.sprite = LU2;
            }
            else if (!isL && !isR && isD && !isT && !isBL && !isBR && !isTL && !isTR)
            {
                sprite.sprite = D1;
            }
            else if (!isL && isR && !isD && !isT && !isBL && !isBR && !isTL && !isTR)
            {
                sprite.sprite = R1;
            }
            else if (isL && isR && isD && isT && !isBL && !isBR && !isTL && !isTR)
            {
                sprite.sprite = LRUD4;
            }
            else if (isL && !isR && !isD && !isT && !isBL && !isBR && !isTL && !isTR)
            {
                sprite.sprite = L1;
            }
            else if (!isL && !isR && !isD && isT && !isBL && !isBR && !isTL && !isTR)
            {
                sprite.sprite = U1;
            }
            else if (isL && isR && isD && !isT && !isBL && !isBR && !isTL && !isTR)
            {
                sprite.sprite = LRD3;
            }
            else if (!isL && isR && isD && isT && !isBL && !isBR && !isTL && !isTR)
            {
                sprite.sprite = RUD3;
            }
            else if (isL && isR && !isD && isT && !isBL && !isBR && !isTL && !isTR)
            {
                sprite.sprite = LRU3;
            }
            else if (isL && isR && isD && isT && !isBL && !isBR && isTL && isTR)
            {
                sprite.sprite = topHalfD6;
            }
            else if (isL && isR && isD && isT && isBL && !isBR && isTL && !isTR)
            {
                sprite.sprite = leftHalfRight6;
            }
            else if (isL && isR && isD && isT && !isBL && isBR && !isTL && isTR)
            {
                sprite.sprite = rightHalfLeft5;
            }
            else if (isL && isR && isD && isT && isBL && isBR && !isTL && !isTR)
            {
                sprite.sprite = bottomHalfUp6;
            }
            else if (isL && isR && isD && isT && isBL && !isBR && isTL && isTR)
            {
                sprite.sprite = allButBR;
            }
            else if (isL && isR && isD && isT && !isBL && isBR && isTL && isTR)
            {
                sprite.sprite = allButBL;
            }
            else if (isL && isR && isD && isT && isBL && isBR && isTL && !isTR)
            {
                sprite.sprite = allButTR;
            }
            else if (isL && isR && isD && isT && isBL && isBR && !isTL && isTR)
            {
                sprite.sprite = allButTL;
            }
            else if (!isL && isR && isD && isT && !isBL && !isBR && !isTL && isTR)
            {
                sprite.sprite = topRightDown4;
            }
            else if (isL && !isR && isD && isT && !isBL && !isBR && isTL && !isTR)
            {
                sprite.sprite = topLeftDown4;
            }
            else if (!isL && isR && isD && isT && !isBL && isBR && !isTL && !isTR)
            {
                sprite.sprite = bottomRightUp4;
            }
            else if (isL && !isR && isD && isT && isBL && !isBR && !isTL && !isTR)
            {
                sprite.sprite = bottomLeftUp4;
            }
            else if (isL && isR && isD && !isT && isBL && !isBR && !isTL && !isTR)
            {
                sprite.sprite = bottomLeftRight4;
            }
            else if (isL && isR && isD && !isT && !isBL && isBR && !isTL && !isTR)
            {
                sprite.sprite = bottomRightLeft4;
            }
            else if (isL && isR && !isD && isT && !isBL && !isBR && isTL && !isTR)
            {
                sprite.sprite = topLeftRight4;
            }
            else if (isL && isR && !isD && isT && !isBL && !isBR && !isTL && isTR)
            {
                sprite.sprite = topRightLeft4;
            }
            else if (isL && isR && isD && isT && !isBL && isBR && !isTL && !isTR)
            {
                sprite.sprite = bottomRighttopLeft6;
            }
            else if (isL && isR && isD && isT && isBL && !isBR && !isTL && !isTR)
            {
                sprite.sprite = bottomLefttopRight6;
            }
            else if (isL && isR && isD && isT && !isBL && !isBR && !isTL && isTR)
            {
                sprite.sprite = topRightbottomLeft5;
            }
            else if (isL && isR && isD && isT && !isBL && !isBR && isTL && !isTR)
            {
                sprite.sprite = topLeftbottomRight5;
            }
            else if (isL && isR && isD && isT && isBL && !isBR && !isTL && isTR)
            {
                sprite.sprite = bottomLefttopRight6;
            }
            else if (isL && isR && isD && isT && !isBL && isBR && isTL && !isTR)
            {
                sprite.sprite = bottomRighttopLeft6;
            }
            else if (isL && isR && isD && !isT && isBL && isBR && isTL && !isTR)
            {
                sprite.sprite = bottomHalf5[Random.Range(0, topHalf5.Length)];
            }
            else if (isL && !isR && isD && isT && isBL && isBR && isTL && !isTR)
            {
                sprite.sprite = leftHalf5[Random.Range(0, topHalf5.Length)];
            }
            else if (isL && !isR && isD && !isT && isBL && isBR && !isTL && !isTR)
            {
                sprite.sprite = bottomLeft3;
            }
            else if (isL && isR && isD && !isT && isBL && isBR && isTL && !isTR)
            {
                sprite.sprite = bottomHalf5[Random.Range(0, topHalf5.Length)];
            }
            else if (isL && !isR && !isD && isT && !isBL && !isBR && isTL && !isTR)
            {
                sprite.sprite = bottomRight3;
            }
            else if (isL && !isR && !isD && isT && !isBL && !isBR && isTL && isTR)
            {
                sprite.sprite = topLeft3;
            }
            else if (!isL && !isR && !isD && isT && !isBL && !isBR && isTL && !isTR)
            {
                sprite.sprite = topHalf5[Random.Range(0, topHalf5.Length)];
            }
            else if (isL && !isR && !isD && !isT && !isBL && !isBR && isTL && !isTR)
            {
                sprite.sprite = L1;
            }
            else if (isL && !isR && isD && !isT && isBL && !isBR && isTL && !isTR)
            {
                sprite.sprite = bottomLeft3;
            }
            else if (!isL && isR && isD && isT && isBL && isBR && !isTL && isTR)
            {
                sprite.sprite = rightHalf5[Random.Range(0, topHalf5.Length)];
            }
            else if (isL && !isR && !isD && isT && isBL && !isBR && isTL && isTR)
            {
                sprite.sprite = topLeft3;
            }
            else if (isL && isR && !isD && isT && !isBL && isBR && isTL && isTR)
            {
                sprite.sprite = topHalf5[Random.Range(0, topHalf5.Length)];
            }
            else if (!isL && isR && isD && isT && !isBL && isBR && isTL && isTR)
            {
                sprite.sprite = rightHalf5[Random.Range(0, topHalf5.Length)];
            }
            else if (isL && isR && !isD && isT && isBL && !isBR && isTL && isTR)
            {
                sprite.sprite = topHalf5[Random.Range(0, topHalf5.Length)];
            }
            else if (isL && isR && isD && !isT && isBL && isBR && !isTL && isTR)
            {
                sprite.sprite = bottomHalf5[Random.Range(0, topHalf5.Length)];
            }
            else if (!isL && isR && isD && !isT && isBL && isBR && !isTL && isTR)
            {
                sprite.sprite = bottomRight3;
            }
            else if (isL && isR && isD && !isT && isBL && isBR && !isTL && isTR)
            {
                sprite.sprite = bottomHalf5[Random.Range(0, topHalf5.Length)];
            }
            else if (isL && !isR && isD && isT && isBL && !isBR && isTL && isTR)
            {
                sprite.sprite = leftHalf5[Random.Range(0, topHalf5.Length)];
            }
            else if (isL && !isR && !isD && isT && isBL && !isBR && isTL && !isTR)
            {
                sprite.sprite = topLeft3;
            }
            else if (!isL && isR && !isD && isT && !isBL && isBR && isTL && isTR)
            {
                sprite.sprite = topRight3;
            }
            else if (!isL && isR && !isD && isT && !isBL && !isBR && isTL && isTR)
            {
                sprite.sprite = topRight3;
            }
            else if (!isL && isR && isD && !isT && isBL && isBR && !isTL && !isTR)
            {
                sprite.sprite = bottomRight3;
            }
            else if (!isL && isR && isD && !isT && !isBL && isBR && !isTL && isTR)
            {
                sprite.sprite = bottomRight3;
            }
            else if (isL && !isR && !isD && isT && !isBL && !isBR && isTL && isTR)
            {
                sprite.sprite = topLeft3;
            }
            else if (!isL && isR && !isD && isT && !isBL && isBR && isTL && !isTR)
            {
                sprite.sprite = topRight3;
            }
            else if (isL && isR && isD && !isT && isBL && isBR && !isTL && !isTR)
            {
                sprite.sprite = U1;
            }
            else if (isL && isR && !isD && isT && !isBL && !isBR && isTL && isTR)
            {
                sprite.sprite = D1;
            }
            else if (!isL && isR && isD && isT && !isBL && isBR && !isTL && isTR)
            {
                sprite.sprite = L1;
            }
            else if (isL && !isR && isD && isT && isBL && !isBR && isTL && !isTR)
            {
                sprite.sprite = R1;
            }
            else if (isL && !isR && !isD && !isT && !isBL && !isBR && isTL && !isTR)
            {
                sprite.sprite = L1;
            }
            else if (!isL && isR && !isD && isT && !isBL && isBR && !isTL && isTR)
            {
                sprite.sprite = topRight3;
            }
            else if (!isL && !isR && isD && isT && !isBL && isBR && !isTL && !isTR)
            {
                sprite.sprite = UD2;
            }
            else if (!isL && !isR && isD && !isT && !isBL && isBR && !isTL && !isTR)
            {
                sprite.sprite = D1;
            }
            else if (isL && !isR && isD && !isT && isBL && isBR && isTL && !isTR)
            {
                sprite.sprite = bottomLeft3;
            }
            else if (isL && isR && !isD && !isT && !isBL && !isBR && isTL && !isTR)
            {
                sprite.sprite = LR2;
            }
            else if (isL && isR && !isD && !isT && !isBL && !isBR && !isTL && isTR)
            {
                sprite.sprite = LR2;
            }
            else if (isL && isR && !isD && !isT && !isBL && isBR && !isTL && !isTR)
            {
                sprite.sprite = LR2;
            }
            else if (isL && isR && isD && !isT && !isBL && isBR && !isTL && isTR)
            {
                sprite.sprite = LRD3;
            }
            else if (isL && !isR && isD && isT && isBL && !isBR && isTL && isTR)
            {
                sprite.sprite = LR2;
            }
            else if (isL && isR && !isD && !isT && isBL && !isBR && !isTL && !isTR)
            {
                sprite.sprite = LR2;
            }
            else if (isL && isR && !isD && isT && !isBL && isBR && isTL && !isTR)
            {
                sprite.sprite = LRU3;
            }
            else if (isL && isR && isD && !isT && !isBL && isBR && isTL && !isTR)
            {
                sprite.sprite = LRD3;
            }
            else if (!isL && isR && !isD && !isT && !isBL && isBR && !isTL && isTR)
            {
                sprite.sprite = R1;
            }
            else if (isL && isR && !isD && !isT && !isBL && isBR && isTL && !isTR)
            {
                sprite.sprite = LR2;
            }
            else if (isL && isR && !isD && isT && isBL && !isBR && isTL && !isTR)
            {
                sprite.sprite = LRU3;
            }
            else if (!isL && isR && !isD && !isT && !isBL && !isBR && !isTL && isTR)
            {
                sprite.sprite = R1;
            }
        }
    }