1 using Vintagestory.API.Client;
2 using Vintagestory.API.Common;
8 public class AutomapMod : ModSystem
10 private ICoreAPI API { get; set; }
11 private ICoreClientAPI ClientAPI { get; set; }
12 private ILogger Logger { get; set; }
13 private AutomapSystem _localAutomap;
14 private AutomapGUIDialog _automapDialog;
17 public override bool ShouldLoad(EnumAppSide forSide)
19 return forSide.IsClient();
22 public override void StartClientSide(ICoreClientAPI api)
26 if (api.Side == EnumAppSide.Client) {
27 this.ClientAPI = api as ICoreClientAPI;
28 this.Logger = Mod.Logger;
31 ClientAPI.Logger.VerboseDebug("Automap Present!");
32 _localAutomap = new AutomapSystem( this.ClientAPI, this.Logger);
33 _automapDialog = new AutomapGUIDialog(ClientAPI, _localAutomap);
35 ClientAPI.Input.RegisterHotKey(AutomapGUIDialog._automapControlPanelKey, "Automap control panel", GlKeys.A, HotkeyType.GUIOrOtherControls);
36 ClientAPI.Input.SetHotKeyHandler(AutomapGUIDialog._automapControlPanelKey, ToggleAM_Dialog);
39 base.StartClientSide(api);
42 public override double ExecuteOrder( )
47 private bool ToggleAM_Dialog(KeyCombination comb)
49 if (_automapDialog.IsOpened( )) _automapDialog.TryClose( );
50 else _automapDialog.TryOpen( );