112 lines
2.6 KiB
C#
112 lines
2.6 KiB
C#
using System.Collections;
|
|
using RoR2.ContentManagement;
|
|
|
|
namespace RoR2;
|
|
|
|
public class JunkContent : IContentPackProvider
|
|
{
|
|
public static class Items
|
|
{
|
|
public static ItemDef AACannon;
|
|
|
|
public static ItemDef PlasmaCore;
|
|
|
|
public static ItemDef CooldownOnCrit;
|
|
|
|
public static ItemDef TempestOnKill;
|
|
|
|
public static ItemDef WarCryOnCombat;
|
|
|
|
public static ItemDef PlantOnHit;
|
|
|
|
public static ItemDef MageAttunement;
|
|
|
|
public static ItemDef BurnNearby;
|
|
|
|
public static ItemDef CritHeal;
|
|
|
|
public static ItemDef Incubator;
|
|
|
|
public static ItemDef SkullCounter;
|
|
}
|
|
|
|
public static class Equipment
|
|
{
|
|
public static EquipmentDef SoulJar;
|
|
|
|
public static EquipmentDef EliteYellowEquipment;
|
|
|
|
public static EquipmentDef EliteGoldEquipment;
|
|
|
|
public static EquipmentDef GhostGun;
|
|
|
|
public static EquipmentDef OrbitalLaser;
|
|
|
|
public static EquipmentDef Enigma;
|
|
|
|
public static EquipmentDef SoulCorruptor;
|
|
}
|
|
|
|
public static class Buffs
|
|
{
|
|
public static BuffDef EnrageAncientWisp;
|
|
|
|
public static BuffDef LightningShield;
|
|
|
|
public static BuffDef Slow30;
|
|
|
|
public static BuffDef EngiTeamShield;
|
|
|
|
public static BuffDef GoldEmpowered;
|
|
|
|
public static BuffDef LoaderOvercharged;
|
|
|
|
public static BuffDef LoaderPylonPowered;
|
|
|
|
public static BuffDef Deafened;
|
|
|
|
public static BuffDef MeatRegenBoost;
|
|
|
|
public static BuffDef BodyArmor;
|
|
}
|
|
|
|
public static class Elites
|
|
{
|
|
public static EliteDef Gold;
|
|
}
|
|
|
|
private ContentPack contentPack = new ContentPack();
|
|
|
|
public string identifier => "RoR2.Junk";
|
|
|
|
public IEnumerator LoadStaticContentAsync(LoadStaticContentAsyncArgs args)
|
|
{
|
|
contentPack.identifier = identifier;
|
|
AddressablesLoadHelper loadHelper = AddressablesLoadHelper.CreateUsingDefaultResourceLocator("ContentPack:RoR2.Junk");
|
|
yield return loadHelper.AddContentPackLoadOperationWithYields(contentPack);
|
|
loadHelper.AddGenericOperation(delegate
|
|
{
|
|
ContentLoadHelper.PopulateTypeFields(typeof(Items), contentPack.itemDefs);
|
|
ContentLoadHelper.PopulateTypeFields(typeof(Equipment), contentPack.equipmentDefs);
|
|
ContentLoadHelper.PopulateTypeFields(typeof(Buffs), contentPack.buffDefs, (string fieldName) => "bd" + fieldName);
|
|
ContentLoadHelper.PopulateTypeFields(typeof(Elites), contentPack.eliteDefs, (string fieldName) => "ed" + fieldName);
|
|
}, 0.05f);
|
|
while (loadHelper.coroutine.MoveNext())
|
|
{
|
|
args.ReportProgress(loadHelper.progress.value);
|
|
yield return loadHelper.coroutine.Current;
|
|
}
|
|
}
|
|
|
|
public IEnumerator GenerateContentPackAsync(GetContentPackAsyncArgs args)
|
|
{
|
|
ContentPack.Copy(contentPack, args.output);
|
|
yield break;
|
|
}
|
|
|
|
public IEnumerator FinalizeAsync(FinalizeAsyncArgs args)
|
|
{
|
|
yield break;
|
|
}
|
|
}
|