//--------------------------------------------------------------------- public void update(float elapsed_tm) { switch (mOutFishState) { case OutFishState.None: break; case OutFishState.Normal: _checkAndCreateFishCrowd(elapsed_tm); break; case OutFishState.WaitingFormation: mOutFamtionDelay -= elapsed_tm; if (mOutFamtionDelay < 0) { generateFormation(mParticleSystemName); mOutFishState = OutFishState.Formation; } break; case OutFishState.Formation: if (mBaseFishLordMgr.getParticleSystemCount() <= 0) { mOutFishState = OutFishState.Normal; } break; } }
//--------------------------------------------------------------------- public void create(CLogicScene scene, BaseFishLordMgr base_fish_lord_mgr) { mScene = scene; mBaseFishLordMgr = base_fish_lord_mgr; mFishGroupRouteAlloter = new FishGroupRouteAlloter(); mFishRouteMap = new FishRouteMap(); Dictionary<int, EbData> mapData = EbDataMgr.Instance.getMapData<TbDataRoute>(); foreach (var it in mapData) { if (TbDataRoute.DataState.ACTIVE == ((TbDataRoute)it.Value).State) { mListRoute.Add(it.Key); } } mFormationNameList = mBaseFishLordMgr.getPrototypeNameList(); mFormationNameList.Remove(mNormalFishParticleFileName); mFormationNameList.Remove(mRedFishParticleFileName); mOutFishState = OutFishState.Normal; }
//--------------------------------------------------------------------- public void create(CLogicScene scene, BaseFishLordMgr base_fish_lord_mgr) { mScene = scene; mBaseFishLordMgr = base_fish_lord_mgr; mFishGroupRouteAlloter = new FishGroupRouteAlloter(); mFishRouteMap = new FishRouteMap(); Dictionary <int, EbData> mapData = EbDataMgr.Instance.getMapData <TbDataRoute>(); foreach (var it in mapData) { if (TbDataRoute.DataState.ACTIVE == ((TbDataRoute)it.Value).State) { mListRoute.Add(it.Key); } } mFormationNameList = mBaseFishLordMgr.getPrototypeNameList(); mFormationNameList.Remove(mNormalFishParticleFileName); mFormationNameList.Remove(mRedFishParticleFileName); mOutFishState = OutFishState.Normal; }
//--------------------------------------------------------------------- public void outFormation() { mOutFishState = OutFishState.WaitingFormation; mOutFamtionDelay = 2f; mParticleSystemName = mFormationNameList[getRandoNumber(0, 1000) % mFormationNameList.Count]; }