Beispiel #1
0
    /// <summary>
    /// ボールを生成する
    /// </summary>
    /// <param name="amount">生成する量</param>
    /// <param name="interval">生成間隔</param>
    /// <param name="range">生成座標範囲(半径)</param>
    IEnumerator CreateBall(int amount, float interval, int range)
    {
        List <BallInfo> ballInfoList = BallBundleInfo.GetInfoList();

        for (int i = 0; i < amount; i++)
        {
            // 非アクティブのボールをひとつ取得
            Ball ball = m_Balls.Find(s => !s.gameObject.activeSelf);

            if (ball != null)
            {
                // アクティブ化
                ball.gameObject.SetActive(true);

                // 生成座標
                int     randPosition = m_Rand.Next(-range, range);
                Vector2 position     = new Vector2((int)m_Rect.position.x + randPosition,
                                                   (int)m_Rect.position.y + randPosition);

                // 初期化
                ball.Init(position, ballInfoList[m_Rand.Next(ballInfoList.Count)]);
            }

            yield return(new WaitForSeconds(interval));
        }

        yield break;
    }
    static void Initialize()
    {
        // ボール情報読み込み
        BallBundleInfo.Load();

        // AudioManager生成
        GameObject prefab = (GameObject)Resources.Load("Prefabs/AudioManager");

        GameObject.Instantiate(prefab, Vector3.zero, Quaternion.identity);
    }
Beispiel #3
0
 /// <summary>
 /// リソースをロードする関数
 /// アプリ起動時に一度呼ばれる
 /// </summary>
 /// <returns>ロード結果(成功/失敗)</returns>
 public static bool Load()
 {
     m_Instance = Resources.Load <BallBundleInfo>(PATH);
     return(m_Instance != null ? true : false);
 }