-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathTerraheimItems.cs
61 lines (53 loc) · 2.19 KB
/
TerraheimItems.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
using BepInEx;
using HarmonyLib;
using System.IO;
using TerraheimItems.StatusEffects;
using TerraheimItems.Utility;
using UnityEngine;
using Jotunn.Entities;
using Jotunn.Managers;
namespace TerraheimItems
{
[BepInPlugin(ModGuid, ModName, ModVer)]
[BepInDependency(Jotunn.Main.ModGuid, BepInDependency.DependencyFlags.HardDependency)]
[BepInDependency("DasSauerkraut.Terraheim", BepInDependency.DependencyFlags.SoftDependency)]
class TerraheimItems : BaseUnityPlugin
{
public const string ModGuid = AuthorName + "." + ModName;
private const string AuthorName = "DasSauerkraut";
private const string ModName = "TerraheimItems";
private const string ModVer = "2.0.6";
public static readonly string ModPath = Path.GetDirectoryName(typeof(TerraheimItems).Assembly.Location);
private readonly Harmony harmony = new Harmony(ModGuid);
internal static TerraheimItems Instance { get; private set; }
private void Awake()
{
Instance = this;
Log.Init(Logger);
TranslationUtils.LoadTranslations();
SetupStatusEffects();
harmony.PatchAll();
Utility.AssetHelper.Init();
Weapons.Greatswords.Init();
Weapons.AxeForstasca.Init();
Weapons.AtgeirSilver.Init();
Weapons.KnifeIron.Init();
Weapons.ParryingDagger.Init();
Weapons.BowBlackmetal.Init();
Weapons.PickaxeBlackmetal.Init();
Weapons.SpearBlackmetal.Init();
Weapons.Battleaxes.Init();
Weapons.FlametalWeapons.Init();
Weapons.TorchOlympia.Init();
Weapons.Bombs.Init();
Weapons.ThrowingAxes.Init();
//Weapons.Javelins.Init();
Log.LogInfo("Patching complete");
}
public static void SetupStatusEffects()
{
ItemManager.Instance.AddStatusEffect(new CustomStatusEffect(ScriptableObject.CreateInstance<SE_HealthPercentDamage>(), fixReference: true));
ItemManager.Instance.AddStatusEffect(new CustomStatusEffect(ScriptableObject.CreateInstance<SE_ChainExplosionListener>(), fixReference: true));
}
}
}