Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public void PreLoad()
- {
- HarmonyPatcher.GetInstance().PatchAll();
- SaveRegistry.RegisterDataParticipant<PlortUndisappearifier>();
- LookupRegistry.RegisterUpgradeEntry(Id.MOCHI_HACK_INITIAL, Bundle.LoadAsset<Sprite>("upgrade_initial"), 10000);
- LookupRegistry.RegisterUpgradeEntry(Id.MOCHI_HACK_ENABLE, Bundle.LoadAsset<Sprite>("upgrade_enable"), 0);
- LookupRegistry.RegisterUpgradeEntry(Id.MOCHI_HACK_DISABLE, Bundle.LoadAsset<Sprite>("upgrade_disable"), 0);
- MailRegistry.RegisterMailEntry("quicksilver_stolen_mail").SetFromTranslation("Mochi Miles").SetBodyTranslation("My name is Mochi Miles, you took my quicksilvers, prepare to die.");
- Id.MOCHI_HACK_INITIAL.GetTranslation().SetDescriptionTranslation("Hack the gate at Mochi's Manor to render it ineffective").SetNameTranslation("Gate Hack");
- Id.MOCHI_HACK_ENABLE.GetTranslation().SetDescriptionTranslation("Enable your Gate Hack").SetNameTranslation("Enable Gate Hack");
- Id.MOCHI_HACK_DISABLE.GetTranslation().SetDescriptionTranslation("Disable your Gate Hack").SetNameTranslation("Disable Gate Hack");
- PersonalUpgradeRegistry.RegisterUpgradeLock(Id.MOCHI_HACK_INITIAL, (x) =>
- {
- return x.CreateBasicLock(null, () => SceneContext.Instance.ProgressDirector.model?.HasProgress(ProgressDirector.ProgressType.ENTER_ZONE_MOCHI_RANCH) ?? false, 1);
- });
- PersonalUpgradeRegistry.RegisterUpgradeCallback(Id.MOCHI_HACK_INITIAL, (x, y) =>
- {
- if (y) SceneContext.Instance.PlayerState.AddUpgrade(Id.MOCHI_HACK_ENABLE, true);
- });
- PersonalUpgradeRegistry.RegisterUpgradeCallback(Id.MOCHI_HACK_DISABLE, (x, y) =>
- {
- if (y) SetHackState(x, false);
- if (y) SceneContext.Instance.PlayerState.onAmmoModeChanged(PlayerState.AmmoMode.DEFAULT);
- });
- PersonalUpgradeRegistry.RegisterUpgradeCallback(Id.MOCHI_HACK_ENABLE, (x, y) =>
- {
- if (y) SetHackState(x, true);
- if (y) SceneContext.Instance.PlayerState.onAmmoModeChanged(PlayerState.AmmoMode.NIMBLE_VALLEY);
- });
- GameObject generatorPrefab = LoadGadget();
- PrefabUtils.ReplaceFieldsWith(generatorPrefab, Gadget.Id.EXTRACTOR_DRILL_NOVICE, Id.GENERATOR_GADGET);
- generatorPrefab.AddComponent<ElectricStorage>();
- generatorPrefab.transform.Find("pole/sphere/trigger").gameObject.AddComponent<ElectricStorageTrigger>();
- LookupRegistry.RegisterGadget(new GadgetDefinition()
- {
- prefab = generatorPrefab,
- id = Id.GENERATOR_GADGET,
- pediaLink = PediaDirector.Id.UTILITIES,
- blueprintCost = 1000,
- buyCountLimit = 10,
- craftCosts = new GadgetDefinition.CraftCost[] { new GadgetDefinition.CraftCost() { amount = 10, id = Identifiable.Id.QUICKSILVER_PLORT } }
- });
- Id.GENERATOR_GADGET.GetTranslation().SetNameTranslation("Static Generator").SetDescriptionTranslation("This machine can generate and store static charge");
- SaveRegistry.RegisterSerializableGadgetModel<GeneratorModel>(0);
- DataModelRegistry.RegisterCustomGadgetModel(Id.GENERATOR_GADGET, typeof(GeneratorModel));
- GadgetRegistry.RegisterBlueprintLock(Id.GENERATOR_GADGET, (x) => x.CreateBasicLock(Id.GENERATOR_GADGET, Gadget.Id.NONE, ProgressDirector.ProgressType.ENTER_ZONE_MOCHI_RANCH, 3));
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement