static AssetsCore() { AssetsCore.canLoadAsset = typeof(AssetsCore).GetMethod("CanLoadAsset", BindingFlags.Static | BindingFlags.Public); AssetLibrary <GameObject> .SetIndexType(typeof(PrefabIndex)); AssetLibrary <Mesh> .SetIndexType(typeof(MeshIndex)); AssetLibrary <Material> .SetIndexType(typeof(MaterialIndex)); AssetLibrary <Shader> .SetIndexType(typeof(ShaderIndex)); AssetLibrary <Texture2D> .SetIndexType(typeof(Texture2DIndex)); AssetsCore.loaded = PrefabInitializer.Initialize(); if (AssetsCore.loaded) { AssetsCore.loaded &= MeshInitializer.Initialize(); } else { Log.Error(String.Format("{0} failed to load", "PrefabInitializer")); } if (AssetsCore.loaded) { AssetsCore.loaded &= MaterialInitializer.Initialize(); } else { Log.Error(String.Format("{0} failed to load", "MeshInitializer")); } if (AssetsCore.loaded) { AssetsCore.loaded &= ShaderInitializer.Initialize(); } else { Log.Error(String.Format("{0} failed to load", "MaterialInitializer")); } if (AssetsCore.loaded) { AssetsCore.loaded &= TextureInitializer.Initialize(); } else { Log.Error(String.Format("{0} failed to load", "ShaderInitializer")); } if (!AssetsCore.loaded) { Log.Error(String.Format("{0} failed to load", "TextureInitializer")); } //Log.Warning( "AssetsCore loaded" ); }
#pragma warning disable CS1591 // Missing XML comment for publicly visible type or member public static Boolean CanLoadAsset <TAsset>(Enum index) where TAsset : UnityEngine.Object #pragma warning restore CS1591 // Missing XML comment for publicly visible type or member { if (!AssetsCore.loaded) { throw new CoreNotLoadedException(nameof(AssetsCore)); } if (!AssetsCore.MatchAssetIndexType(typeof(TAsset), index.GetType())) { throw new ArgumentException("Incorrect index type", "index"); } return(AssetLibrary <TAsset> .CanGetAsset(index)); }
public static TAsset LoadAsset <TAsset>(Enum index) where TAsset : UnityEngine.Object { //var timer = new Stopwatch(); //timer.Start(); if (!AssetsCore.loaded) { throw new CoreNotLoadedException(nameof(AssetsCore)); } if (!AssetsCore.MatchAssetIndexType(typeof(TAsset), index.GetType())) { throw new ArgumentException("Incorrect index type", nameof(index)); } TAsset asset = AssetLibrary <TAsset> .GetAsset(index); //timer.Stop(); //Log.Warning( String.Format( "Time for asset {0}: {1} ticks, {2} ms", index.GetName(), timer.ElapsedTicks, timer.ElapsedMilliseconds ) ); return(asset); }
static TextureInitializer() { new AssetAccessor <Texture2D>(Texture2DIndex.None, () => null).RegisterAccessor(); #region Reference Textures #region Cloud Textures new AssetAccessor <Texture2D>(Texture2DIndex.refTexCloudDifferenceBW1, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatOnHelfire)), MaterialIndex.refMatOnHelfire).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexCloudDifferenceBW2, () => GetCloud1Tex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatNullBombAreaIndicator)), MaterialIndex.refMatNullBombAreaIndicator).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexCloudIce, () => GetCloud1Tex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatFireRingRunes)), MaterialIndex.refMatFireRingRunes).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexCloudCrackedIce, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatBazaarIceCore)), MaterialIndex.refMatBazaarIceCore).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexCloudOrganic1, () => GetCloud1Tex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatElitePoisonParticleSystemReplacement)), MaterialIndex.refMatElitePoisonParticleSystemReplacement).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexCloudOrganic2, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatVagrantEnergized)), MaterialIndex.refMatVagrantEnergized).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexCloudPixel2, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatTPInOut)), MaterialIndex.refMatTPInOut).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexCloudLightning1, () => GetCloud1Tex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatVagrantEnergized)), MaterialIndex.refMatVagrantEnergized).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexMagmaCloud, () => GetCloud2Tex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatNullifierExplosionAreaIndicatorHard)), MaterialIndex.refMatNullifierExplosionAreaIndicatorHard).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexCloudColor1, () => GetCloud2Tex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatNullBombAreaIndicator)), MaterialIndex.refMatNullBombAreaIndicator).RegisterAccessor(); #endregion #region Mask Textures new AssetAccessor <Texture2D>(Texture2DIndex.refTexBasicMask, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatElitePoisonParticleSystemReplacement)), MaterialIndex.refMatElitePoisonParticleSystemReplacement).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexBehemothTileMask, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatNullifierStarTrail)), MaterialIndex.refMatNullifierStarTrail).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexGalaxy1Mask, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatNullifierStarParticle)), MaterialIndex.refMatNullifierStarParticle).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexParticleDust1Mask, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatTracerBright)), MaterialIndex.refMatTracerBright).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexParticleDust2Mask, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatGenericFlash)), MaterialIndex.refMatGenericFlash).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexLightning2Mask, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatNullifierStarPortalEdge)), MaterialIndex.refMatNullifierStarPortalEdge).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexGenericStarburstMaskSkewed, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatWillowispRadial)), MaterialIndex.refMatWillowispRadial).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexGlowSoftCenterMask, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatDustDirectionalDark)), MaterialIndex.refMatDustDirectionalDark).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexRingSetRuneMask, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatFireRingRunes)), MaterialIndex.refMatFireRingRunes).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexBanditExplosionMask, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatGolemExplosion)), MaterialIndex.refMatGolemExplosion).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexArcaneCircle1Mask, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatArcaneCircle1)), MaterialIndex.refMatArcaneCircle1).RegisterAccessor(); #endregion #region Assorted Textures new AssetAccessor <Texture2D>(Texture2DIndex.refTexAlphaGradient2, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatShatteredGlass)), MaterialIndex.refMatShatteredGlass).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexEngiShield, () => GetCloud1Tex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatMercEnergized)), MaterialIndex.refMatMercEnergized).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexEngiShieldBlurred, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatMercEnergized)), MaterialIndex.refMatMercEnergized).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexDebris1, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatDebris1)), MaterialIndex.refMatDebris1).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexSmokePuffSPeckledDisplacement, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatOpagueDustSpeckledLarge)), MaterialIndex.refMatOpagueDustSpeckledLarge).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexNullifierSky, () => GetCloud1Tex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatNullifierExplosionAreaIndicatorSoft)), MaterialIndex.refMatNullifierExplosionAreaIndicatorSoft).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexNullifierSky2, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatNullifierGemPortal)), MaterialIndex.refMatNullifierGemPortal).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexWillowispSpiral, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatWillowispSpiral)), MaterialIndex.refMatWillowispSpiral).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refCaustics, () => GetCloud1Tex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatNullifierExplosionAreaIndicatorHard)), MaterialIndex.refMatNullifierExplosionAreaIndicatorHard).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refDistTex, () => GetMainTex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatTracer)), MaterialIndex.refMatTracer).RegisterAccessor(); #endregion #region Normal Textures new AssetAccessor <Texture2D>(Texture2DIndex.refWaves_N, () => GetBumpMap(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatBazaarIceDistortion)), MaterialIndex.refMatBazaarIceDistortion).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexNormalSphere, () => GetBumpMap(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatDistortion)), MaterialIndex.refMatDistortion).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexNormalSphereFaded, () => GetBumpMap(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatDistortionFaded)), MaterialIndex.refMatDistortionFaded).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexCloudOrganicNormal, () => GetCloud1Tex(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatNullifierStarPortalEdge)), MaterialIndex.refMatNullifierStarPortalEdge).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexSmokePuffSpeckledNormal, () => GetNormalMap(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatOpagueDustSpeckledLarge)), MaterialIndex.refMatOpagueDustSpeckledLarge).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexNormalInvertConeFade, () => GetBumpMap(AssetLibrary <Material> .GetAsset(MaterialIndex.refMatInverseDistortion)), MaterialIndex.refMatInverseDistortion).RegisterAccessor(); #endregion #region Unsorted new AssetAccessor <Texture2D>(Texture2DIndex.refTexFeatherMask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatAngelFeather); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatAngelFeather).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexGlowSquareMask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatStealthkitSparks); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatStealthkitSparks).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexShard03Mask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatRoboBallParticleRingHuge); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatRoboBallParticleRingHuge).RegisterAccessor(); //////////////////////////////////////////////////////////////////////////////////////////////// new AssetAccessor <Texture2D>(Texture2DIndex.refTexFireMask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatFireStaticLarge); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatFireStaticLarge).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexOmniShockwave2Mask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatOmniRing2Generic); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatOmniRing2Generic).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexMercSwipeMask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatMercSwipe2); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatMercSwipe2).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexChainTrailMask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatSuspendedInTime); //return GetMainTex( m ); return(GetCloud1Tex(m)); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatSuspendedInTime).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexVagrantTentacleMask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatTPShockwave); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatTPShockwave).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexBehemothTileNormal, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatOpagueDustTrail); //return GetMainTex( m ); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); return(GetNormalMap(m)); }, MaterialIndex.refMatOpagueDustTrail).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexLemurianSlash, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatLizardBiteTrail); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatLizardBiteTrail).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexAngelWingMask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatAngelEffect); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatAngelEffect).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexVFXExplosionMask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatCutExplosion); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatCutExplosion).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexShockwaveRing2Mask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatOpagueWaterFoam); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatOpagueWaterFoam).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexItemPickupEffectParticleMask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatBootWaveEnergy); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatBootWaveEnergy).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexEngiTrail, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatEngiTrail); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatEngiTrail).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexGlowPaintMask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatGenericFire); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatGenericFire).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexAlphaGradient3Mask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatTeleportOut); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatTeleportOut).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexAlphaGradient2Mask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatDustSoft); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatDustSoft).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexHealingCrossMask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatHealingCross); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatHealingCross).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexFluidSpraySmall, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatJellyfishChunks); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatJellyfishChunks).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexImpSwipeMask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatImpSwipe); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatImpSwipe).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexCloudWaterRipples, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatImpBossPortal); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatImpBossPortal).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexCloudSkulls, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatHauntedAura); //return GetMainTex( m ); //return GetCloud1Tex( m ); return(GetCloud2Tex(m)); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatHauntedAura).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexGlowSkullMask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatSkullFire); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatSkullFire).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexFluffyCloud2Mask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatSonicBoomGroundDust); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatSonicBoomGroundDust).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexFluffyCloud3Mask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatSonicBoomGroundDust); //return GetMainTex( m ); return(GetCloud1Tex(m)); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatSonicBoomGroundDust).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexMageMatrixMaskDirectional, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatMageMatrixDirectionalLightning); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatMageMatrixDirectionalLightning).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexMageMatrixMask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatMageMatrixLightning); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatMageMatrixLightning).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexMageMatrixTri, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatMatrixTriFire); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatMatrixTriFire).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexShockwaveMask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatCleanseCore); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatCleanseCore).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexBlackHoleMask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatCleanseCore); //return GetMainTex( m ); return(GetCloud1Tex(m)); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatCleanseCore).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexCloudOrganic3, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatCleanseWater); //return GetMainTex( m ); //return GetCloud1Tex( m ); return(GetCloud2Tex(m)); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatCleanseWater).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexAlphaGradient4Mask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatLaserTurbineTargetingLaser); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatLaserTurbineTargetingLaser).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexOmniRadialSlash1Mask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatOmniRadialSlash1Merc); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatOmniRadialSlash1Merc).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexOmniHitspark2Mask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatOmniHitspark2Merc); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatOmniHitspark2Merc).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexOmniHitspark1Mask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatOmniHitspark1); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatOmniHitspark1).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexSmokePuffSmallDirectionalDisplacement, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatOpagueDust); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatOpagueDust).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexSmokePuffSmallDirectionalNormal, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatOpagueDust); //return GetMainTex( m ); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); return(GetNormalMap(m)); }, MaterialIndex.refMatOpagueDust).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexOmniShockwave1Mask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatOmniRing1Generic); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatOmniRing1Generic).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexOmniHitspark4Mask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatOmniHitspark4Merc); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatOmniHitspark4Merc).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexFluidSprayLarge, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatBloodClayLarge); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatBloodClayLarge).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexWhiteRadialGradient256, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatClayGooFizzle); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatClayGooFizzle).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexParticleDust3Mask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatClayBubbleBillboard); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatClayBubbleBillboard).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexSmokePuffDirectionalDisplacement, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatOpagueDustLargeDirectional); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatOpagueDustLargeDirectional).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexSmokePuffDirectionalNormal, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatOpagueDustLargeDirectional); //return GetMainTex( m ); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); return(GetNormalMap(m)); }, MaterialIndex.refMatOpagueDustLargeDirectional).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexSmokePuffSmallDisplacement, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatOpagueDustLarge); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatOpagueDustLarge).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexSmokePuffSmallNormal, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatOpagueDustLarge); //return GetMainTex( m ); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); return(GetNormalMap(m)); }, MaterialIndex.refMatOpagueDustLarge).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexLightning3Mask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatGenericLaser); //return GetMainTex( m ); return(GetCloud1Tex(m)); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatGenericLaser).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexShard02Mask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatEngiShieldShards); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatEngiShieldShards).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexOmniExplosion2Mask, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatOmniExplosion1); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatOmniExplosion1).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexRoboChunksDiffuse, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatRoboChunks); return(GetMainTex(m)); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); //return GetNormalMap( m ); }, MaterialIndex.refMatRoboChunks).RegisterAccessor(); new AssetAccessor <Texture2D>(Texture2DIndex.refTexRoboChunksNormal, () => { Material m = AssetLibrary <Material> .GetAsset(MaterialIndex.refMatRoboChunks); //return GetMainTex( m ); //return GetCloud1Tex( m ); //return GetCloud2Tex( m ); //return GetBumpMap( m ); return(GetNormalMap(m)); }, MaterialIndex.refMatRoboChunks).RegisterAccessor(); #endregion #endregion completedProperly = true; }
static MaterialInitializer() { #region Reference Materials #region Resources new AssetAccessor <Material>(MaterialIndex.refMatOnHelfire, () => Resources.Load <Material>("Materials/MatOnHelfire")).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatShatteredGlass, () => Resources.Load <Material>("Materials/MatShatteredGlass")).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatTPInOut, () => Resources.Load <Material>("Materials/MatTPInOut")).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatVagrantEnergized, () => Resources.Load <Material>("Materials/MatVagrantEnergized")).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatElitePoisonParticleSystemReplacement, () => Resources.Load <Material>("Materials/MatElitePoisonParticleReplacement")).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatMercEnergized, () => Resources.Load <Material>("Materials/MatMercEnergized")).RegisterAccessor(); #endregion #region NullifierDeathExplosion new AssetAccessor <Material>(MaterialIndex.refMatTracerBright, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refNullifierDeathExplosion).transform; ParticleSystemRenderer rend = trans.Find("Vacuum Stars, Trails").GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refNullifierDeathExplosion).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatDebris1, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refNullifierDeathExplosion).transform; ParticleSystemRenderer rend = trans.Find("Dirt").GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refNullifierDeathExplosion).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatInverseDistortion, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refNullifierDeathExplosion).transform; ParticleSystemRenderer rend = trans.Find("Vacuum Stars, Distortion").GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refNullifierDeathExplosion).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatOpagueDustSpeckledLarge, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refNullifierDeathExplosion).transform; ParticleSystemRenderer rend = trans.Find("Goo, Medium").GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refNullifierDeathExplosion).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatNullifierStarParticle, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refNullifierDeathExplosion).transform; ParticleSystemRenderer rend = trans.Find("Vacuum Stars").GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refNullifierDeathExplosion).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatNullifierStarTrail, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refNullifierDeathExplosion).transform; ParticleSystemRenderer rend = trans.Find("Vacuum Stars, Trails").GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[1]); }, PrefabIndex.refNullifierDeathExplosion).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatNullifierStarPortalEdge, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refNullifierDeathExplosion).transform; ParticleSystemRenderer rend = trans.Find("Vacuum Radial").GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refNullifierDeathExplosion).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatNullifierExplosionAreaIndicatorSoft, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refNullifierDeathExplosion).transform; ParticleSystemRenderer rend = trans.Find("AreaIndicator").GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refNullifierDeathExplosion).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatNullifierExplosionAreaIndicatorHard, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refNullifierDeathExplosion).transform; ParticleSystemRenderer rend = trans.Find("AreaIndicator (1)").GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refNullifierDeathExplosion).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatNullifierGemPortal, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refNullifierDeathExplosion).transform; MeshRenderer rend = trans.Find("Sphere").GetComponent <MeshRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refNullifierDeathExplosion).RegisterAccessor(); #endregion #region Nullifier Pre-Bomb Ghost new AssetAccessor <Material>(MaterialIndex.refMatNullBombAreaIndicator, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refNullifierPreBombGhost).transform; ParticleSystemRenderer rend = null; Boolean pastFirst = true; for (Int32 i = 0; i < trans.childCount; ++i) { Transform child = trans.GetChild(i); if (child.name == "AreaIndicator") { if (pastFirst) { rend = child.GetComponent <ParticleSystemRenderer>(); break; } else { pastFirst = true; } } } return(rend.sharedMaterials[0]); }, PrefabIndex.refNullifierPreBombGhost).RegisterAccessor(); #endregion #region Will-O-Wisp Explosion new AssetAccessor <Material>(MaterialIndex.refMatTracer, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refWillOWispExplosion).transform; ParticleSystemRenderer rend = trans.Find("Sparks").GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refWillOWispExplosion).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatDistortionFaded, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refWillOWispExplosion).transform; ParticleSystemRenderer rend = trans.Find("Distortion").GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refWillOWispExplosion).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatWillowispSpiral, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refWillOWispExplosion).transform; ParticleSystemRenderer rend = trans.Find("Flames, Tube").GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refWillOWispExplosion).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatWillowispRadial, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refWillOWispExplosion).transform; ParticleSystemRenderer rend = trans.Find("Flames, Radial").GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refWillOWispExplosion).RegisterAccessor(); #endregion #region Locked Mage new AssetAccessor <Material>(MaterialIndex.refMatBazaarIceCore, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refLockedMage).transform.Find("ModelBase/IceMesh"); MeshRenderer rend = trans.GetComponent <MeshRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refLockedMage).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatBazaarIceDistortion, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refLockedMage).transform.Find("ModelBase/IceMesh"); MeshRenderer rend = trans.GetComponent <MeshRenderer>(); return(rend.sharedMaterials[1]); }, PrefabIndex.refLockedMage).RegisterAccessor(); #endregion #region Fire Tornado Ghost new AssetAccessor <Material>(MaterialIndex.refMatGenericFlash, () => { // NEXT: After asset rip, check that this is correct Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refFireTornadoGhost).transform.Find("Embers"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refFireTornadoGhost).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatDustDirectionalDark, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refFireTornadoGhost).transform.Find("Smoke"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refFireTornadoGhost).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatFireRingRunes, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refFireTornadoGhost).transform.Find("InitialBurst/RuneRings"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refFireTornadoGhost).RegisterAccessor(); #endregion #region Titan Recharge Rocks Effect new AssetAccessor <Material>(MaterialIndex.refMatGolemExplosion, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refTitanRechargeRocksEffect).transform.Find("3DDebris"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[1]); }, PrefabIndex.refTitanRechargeRocksEffect).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatTitanBeam, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refTitanRechargeRocksEffect).transform.Find("Sparks, Trail"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refTitanRechargeRocksEffect).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatArcaneCircle1, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refTitanRechargeRocksEffect).transform.Find("Glow"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refTitanRechargeRocksEffect).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatDistortion, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refTitanRechargeRocksEffect).transform.Find("Distortion"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refTitanRechargeRocksEffect).RegisterAccessor(); #endregion #region BoostJumpEffect new AssetAccessor <Material>(MaterialIndex.refMatAngelFeather, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refBoostJumpEffect).transform.Find("Feather, Directional"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refBoostJumpEffect).RegisterAccessor(); #endregion #region ProcStealthKit new AssetAccessor <Material>(MaterialIndex.refMatStealthkitSparks, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refProcStealthkit).transform.Find("Sparks"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refProcStealthkit).RegisterAccessor(); #endregion #region RoboBallBossDelayKnockupEffect new AssetAccessor <Material>(MaterialIndex.refMatRoboBallParticleRingHuge, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refRoboBallBossDelayKnockupEffect).transform.Find("Sphere"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refRoboBallBossDelayKnockupEffect).RegisterAccessor(); #endregion #region FirePillarEffect new AssetAccessor <Material>(MaterialIndex.refMatFireStaticLarge, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refFirePillarEffect).transform.Find("FX/Fire"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refFirePillarEffect).RegisterAccessor(); #endregion #region LightningStakeNova new AssetAccessor <Material>(MaterialIndex.refMatOmniRing2Generic, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refLightningStakeNova).transform.Find("AreaIndicatorRing, Billboard"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refLightningStakeNova).RegisterAccessor(); #endregion #region MercSwordFinisherSlash new AssetAccessor <Material>(MaterialIndex.refMatMercSwipe2, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refMercSwordFinisherSlash).transform.Find("SwingTrail"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refMercSwordFinisherSlash).RegisterAccessor(); #endregion #region MageUnlockPreExplosion new AssetAccessor <Material>(MaterialIndex.refMatSuspendedInTime, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refMageUnlockPreExplosion).transform.Find("Running Particles/Flames, Radial"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refMageUnlockPreExplosion).RegisterAccessor(); #endregion #region TeleporterBeaconEffect new AssetAccessor <Material>(MaterialIndex.refMatTPShockwave, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refTeleporterBeaconEffect).transform.Find("InitialBurst/Ring"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refTeleporterBeaconEffect).RegisterAccessor(); #endregion #region SprintActivate new AssetAccessor <Material>(MaterialIndex.refMatOpagueDustTrail, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refSprintActivate).transform.Find("SwingTrail"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refSprintActivate).RegisterAccessor(); #endregion #region LemurianBiteTrail new AssetAccessor <Material>(MaterialIndex.refMatLizardBiteTrail, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refLemurianBiteTrail).transform.Find("SwingTrail"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refLemurianBiteTrail).RegisterAccessor(); #endregion #region HippoRezEffect new AssetAccessor <Material>(MaterialIndex.refMatAngelEffect, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refHippoRezEffect).transform.Find("Ring"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refHippoRezEffect).RegisterAccessor(); #endregion #region ExplosionDroneDeath new AssetAccessor <Material>(MaterialIndex.refMatCutExplosion, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refExplosionDroneDeath).transform.Find("Particles/InitialBurst/Flames"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refExplosionDroneDeath).RegisterAccessor(); #endregion #region WaterFootstep new AssetAccessor <Material>(MaterialIndex.refMatOpagueWaterFoam, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refWaterFootstep).transform.Find("FoamBilllboard"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refWaterFootstep).RegisterAccessor(); #endregion #region BootIsReady new AssetAccessor <Material>(MaterialIndex.refMatBootWaveEnergy, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refBootIsReady).transform.Find("BlueRing"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refBootIsReady).RegisterAccessor(); #endregion #region ExplosionEngiTurretDeath new AssetAccessor <Material>(MaterialIndex.refMatEngiTrail, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refExplosionEngiTurretDeath).transform.Find("InitialBurst/Ring"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refExplosionEngiTurretDeath).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatGenericFire, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refExplosionEngiTurretDeath).transform.Find("InitialBurst/Flames"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refExplosionEngiTurretDeath).RegisterAccessor(); #endregion #region TeleportOutBoom new AssetAccessor <Material>(MaterialIndex.refMatTeleportOut, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refTeleportOutBoom).transform.Find("CenterPoof"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refTeleportOutBoom).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatDustSoft, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refTeleportOutBoom).transform.Find("Dust"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refTeleportOutBoom).RegisterAccessor(); #endregion #region FruitHealEffect new AssetAccessor <Material>(MaterialIndex.refMatHealingCross, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refFruitHealEffect).transform.Find("Crosses"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refFruitHealEffect).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatJellyfishChunks, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refFruitHealEffect).transform.Find("Goo Slash"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refFruitHealEffect).RegisterAccessor(); #endregion #region ImpBossDeathEffect new AssetAccessor <Material>(MaterialIndex.refMatImpSwipe, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refImpBossDeathEffect).transform.Find("DashRings"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refImpBossDeathEffect).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatImpBossPortal, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refImpBossDeathEffect).transform.Find("Ring"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refImpBossDeathEffect).RegisterAccessor(); #endregion #region PoisonNovaProc new AssetAccessor <Material>(MaterialIndex.refMatHauntedAura, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refPoisonNovaProc).transform.Find("Particles/Ring, Procced"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refPoisonNovaProc).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatSkullFire, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refPoisonNovaProc).transform.Find("Particles/Flames"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refPoisonNovaProc).RegisterAccessor(); #endregion #region SonicBoomEffect new AssetAccessor <Material>(MaterialIndex.refMatSonicBoomGroundDust, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refSonicBoomEffect).transform.Find("DustColliders/Dust"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refSonicBoomEffect).RegisterAccessor(); #endregion #region MageLightningBombExplosion new AssetAccessor <Material>(MaterialIndex.refMatMageMatrixDirectionalLightning, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refMageLightningbombExplosion).transform.Find("Matrix, Directional"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refMageLightningbombExplosion).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatMageMatrixLightning, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refMageLightningbombExplosion).transform.Find("Matrix, Billboard"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refMageLightningbombExplosion).RegisterAccessor(); #endregion #region MageFlamethrowerEffect new AssetAccessor <Material>(MaterialIndex.refMatMatrixTriFire, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refMageFlamethrowerEffect).transform.Find("IcoCharge"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refMageFlamethrowerEffect).RegisterAccessor(); #endregion #region CleanseEffect new AssetAccessor <Material>(MaterialIndex.refMatCleanseCore, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refCleanseEffect).transform.Find("Ring"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refCleanseEffect).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatCleanseWater, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refCleanseEffect).transform.Find("Splash"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refCleanseEffect).RegisterAccessor(); #endregion #region LaserTurbineBombExplosion new AssetAccessor <Material>(MaterialIndex.refMatLaserTurbineTargetingLaser, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refLaserTurbineBombExplosion).transform.Find("Slashes"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refLaserTurbineBombExplosion).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatOmniRadialSlash1Merc, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refLaserTurbineBombExplosion).transform.Find("BillboardSlashes"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refLaserTurbineBombExplosion).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatOmniHitspark2Merc, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refLaserTurbineBombExplosion).transform.Find("SharpSlashes"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refLaserTurbineBombExplosion).RegisterAccessor(); #endregion #region GravekeeperMaskDeath new AssetAccessor <Material>(MaterialIndex.refMatOmniHitspark1, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refGravekeeperMaskDeath).transform.Find("OmniExplosionVFXArchWisp/ScaledHitsparks 1"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refGravekeeperMaskDeath).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatOpagueDust, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refGravekeeperMaskDeath).transform.Find("OmniExplosionVFXArchWisp/ScaledSmoke, Billboard"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refGravekeeperMaskDeath).RegisterAccessor(); #endregion #region LevelUpEffect new AssetAccessor <Material>(MaterialIndex.refMatOmniRing1Generic, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refLevelUpEffect).transform.Find("Ring"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refLevelUpEffect).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatOmniHitspark4Merc, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refLevelUpEffect).transform.Find("BrightFlash, Lines"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refLevelUpEffect).RegisterAccessor(); #endregion #region ClayBossMulcher new AssetAccessor <Material>(MaterialIndex.refMatBloodClayLarge, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refClayBossMulcher).transform.Find("Goo"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refClayBossMulcher).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatClayGooFizzle, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refClayBossMulcher).transform.Find("Trail"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refClayBossMulcher).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatClayBubbleBillboard, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refClayBossMulcher).transform.Find("Bubbles, 2D"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refClayBossMulcher).RegisterAccessor(); #endregion #region ElectricWormBurrow new AssetAccessor <Material>(MaterialIndex.refMatOpagueDustLargeDirectional, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refElectricWormBurrow).transform.Find("ParticleLoop/Dust, Directional"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refElectricWormBurrow).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatOpagueDustLarge, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refElectricWormBurrow).transform.Find("ParticleLoop/Dust, Billboard"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refElectricWormBurrow).RegisterAccessor(); #endregion #region AmmoPackPickupEffect new AssetAccessor <Material>(MaterialIndex.refMatGenericLaser, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refAmmoPackPickupEffect).transform.Find("Ring"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refAmmoPackPickupEffect).RegisterAccessor(); #endregion #region BubbleShieldEndEffect new AssetAccessor <Material>(MaterialIndex.refMatEngiShieldShards, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refBubbleShieldEndEffect).transform.Find("Quads"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refBubbleShieldEndEffect).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatOmniExplosion1, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refBubbleShieldEndEffect).transform.Find("OmniExplosionVFXEngiTurretDeath/Unscaled Flames"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refBubbleShieldEndEffect).RegisterAccessor(); new AssetAccessor <Material>(MaterialIndex.refMatRoboChunks, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refBubbleShieldEndEffect).transform.Find("OmniExplosionVFXEngiTurretDeath/Chunks, Billboards"); ParticleSystemRenderer rend = trans.GetComponent <ParticleSystemRenderer>(); return(rend.sharedMaterials[0]); }, PrefabIndex.refBubbleShieldEndEffect).RegisterAccessor(); #endregion #endregion completedProperly = true; }
static MeshInitializer() { #region Unity Primatives new AssetAccessor <Mesh>(MeshIndex.Sphere, () => { var obj = GameObject.CreatePrimitive(PrimitiveType.Sphere); Mesh mesh = obj.GetComponent <MeshFilter>().mesh; UnityEngine.Object.Destroy(obj); return(mesh); }).RegisterAccessor(); new AssetAccessor <Mesh>(MeshIndex.Capsule, () => { var obj = GameObject.CreatePrimitive(PrimitiveType.Capsule); Mesh mesh = obj.GetComponent <MeshFilter>().mesh; UnityEngine.Object.Destroy(obj); return(mesh); }).RegisterAccessor(); new AssetAccessor <Mesh>(MeshIndex.Cylinder, () => { var obj = GameObject.CreatePrimitive(PrimitiveType.Cylinder); Mesh mesh = obj.GetComponent <MeshFilter>().mesh; UnityEngine.Object.Destroy(obj); return(mesh); }).RegisterAccessor(); new AssetAccessor <Mesh>(MeshIndex.Cube, () => { var obj = GameObject.CreatePrimitive(PrimitiveType.Cube); Mesh mesh = obj.GetComponent <MeshFilter>().mesh; UnityEngine.Object.Destroy(obj); return(mesh); }).RegisterAccessor(); new AssetAccessor <Mesh>(MeshIndex.Plane, () => { var obj = GameObject.CreatePrimitive(PrimitiveType.Plane); Mesh mesh = obj.GetComponent <MeshFilter>().mesh; UnityEngine.Object.Destroy(obj); return(mesh); }).RegisterAccessor(); new AssetAccessor <Mesh>(MeshIndex.Quad, () => { var obj = GameObject.CreatePrimitive(PrimitiveType.Quad); Mesh mesh = obj.GetComponent <MeshFilter>().mesh; UnityEngine.Object.Destroy(obj); return(mesh); }).RegisterAccessor(); #endregion #region Hopoo Meshes new AssetAccessor <Mesh>(MeshIndex.Spiral1, () => { Transform trans = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refWillOWispExplosion).transform; ParticleSystemRenderer rend = trans.Find("Flames, Tube").GetComponent <ParticleSystemRenderer>(); Int32 count = rend.meshCount; if (count > 1) { var meshes = new Mesh[count]; _ = rend.GetMeshes(meshes); return(meshes[0]); } return(rend.mesh); }, PrefabIndex.refWillOWispExplosion).RegisterAccessor(); new AssetAccessor <Mesh>(MeshIndex.TornadoMesh, () => { Transform obj = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refFireTornadoGhost).transform.Find("TornadoSmokeMesh"); return(obj.GetComponent <ParticleSystemRenderer>().mesh); }, PrefabIndex.refFireTornadoGhost).RegisterAccessor(); new AssetAccessor <Mesh>(MeshIndex.TornadoMesh2, () => { Transform obj = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refFireTornadoGhost).transform.Find("TornadoMesh"); return(obj.GetComponent <ParticleSystemRenderer>().mesh); }, PrefabIndex.refFireTornadoGhost).RegisterAccessor(); new AssetAccessor <Mesh>(MeshIndex.MdlTriTip, () => { MeshFilter obj = AssetLibrary <GameObject> .GetAsset(PrefabIndex.refPickupTriTip).transform.Find("mslTriTip").GetComponent <MeshFilter>(); return(obj.sharedMesh); }, PrefabIndex.refPickupTriTip).RegisterAccessor(); new AssetAccessor <Mesh>(MeshIndex.Donut2, () => AssetLibrary <GameObject> .GetAsset(PrefabIndex.refMercSwordSlashWhirlwind).transform.Find("SwingTrail").GetComponent <ParticleSystemRenderer>().mesh, PrefabIndex.refMercSwordSlashWhirlwind).RegisterAccessor(); #endregion completedProperly = true; }
internal void RegisterAccessor() => AssetLibrary <TAsset> .AddAsset(this);