protected override void UnloadData() { MyAPIGateway.Entities.OnEntityAdd -= AddGrid; MyAPIGateway.Entities.OnEntityRemove -= RemoveGrid; RtsApiBackend.Close(); }
public override void Init(MyObjectBuilder_SessionComponent sessionComponent) { thrustTypeId = MyObjectBuilderType.ParseBackwardsCompatible("Thrust"); cockpitTypeId = MyObjectBuilderType.ParseBackwardsCompatible("Cockpit"); NetworkAPI.LogNetworkTraffic = false; if (!NetworkAPI.IsInitialized) { NetworkAPI.Init(ComId, ModName, CommandKeyword); } if (!RtsApiBackend.IsInitialized) { RtsApiBackend.Init(this); } cfg = new NetSync <Settings>(this, TransferType.ServerToClient, Settings.Load(), true, false); cfg.ValueChangedByNetwork += SettingChanged; Settings.Instance = cfg.Value; Network.RegisterChatCommand(string.Empty, Chat_Help); Network.RegisterChatCommand("help", Chat_Help); Network.RegisterChatCommand("hud", Chat_Hud); Network.RegisterChatCommand("config", Chat_Config); if (!MyAPIGateway.Multiplayer.IsServer) { Network.RegisterChatCommand("load", (args) => { Network.SendCommand("load"); }); } else { Network.RegisterNetworkCommand("load", ServerCallback_Load); Network.RegisterChatCommand("load", (args) => { cfg.Value = Settings.Load(); }); } MyLog.Default.Info("[RelativeTopSpeed] Starting."); MyAPIGateway.Entities.OnEntityAdd += AddGrid; MyAPIGateway.Entities.OnEntityRemove += RemoveGrid; }