static void Postfix(CommsRadioCarSpawner __instance) { if (!Main.Enabled) { return; } try { //Add trains to car spawner __instance.UpdateCarTypesToSpawn(true); } catch (Exception e) { Main.ModEntry.Logger.Error(e.ToString()); } }
static void Postfix(CommsRadioController __instance, ref List <ICommsRadioMode> ___allModes, ref CommsRadioCarSpawner ___carSpawnerControl) { if (!Main.Enabled) { return; } try { if (Main.CustomCarManagerInstance.CustomCarsToSpawn.Count <= 0) { return; } //Add our spawner to the comms radio var ccm = Main.CommsRadioCustomCarManager = __instance.gameObject.AddComponent <CommsRadioCustomCarManager>(); //We need to get info from car spawner because we don't have these naturally. ccm.display = ___carSpawnerControl.display; ccm.validMaterial = ___carSpawnerControl.validMaterial; ccm.invalidMaterial = ___carSpawnerControl.invalidMaterial; ccm.lcdArrow = ___carSpawnerControl.lcdArrow; ccm.spawnModeEnterSound = ___carSpawnerControl.spawnModeEnterSound; ccm.spawnVehicleSound = ___carSpawnerControl.spawnVehicleSound; ccm.confirmSound = ___carSpawnerControl.confirmSound; ccm.cancelSound = ___carSpawnerControl.cancelSound; ccm.destinationHighlighterGO = ___carSpawnerControl.destinationHighlighterGO; ccm.directionArrowsHighlighterGO = ___carSpawnerControl.directionArrowsHighlighterGO; //setup script after we add references. ccm.Setup(); //Add our custom mode to comms radio ___allModes.Add(Main.CommsRadioCustomCarManager); } catch (Exception e) { Main.ModEntry.Logger.Error(e.ToString()); } }