Пример #1
0
 /// <summary>
 ///  필드아이템인 별을 생성 및 초기화한다.
 /// </summary>
 /// <param name="currentStageInfo"> 난이도 정보 </param>
 void InitializeStar(CatchGameLevelMgr.StageInfo currentStageInfo)
 {
     _starPool.DeactivateAllStars();
     CurrentStarCount  = 0;
     _createdStarCount = 0;
     _stars            = _starPool.GetStars(currentStageInfo.StarTypes);
     AppearStar();
 }
Пример #2
0
    /// <summary>
    /// 오브젝트 풀링 방식으로 양을 생성 및 초기화한다.
    /// </summary>
    /// <param name="stageInfo"> 난이도 정보 </param>
    /// <param name="genGrounds"> 양이 젠(생성)될 수 있는 게임오브젝트(ex 맵의 바닥) 배열</param>
    /// <returns> 생성된 양들을 참조하는 배열 </returns>
    GameObject[] ActivateSheep(CatchGameLevelMgr.StageInfo stageInfo, GameObject[] genGrounds)
    {
        int sheepCount = stageInfo.SheepInfos.Length;

        GameObject[] sheeps = new GameObject[sheepCount];

        for (int i = 0; i < sheepCount; i++)
        {
            var        currentSheepInfo = stageInfo.SheepInfos[i];
            GameObject currentSheep     = _sheepPool.GetAvalialbeObject();
            currentSheep.SetActive(true);
            currentSheep.GetComponent <SheepController>().OnInit(currentSheepInfo, GetRandomPointOnGenGround(genGrounds));
            sheeps[i] = currentSheep;
        }
        return(sheeps);
    }
Пример #3
0
 /// <summary>
 /// 필드 몬스터인 양을 생성 및 초기화한다.
 /// </summary>
 /// <param name="currentStageEnv"> 맵 정보 </param>
 /// <param name="currentStageInfo"> 난이도 정보 </param>
 void InitializeSheep(CatchGameStageEnv currentStageEnv, CatchGameLevelMgr.StageInfo currentStageInfo)
 {
     _sheeps           = ActivateSheep(currentStageInfo, currentStageEnv.GenGrounds);
     _initSheepCount   = currentStageInfo.SheepInfos.Length;
     CurrentSheepCount = _initSheepCount;
 }