source: TFP-WebServer/WebServer/src/ModApi.cs@ 503

Last change on this file since 503 was 503, checked in by alloc, 3 days ago

Compatibility fixes for 2.0

File size: 1.1 KB
Line 
1using System.Reflection;
2using HarmonyLib;
3using JetBrains.Annotations;
4using Webserver.UrlHandlers;
5
6namespace Webserver {
7 [UsedImplicitly]
8 public class ModApi : IModApi {
9 private Web webInstance;
10 private Mod modInstance;
11
12 public void InitMod (Mod _modInstance) {
13 ModEvents.GameStartDone.RegisterHandler (GameStartDone);
14 ModEvents.WorldShuttingDown.RegisterHandler (WorldShuttingDown);
15 modInstance = _modInstance;
16
17 Harmony.CreateAndPatchAll (Assembly.GetExecutingAssembly ());
18 }
19
20 private ModEvents.EModEventResult GameStartDone (ref ModEvents.SGameStartDoneData _data) {
21 if (!ConnectionManager.Instance.IsServer) {
22 return ModEvents.EModEventResult.Continue;
23 }
24
25 webInstance = new Web (modInstance.Path);
26 LogBuffer.Init ();
27
28 if (ItemIconHandler.Instance != null) {
29 ItemIconHandler.Instance.LoadIcons ();
30 }
31
32 return ModEvents.EModEventResult.Continue;
33 }
34
35 private ModEvents.EModEventResult WorldShuttingDown (ref ModEvents.SWorldShuttingDownData _data) {
36 webInstance?.Disconnect ();
37
38 return ModEvents.EModEventResult.Continue;
39 }
40 }
41}
Note: See TracBrowser for help on using the repository browser.