public static void Load(EffectLoadFinishCallBack callback, params int[] effectIds) { SyncLoadCallBack = callback; SyncLoadMax = effectIds.Length; for (int i = 0; i < effectIds.Length; ++i) { EffectMgr.Instance.PreLoadEffect((EFFECT_ID)effectIds[i], EffectInstSyncLoadCallBack); } }
static void EffectInstSyncLoadCallBack(EffectInst inst, MetaData metadata) { SyncLoadCounter++; if (SyncLoadCounter >= SyncLoadMax && SyncLoadCallBack != null) { SyncLoadCallBack(); SyncLoadMax = 0; SyncLoadCounter = 0; SyncLoadCallBack = null; } }