2020年1月1日 星期三

Unity筆記:地圖邊界敵人生成器。





【小地圖王國】的單位是會無限的畫出地塊的,
並且有趨向玩家的一個慣性存在,
所以把玩家放在中央演示出來,
會形成這樣的圖案,
偶爾自行走出去的單位增加邊界,
邊界生成的單位又走回來到中心,
由於邊界是可以無限浮動的,
所以隨著進行地圖會緩緩的擴張,

定義:

levelX為地圖的最大x值,
最小levelX為地圖的最小x值,

y值同理


public Vector2 地圖邊界位置()
    {
        int 隨機值 = Random.Range(1,5);

        float 生成位置x = levelX;
        float 生成位置y = levelY;

        if (隨機值 == 1)
        {
            生成位置x = levelX;
            生成位置y = Random.Range(最小levelY, levelY + 1);
        }
        else if(隨機值 == 2)
        {
            生成位置x = Random.Range(最小levelX, levelX + 1); ;
            生成位置y = levelY;
        }
        else if (隨機值 == 3)
        {
            生成位置x = 最小levelX;
            生成位置y = Random.Range(最小levelY, levelY + 1);
        }
        else if (隨機值 == 4)
        {
            生成位置x = Random.Range(最小levelX, levelX + 1); ;
            生成位置y = 最小levelY;
        }
        else
        {
            Debug.Log("【地圖邊界位置小錯誤!】");
        }

        return new Vector2(生成位置x, 生成位置y);
    }

可以優化成switch之類的不過沒有關係,

之後要再測試一下有沒有額外的問題,
不過這種生成器應該只會給殭屍之類的單位來用,
平常還是會依天數從特定方向生成一批單位,
然後由AI建造建築來生產敵人會比較有趣,
也能做出攻打聚落和城市的感覺。
(っ´ω`c)

沒有留言:

張貼留言

你發現了這篇網誌的留言板,在這留點什麼吧|д・)