コード例 #1
0
        private void Awake()
        {
            Debug.Log("Loading assets.");
            using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("ArtifactOfHaste.artifactofhaste"))
            {
                var bundle   = AssetBundle.LoadFromStream(stream);
                var provider = new AssetBundleResourcesProvider("@ArtifactOfHaste", bundle);
                ResourcesAPI.AddProvider(provider);
            }

            config = new ConfigFile(Path.Combine(Paths.ConfigPath, modGuid + ".cfg"), true);

            Debug.Log("Creating mod info.");
            itemList = T2Module.InitAll <CatalogBoilerplate>(new T2Module.ModInfo
            {
                displayName     = "Artifact of Haste",
                longIdentifier  = "ArtifactOfHaste",
                shortIdentifier = "AOH",
                mainConfigFile  = config
            });

            Debug.Log("Initializing mod.");
            T2Module.SetupAll_PluginAwake(itemList);
            T2Module.SetupAll_PluginStart(itemList);
        }
コード例 #2
0
        private void Awake()
        {
            logger = Logger;

            Logger.LogDebug($"Initialising plugin -- Version {ModVersion}");
            Logger.LogDebug("Loading configuration...");

            config = new ConfigFile(Path.Combine(Paths.ConfigPath, $"{ModGuid}.cfg"), true);

            Logger.LogDebug("Loading assets...");
            using (Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("MoreItems.moreitems"))
            {
                AssetBundle bundle = AssetBundle.LoadFromStream(stream);
                AssetBundleResourcesProvider provider = new AssetBundleResourcesProvider("@MoreItems", bundle);

                ResourcesAPI.AddProvider(provider);
            }

            masterItemList = T2Module.InitAll <CatalogBoilerplate>(new T2Module.ModInfo
            {
                displayName     = "More Items",
                longIdentifier  = "MoreItems",
                shortIdentifier = "More",
                mainConfigFile  = config
            });

            T2Module.SetupAll_PluginAwake(masterItemList);
        }
コード例 #3
0
        private void Awake()
        {
            _logger = Logger;

            using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("SupplyDrop.supplydrop_assets"))
            {
                var bundle   = AssetBundle.LoadFromStream(stream);
                var provider = new AssetBundleResourcesProvider("@SupplyDrop", bundle);
                ResourcesAPI.AddProvider(provider);
            }
            ConfigFile = new ConfigFile(Path.Combine(Paths.ConfigPath, ModGuid + ".cfg"), true);

            masterItemList = T2Module.InitAll <CatalogBoilerplate>(new T2Module.ModInfo
            {
                displayName     = "Supply Drop",
                longIdentifier  = "SUPPLYDROP",
                shortIdentifier = "SUPPDRP",
                mainConfigFile  = ConfigFile
            });

            using (var bankStream = Assembly.GetExecutingAssembly().GetManifestResourceStream("SupplyDrop.SupplyDropSounds.bnk"))
            {
                var bytes = new byte[bankStream.Length];
                bankStream.Read(bytes, 0, bytes.Length);
                SoundAPI.SoundBanks.Add(bytes);
            }

            T2Module.SetupAll_PluginAwake(masterItemList);
            T2Module.SetupAll_PluginStart(masterItemList);
        }
コード例 #4
0
        public static void Init()
        {
            if (Loaded)
            {
                return;
            }

            Loaded = true;
            var execAssembly = Assembly.GetExecutingAssembly();

            using (var stream = execAssembly.GetManifestResourceStream("JarlykMods.Umbrella.umbrella.assets"))
            {
                var bundle   = AssetBundle.LoadFromStream(stream);
                var provider = new AssetBundleResourcesProvider(Prefix.TrimEnd(':'), bundle);
                ResourcesAPI.AddProvider(provider);

                BulletTimerPrefab = bundle.LoadAsset <GameObject>("Assets/Import/bullet_timer/BulletTimer.prefab");
                JestersDicePrefab = bundle.LoadAsset <GameObject>("Assets/Prefabs/JestersDice.prefab");
            }

            using (var bankStream = execAssembly.GetManifestResourceStream("JarlykMods.Umbrella.Umbrella.bnk"))
            {
                var bytes = new byte[bankStream.Length];
                bankStream.Read(bytes, 0, bytes.Length);
                SoundBanks.Add(bytes);
            }
        }
コード例 #5
0
        private void Awake() //Sourced almost entirely from ThinkInvis' Classic Items. It is also extremely handy.
        {
            _logger = Logger;

#if DEBUG
            Logger.LogWarning("DEBUG mode is enabled! Ignore this message if you are actually debugging.");
            On.RoR2.Networking.GameNetworkManager.OnClientConnect += (self, user, t) => { };
#endif

            using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("Aetherium.aetherium_assets"))
            {
                var bundle   = AssetBundle.LoadFromStream(stream);
                var provider = new AssetBundleResourcesProvider("@Aetherium", bundle);
                ResourcesAPI.AddProvider(provider);
            }

            ConfigFile = new ConfigFile(Path.Combine(Paths.ConfigPath, ModGuid + ".cfg"), true);

            masterItemList = T2Module.InitAll <CatalogBoilerplate>(new T2Module.ModInfo
            {
                displayName     = "Aetherium",
                longIdentifier  = "AETHERIUMMOD",
                shortIdentifier = "ATHRM",
                mainConfigFile  = ConfigFile
            });


            T2Module.SetupAll_PluginAwake(masterItemList);
            T2Module.SetupAll_PluginStart(masterItemList);
        }
コード例 #6
0
        public static void PopulateAssets()
        {
            if (MainAssetBundle == null)
            {
                using (var assetStream = Assembly.GetExecutingAssembly().GetManifestResourceStream("ExampleSurvivor.examplesurvivorbundle"))
                {
                    MainAssetBundle = AssetBundle.LoadFromStream(assetStream);
                    Provider        = new AssetBundleResourcesProvider("@ExampleSurvivor", MainAssetBundle);
                }
            }

            // include this if you're using a custom soundbank

            /*using (Stream manifestResourceStream2 = Assembly.GetExecutingAssembly().GetManifestResourceStream("ExampleSurvivor.ExampleSurvivor.bnk"))
             * {
             *  byte[] array = new byte[manifestResourceStream2.Length];
             *  manifestResourceStream2.Read(array, 0, array.Length);
             *  SoundAPI.SoundBanks.Add(array);
             * }*/

            // and now we gather the assets
            charPortrait = MainAssetBundle.LoadAsset <Sprite>("ExampleSurvivorBody").texture;

            iconP = MainAssetBundle.LoadAsset <Sprite>("PassiveIcon");
            icon1 = MainAssetBundle.LoadAsset <Sprite>("Skill1Icon");
            icon2 = MainAssetBundle.LoadAsset <Sprite>("Skill2Icon");
            icon3 = MainAssetBundle.LoadAsset <Sprite>("Skill3Icon");
            icon4 = MainAssetBundle.LoadAsset <Sprite>("Skill4Icon");
        }
コード例 #7
0
ファイル: WispSurvivor.cs プロジェクト: alltucki/WispMod
        public static void PopulateAssets()
        {
            if (MainAssetBundle == null)
            {
                //Should probably change this away from ExampleSurvivor but that sounds like it might break things
                using (var assetStream = Assembly.GetExecutingAssembly().GetManifestResourceStream("ExampleSurvivor.examplesurvivorbundle"))
                {
                    MainAssetBundle = AssetBundle.LoadFromStream(assetStream);
                    Provider        = new AssetBundleResourcesProvider("@ExampleSurvivor", MainAssetBundle);
                }
            }

            // include this if you're using a custom soundbank

            /*using (Stream manifestResourceStream2 = Assembly.GetExecutingAssembly().GetManifestResourceStream("ExampleSurvivor.ExampleSurvivor.bnk"))
             * {
             *  byte[] array = new byte[manifestResourceStream2.Length];
             *  manifestResourceStream2.Read(array, 0, array.Length);
             *  SoundAPI.SoundBanks.Add(array);
             * }*/

            // and now we gather the assets

            Texture2D skinText = MainAssetBundle.LoadAsset <Texture2D>("Skin");

            skin = TextToSprite(skinText);

            Texture2D iconPText = MainAssetBundle.LoadAsset <Texture2D>("Passive");

            iconP = TextToSprite(iconPText);

            Texture2D icon1Text = MainAssetBundle.LoadAsset <Texture2D>("Skill1");

            icon1 = TextToSprite(icon1Text);

            Texture2D icon2Text = MainAssetBundle.LoadAsset <Texture2D>("Skill2");

            icon2 = TextToSprite(icon2Text);

            Texture2D icon2RegenText = MainAssetBundle.LoadAsset <Texture2D>("Skill2_Heal");

            icon2_invigorate = TextToSprite(icon2RegenText);

            Texture2D icon3SiphonText = MainAssetBundle.LoadAsset <Texture2D>("Skill3_Siphon");

            icon3_siphon = TextToSprite(icon3SiphonText);

            Texture2D icon3TetherText = MainAssetBundle.LoadAsset <Texture2D>("Skill3_Tether");

            icon3_tether = TextToSprite(icon3TetherText);

            Texture2D icon4Text = MainAssetBundle.LoadAsset <Texture2D>("Skill4");

            icon4 = TextToSprite(icon4Text);

            charPortrait = MainAssetBundle.LoadAsset <Texture2D>("WispPreview");

            footstepPrefab = MainAssetBundle.LoadAsset <GameObject>("OrbFootstep");
        }
コード例 #8
0
 private static void RegisterAssetBundleProvider()
 {
     using (System.IO.Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("AffixGen.affixgen"))
     {
         AssetBundle bundle = AssetBundle.LoadFromStream(stream);
         AssetBundleResourcesProvider provider = new AssetBundleResourcesProvider("@AffixGen", bundle);
         ResourcesAPI.AddProvider(provider);
     }
 }
コード例 #9
0
 private static void AddProvider()
 {
     using (System.IO.Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("GiganticAmethyst.amethyst"))
     {
         AssetBundle bundle = AssetBundle.LoadFromStream(stream);
         AssetBundleResourcesProvider provider = new AssetBundleResourcesProvider("@Amethyst", bundle);
         ResourcesAPI.AddProvider(provider);
     };
 }
コード例 #10
0
 static MoreItems()
 {
     using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("MoreItems.itemasset"))
     {
         bundle = AssetBundle.LoadFromStream(stream);
         var provider = new AssetBundleResourcesProvider(ModPrefix.TrimEnd(':'), bundle);
         ResourcesAPI.AddProvider(provider);
     }
 }
コード例 #11
0
 public static IResourceProvider PopulateAssets()
 {
     using (var assetStream = Assembly.GetExecutingAssembly().GetManifestResourceStream("ForgottenFoes.forgottenfoes_assets"))
     {
         mainAssetBundle = AssetBundle.LoadFromStream(assetStream);
         Provider        = new AssetBundleResourcesProvider("@ForgottenFoes", mainAssetBundle);
     }
     return(Provider);
 }
コード例 #12
0
 private void AddAssetBundleProvider()
 {
     using (System.IO.Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("WispDeathBonus.wdbp"))
     {
         AssetBundle bundle = AssetBundle.LoadFromStream(stream);
         AssetBundleResourcesProvider provider = new AssetBundleResourcesProvider("@WDBP", bundle);
         ResourcesAPI.AddProvider(provider);
     }
 }
コード例 #13
0
ファイル: LuckyItems.cs プロジェクト: orare/LuckyItems
        public void Awake()
        {
            using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("LuckyItems.itemassets"))
            {
                bundle = AssetBundle.LoadFromStream(stream);
                var provider = new AssetBundleResourcesProvider(ModPrefix.Trim(':'), bundle);
                ResourcesAPI.AddProvider(provider);
            }

            ExtraShrineRoll.Init();
            ExtraItemPickup.Init();
        }
コード例 #14
0
        public void Awake()
        {
            logger  = Logger;
            cfgFile = new ConfigFile(Path.Combine(Paths.ConfigPath, ModGuid + ".cfg"), true);

            mainMenuOpenDelay = cfgFile.Bind(new ConfigDefinition("Client", "MainMenuOpenDelay"), 0.2f,
                                             new ConfigDescription("Time between ping keydown and opening of the radial menu. Faster keyups will cause a quick ping (vanilla behavior).",
                                                                   new AcceptableValueRange <float>(0f, float.MaxValue))).Value;
            //todo: option to keep first ping preview as result

            using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("RadialPings.radialpings_assets")) {
                var bundle   = AssetBundle.LoadFromStream(stream);
                var provider = new AssetBundleResourcesProvider("@RadialPings", bundle);
                ResourcesAPI.AddProvider(provider);
            }

            using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("RadialPings.lang_en.json"))
                using (var reader = new StreamReader(stream)) {
                    LanguageAPI.Add(reader.ReadToEnd());
                }

            RadialMenu.Setup();

            new MainPingMenuBindings();
            new PlayersMenuBindings();
            new DroneMenuBindings();
            new RespondablesMenuBindings();

            On.RoR2.PlayerCharacterMasterController.CheckPinging += On_PlayerCharacterMasterController_CheckPinging;
            On.RoR2.Run.OnDestroy += On_Run_OnDestroy;

            R2API.Networking.NetworkingAPI.RegisterMessageType <PingMenuHelper.MsgCustomPing>();

            #if DEBUG
            On.RoR2.Networking.GameNetworkManager.OnClientConnect += (orig, self, conn) => {
                if (!self.clientLoadedScene)
                {
                    ClientScene.Ready(conn);
                    if (self.autoCreatePlayer)
                    {
                        ClientScene.AddPlayer(0);
                    }
                }
                self.clientRttFrame         = 0f;
                self.filteredClientRttFixed = 0f;
                self.ClientSetPlayers(conn);
                RoR2.Networking.RttManager.OnConnectionDiscovered(conn);
            };
            On.RoR2.NetworkUser.UpdateUserName += (orig, self) => {
                self.userName = $"DEBUG USER NetID:{self.netId}";
            };
            #endif
        }
コード例 #15
0
        internal static void Init()
        {
            using (System.IO.Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("GiganticAmethyst.amethyst"))
            {
                AmethystBundle   = AssetBundle.LoadFromStream(stream);
                AmethystProvider = new AssetBundleResourcesProvider(ModPrefix.Trim(':'), AmethystBundle);
                ResourcesAPI.AddProvider(AmethystProvider);
                AmethystPrefab = AmethystBundle.LoadAsset <GameObject>("Assets/Amethyst.prefab");
            };

            AmethystAsEquip();
        }
コード例 #16
0
        public static void Init()
        {
            if (Loaded)
            {
                return;
            }

            Loaded = true;
            var execAssembly = Assembly.GetExecutingAssembly();

            using (var stream = execAssembly.GetManifestResourceStream("JarlykMods.Hailstorm.hailstorm.assets"))
            {
                var bundle   = AssetBundle.LoadFromStream(stream);
                var provider = new AssetBundleResourcesProvider(Prefix.TrimEnd(':'), bundle);
                ResourcesAPI.AddProvider(provider);

                DarknessShader = bundle.LoadAsset <Shader>("Assets/Effects/darkness.shader");

                PureBlack    = bundle.LoadAsset <Material>("Assets/Materials/PureBlack.mat");
                PurpleCracks = bundle.LoadAsset <Material>("Assets/Materials/PurpleCracks.mat");

                TwisterVisualPrefab = bundle.LoadAsset <GameObject>("Assets/Prefabs/TwisterVisual.prefab");
                TwisterPrefab       = bundle.LoadAsset <GameObject>("Assets/Prefabs/Twister.prefab");
                TwisterProjectileController.AugumentPrefab(TwisterPrefab);

                BarrierMaterial = Resources.Load <GameObject>("Prefabs/TemporaryVisualEffects/barriereffect")
                                  .GetComponentInChildren <MeshRenderer>().material;

                CataclysmPlatformPrefab = bundle.LoadAsset <GameObject>("Assets/Prefabs/CataclysmPlatform.prefab");
                CataclysmPlatformPrefab.AddComponent <MobilePlatform>();

                CataclysmSkyboxMaterial = bundle.LoadAsset <Material>("Assets/SpaceSkies Free/Skybox_3/Purple_4K_Resolution.mat");
                CataclysmArenaPrefab    = bundle.LoadAsset <GameObject>("Assets/Prefabs/CataclysmArena.prefab");

                GravBombPrefab = bundle.LoadAsset <GameObject>("Assets/Prefabs/GravBomb.prefab");
                GravBombEffect.AugmentPrefab(GravBombPrefab);

                AsteroidProjectilePrefab = bundle.LoadAsset <GameObject>("Assets/Prefabs/AsteroidProjectile.prefab");
                AsteroidProjectileController.AugmentPrefab(AsteroidProjectilePrefab);

                LaserChargerPrefab = bundle.LoadAsset <GameObject>("Assets/Prefabs/LaserCharger.prefab");
                LaserChargerInteraction.AugmentPrefab(LaserChargerPrefab);
            }

            using (var bankStream = execAssembly.GetManifestResourceStream("JarlykMods.Hailstorm.Hailstorm.bnk"))
            {
                var bytes = new byte[bankStream.Length];
                bankStream.Read(bytes, 0, bytes.Length);
                SoundBanks.Add(bytes);
            }

            On.RoR2.Networking.GameNetworkManager.OnStartClient += GameNetworkManager_OnStartClient;
        }
コード例 #17
0
 public static void PopulateAssets()
 {
     // populate ASSets
     if (MainAssetBundle == null)
     {
         using (var assetStream = Assembly.GetExecutingAssembly().GetManifestResourceStream("FastArtiBolts.arti")) {
             MainAssetBundle = AssetBundle.LoadFromStream(assetStream);
             Provider        = new AssetBundleResourcesProvider("@FastArtiBolts", MainAssetBundle);
             ResourcesAPI.AddProvider(Provider);
         }
     }
     // gather assets
     FastBoltIcon = MainAssetBundle.LoadAsset <Sprite>("texMageSkillIcon");
 }
コード例 #18
0
        public void Awake()
        {
            using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("GlassArtifactOHP.glassohp_assets")) {
                var bundle   = AssetBundle.LoadFromStream(stream);
                var provider = new AssetBundleResourcesProvider("@GlassArtifactOHP", bundle);
                ResourcesAPI.AddProvider(provider);
            }

            IL.RoR2.CharacterBody.RecalculateStats += IL_CBRecalcStats;
            if (!ilFailed)
            {
                ArtifactCatalog.getAdditionalEntries += Evt_ACGetAdditionalEntries;
            }
        }
コード例 #19
0
        internal static void PopulateAssets()
        {
            if (mainAssetBundle == null)
            {
                using (var assetStream = Assembly.GetExecutingAssembly().GetManifestResourceStream("HenryMod.pleasechangethisnameinyourprojectorelseyouwillcauseconflicts"))
                {
                    mainAssetBundle = AssetBundle.LoadFromStream(assetStream);
                    var provider = new AssetBundleResourcesProvider("@Henry", mainAssetBundle);
                    ResourcesAPI.AddProvider(provider);
                }
            }

            using (Stream manifestResourceStream2 = Assembly.GetExecutingAssembly().GetManifestResourceStream("HenryMod.HenryBank.bnk"))
            {
                byte[] array = new byte[manifestResourceStream2.Length];
                manifestResourceStream2.Read(array, 0, array.Length);
                SoundAPI.SoundBanks.Add(array);
            }

            swordHitSoundEvent = CreateNetworkSoundEventDef("HenrySwordHit");
            punchHitSoundEvent = CreateNetworkSoundEventDef("HenryPunchHit");

            dustEffect          = LoadEffect("HenryDustEffect");
            bombExplosionEffect = LoadEffect("BombExplosionEffect");

            ShakeEmitter shakeEmitter = bombExplosionEffect.AddComponent <ShakeEmitter>();

            shakeEmitter.amplitudeTimeDecay             = true;
            shakeEmitter.duration                       = 0.5f;
            shakeEmitter.radius                         = 200f;
            shakeEmitter.scaleShakeRadiusWithLocalScale = false;

            shakeEmitter.wave = new Wave
            {
                amplitude   = 1f,
                frequency   = 40f,
                cycleOffset = 0f
            };

            swordSwingEffect     = Assets.LoadEffect("HenrySwordSwingEffect");
            swordHitImpactEffect = Assets.LoadEffect("ImpactHenrySlash");

            punchSwingEffect = Assets.LoadEffect("HenryFistSwingEffect");
            //punchImpactEffect = Assets.LoadEffect("ImpactHenryPunch");
            // on second thought my effect sucks so imma just clone loader's
            punchImpactEffect = PrefabAPI.InstantiateClone(Resources.Load <GameObject>("Prefabs/Effects/OmniEffect/OmniImpactVFXLoader"), "ImpactHenryPunch");
            punchImpactEffect.AddComponent <NetworkIdentity>();

            EffectAPI.AddEffect(punchImpactEffect);
        }
コード例 #20
0
ファイル: Main.cs プロジェクト: LargeSpanish/ExtraItems
        public void Awake()
        {
            using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("ExtraItems.extraitem_assets"))
            {
                MainAssets = AssetBundle.LoadFromStream(stream);
                var provider = new AssetBundleResourcesProvider($"@{ModName}", MainAssets);
                ResourcesAPI.AddProvider(provider);
            }

            //Item initialization
            var ItemTypes = Assembly.GetExecutingAssembly().GetTypes().Where(type => !type.IsAbstract && type.IsSubclassOf(typeof(ItemBase)));

            foreach (var itemType in ItemTypes)
            {
                ItemBase item = (ItemBase)System.Activator.CreateInstance(itemType);
                if (ValidateItem(item, Items))
                {
                    item.Init(Config);
                    ModLogger.LogInfo("Item: " + item.ItemName + " Initialized!");
                }
            }

            //Material Shader Conversion
            var materialAssets = MainAssets.LoadAllAssets <Material>();

            ModLogger.LogInfo("Intersection Shader is: " + IntersectionShader);

            foreach (Material material in materialAssets)
            {
                if (!material.shader.name.StartsWith("Fake"))
                {
                    continue;
                }
                switch (material.shader.name.ToLower())
                {
                case ("fake ror/hopoo games/deferred/hgstandard"):
                    material.shader = HopooShader;
                    break;

                case ("fake ror/hopoo games/fx/hgcloud intersection remap"):
                    material.shader = IntersectionShader;
                    break;

                case ("fake ror/hopoo games/fx/hgcloud remap"):
                    material.shader = CloudRemapShader;
                    break;
                }
            }
        }
コード例 #21
0
        internal static void PopulateAssets()
        {
            if (mainAssetBundle == null)
            {
                using (var assetStream = Assembly.GetExecutingAssembly().GetManifestResourceStream("MonsterVariants.monstervariants"))
                {
                    mainAssetBundle = AssetBundle.LoadFromStream(assetStream);
                    var provider = new AssetBundleResourcesProvider("@MonsterVariants", mainAssetBundle);
                    ResourcesAPI.AddProvider(provider);
                }
            }

            armoredMesh      = mainAssetBundle.LoadAsset <Mesh>("meshArmoredBeetle");
            speedyBeetleMesh = mainAssetBundle.LoadAsset <Mesh>("meshSpeedyBeetle");
        }
コード例 #22
0
        internal static void Init()
        {
            using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("GNCProtoRocket.exampleitemmod"))
            {
                Debug.Log(Assembly.GetExecutingAssembly().GetManifestResourceNames()[0]);
                var bundle   = AssetBundle.LoadFromStream(stream);
                var provider = new AssetBundleResourcesProvider(ModPrefix.TrimEnd(':'), bundle);
                ResourcesAPI.AddProvider(provider);

                GNCProtoRocketPrefab = bundle.LoadAsset <GameObject>("Assets/Import/belt/belt.prefab");
            }

            AddTokens();
            AddGNCProtoRocket();
        }
コード例 #23
0
ファイル: Assets.cs プロジェクト: dgosling/HenryMod
        internal static void PopulateAssets()
        {
            if (mainAssetBundle == null)
            {
                using (var assetStream = Assembly.GetExecutingAssembly().GetManifestResourceStream("HenryMod.PleaseChangeThisNameInYourProjectOrElseYouWillCauseConflicts"))
                {
                    mainAssetBundle = AssetBundle.LoadFromStream(assetStream);
                    var provider = new AssetBundleResourcesProvider("@Henry", mainAssetBundle);
                    ResourcesAPI.AddProvider(provider);
                }
            }

            //swordSwingEffect = Assets.LoadEffect("HenrySwingEffect");
            //swordHitImpactEffect = Assets.LoadEffect("HenrySwingImpactEffect");
        }
コード例 #24
0
        public static IResourceProvider PopulateAssets()
        {
            using (var assetStream = Assembly.GetExecutingAssembly().GetManifestResourceStream("KevinsAdditions.kevinsadditions_assets"))
            {
                mainAssetBundle = AssetBundle.LoadFromStream(assetStream);
                Provider        = new AssetBundleResourcesProvider("@KevinsAdditions", mainAssetBundle);
            }

            iconP = mainAssetBundle.LoadAsset <Sprite>("@KevinsAdditions:Assets/KevinsAdditions/textures/icons/icon");
            icon1 = mainAssetBundle.LoadAsset <Sprite>("@KevinsAdditions:Assets/KevinsAdditions/textures/icons/icon");
            icon2 = mainAssetBundle.LoadAsset <Sprite>("@KevinsAdditions:Assets/KevinsAdditions/textures/icons/icon");
            icon3 = mainAssetBundle.LoadAsset <Sprite>("@KevinsAdditions:Assets/KevinsAdditions/textures/icons/icon");
            icon4 = mainAssetBundle.LoadAsset <Sprite>("@KevinsAdditions:Assets/KevinsAdditions/textures/icons/icon");

            return(Provider);
        }
コード例 #25
0
ファイル: Ares.cs プロジェクト: KomradeSpectre/Ares
        private void Awake()
        {
            using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("Ares.ares_assets"))
            {
                var bundle   = AssetBundle.LoadFromStream(stream);
                var provider = new AssetBundleResourcesProvider("@Ares", bundle);
                ResourcesAPI.AddProvider(provider);
            }

            AffixEquipment.Add(new TheirReminder());

            foreach (AffixEquipmentBase AffixEquip in AffixEquipment)
            {
                AffixEquip.Init(base.Config);
            }
        }
コード例 #26
0
    public Assets()
    {
        Log.LogI("Loading assets...");


        commandoMaterial = Resources.Load <GameObject>("Prefabs/CharacterBodies/CommandoBody").GetComponentInChildren <CharacterModel>().baseRendererInfos[0].defaultMaterial;

        // populate ASSETS
        if (mainAssetBundle == null)
        {
            using (var assetStream = Assembly.GetExecutingAssembly().GetManifestResourceStream("Henry.henrybundle"))
            {
                mainAssetBundle = AssetBundle.LoadFromStream(assetStream);
                provider        = new AssetBundleResourcesProvider("@IGiveEnigmaAllRightsToMyMod", mainAssetBundle);
                ResourcesAPI.AddProvider(provider);
            }
        }
    }
コード例 #27
0
ファイル: Class1.cs プロジェクト: Hampus01/GymnasieArbete
        public void Assets()
        {
            const string ModPrefix  = "@CustomItem:";
            const string PrefabPath = ModPrefix + "Assets/Import/belt/belt.prefab";
            const string IconPath   = ModPrefix + "Assets/Import/belt_icon/belt_icon.png";

            using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("ModItem.rampage"))
            {
                var bundle   = AssetBundle.LoadFromStream(stream);
                var provider = new AssetBundleResourcesProvider(ModPrefix.TrimEnd(':'), bundle);
                ResourcesAPI.AddProvider(provider);

                BiscoLeashPrefab = bundle.LoadAsset <GameObject>("Assets/Import/belt/belt.prefab");
            }

            ItemDef itemDef = new ItemDef
            {
                name             = "ThornsPotion",
                tier             = ItemTier.Tier2,
                pickupModelPath  = PrefabPath,
                pickupIconPath   = IconPath,
                nameToken        = "Thorn's Potion",
                pickupToken      = "Return to sender",
                descriptionToken = "Have a 30% chance to return the damage delt to you (+100%)",
                loreToken        = "Empty",
                tags             = new[]
                {
                    ItemTag.Utility,
                    ItemTag.Damage
                }
            };

            ItemDisplayRule[] itemDisplayRules = new ItemDisplayRule[1];           // keep this null if you don't want the item to show up on the survivor 3d model. You can also have multiple rules !
            itemDisplayRules[0].followerPrefab = BiscoLeashPrefab;                 // the prefab that will show up on the survivor
            itemDisplayRules[0].childName      = "Chest";                          // this will define the starting point for the position of the 3d model, you can see what are the differents name available in the prefab model of the survivors
            itemDisplayRules[0].localScale     = new Vector3(0.15f, 0.15f, 0.15f); // scale the model
            itemDisplayRules[0].localAngles    = new Vector3(0f, 180f, 0f);        // rotate the model
            itemDisplayRules[0].localPos       = new Vector3(-0.35f, -0.1f, 0f);   // position offset relative to the childName, here the survivor Chest

            var thornsPotion = new CustomItem(itemDef, itemDisplayRules);

            Class1.ThornsPotion = ItemAPI.Add(thornsPotion); // ItemAPI sends back the ItemIndex of your item
        }
コード例 #28
0
ファイル: Assets.cs プロジェクト: JammingEnd/CustomItem
        internal static void Init()
        {
            // First registering your AssetBundle into the ResourcesAPI with a modPrefix that'll also be used for your prefab and icon paths
            // note that the string parameter of this GetManifestResourceStream call will change depending on
            // your namespace and file name
            using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("CustomItem.rampage"))
            {
                var bundle   = AssetBundle.LoadFromStream(stream);
                var provider = new AssetBundleResourcesProvider(ModPrefix.TrimEnd(':'), bundle);
                ResourcesAPI.AddProvider(provider);

                BiscoLeashPrefab = bundle.LoadAsset <GameObject>("Assets/Import/belt/belt.prefab");
            }

            BiscoLeashAsRedTierItem();
            BiscoLeashAsEquipment();

            AddLanguageTokens();
        }
コード例 #29
0
        internal static void Init()
        {
            using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("FloppyCrabsItems.floppycrabsitems"))
            {
                var bundle   = AssetBundle.LoadFromStream(stream);
                var provider = new AssetBundleResourcesProvider(ModPrefix.TrimEnd(':'), bundle);
                ResourcesAPI.AddProvider(provider);
            }

            // null = Do not display on Character
            var nullDisplay = new ItemDisplayRuleDict(null);

            aPistolAsRedTierItem(nullDisplay);
            garbAsGreenTierItem(nullDisplay);

            lightArmourAsBuff();

            // Adds string definitions for the language tokens defined below
            AddLanguageTokens();
        }
コード例 #30
0
ファイル: GNCItemSuite.cs プロジェクト: 6len/game-mods
        internal static void Init()
        {
            using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("GNCItemSuite.exampleitemmod"))
            {
                Debug.Log(Assembly.GetExecutingAssembly().GetManifestResourceNames()[0]);
                var bundle   = AssetBundle.LoadFromStream(stream);
                var provider = new AssetBundleResourcesProvider(ModPrefix.TrimEnd(':'), bundle);
                ResourcesAPI.AddProvider(provider);


                PoisonOnHitPrefab  = bundle.LoadAsset <GameObject>("Assets/Import/belt/Poison.prefab");
                BlightOnHitPrefab  = bundle.LoadAsset <GameObject>("Assets/Import/belt/Blight.prefab");
                RitualDaggerPrefab = bundle.LoadAsset <GameObject>("Assets/Import/belt/dagger.prefab");
            }

            AddTokens();
            AddPoisonOnHit();
            AddBlightOnHit();
            AddRitualDagger();
        }