Hi, todays patch introduced car radios for players to craft and deploy in cars. I would like all spawned cars to have one (and of course that players can't remove)
Request: static car radiosSuggestion
Thanks for the info, I'll look into this.
WhiteThunder
Thanks for the info, I'll look into this.
I found a way to automatically generate a modular car radio. Can I share it with you?
some one asked about this in the discord a while back and rostov114 gave the code
private void MaybeAddCarRadio(ModularCar car)
{
foreach (var child in car.children)
{
BaseVehicleModule? baseModule = child as BaseVehicleModule;
if (baseModule == null) continue;
//car should never have a radio if it just spawned, just in case?
foreach (var modchild in baseModule.children)
{
ModularCarRadio? modularCarRadio = modchild as ModularCarRadio;
if (modularCarRadio != null) return;
}
//thx rostov114
foreach (Socket_Base socket_Base in PrefabAttribute.server.FindAll<Socket_Base>(baseModule.prefabID))
{
if (socket_Base.socketName.Contains("radiosocket"))
{
ModularCarRadio? modularCarRadio = GameManager.server.CreateEntity("assets/content/vehicles/modularcar/subents/modular_car_radio.prefab",
UnityEngine.Vector3.zero, UnityEngine.Quaternion.identity, false) as ModularCarRadio;
if (modularCarRadio == null) return;
modularCarRadio.SetParent(baseModule, true, false);
modularCarRadio.transform.localPosition = socket_Base.localPosition;
modularCarRadio.transform.localRotation = socket_Base.localRotation * UnityEngine.Quaternion.Euler(new UnityEngine.Vector3(270, 0, 0));
modularCarRadio.Spawn(); modularCarRadio.RefreshEntityLinks(); return;
}
}
}
}
firingLaserzsome one asked about this in the discord a while back and rostov114 gave the code
private void MaybeAddCarRadio(ModularCar car) { foreach (var child in car.children) { BaseVehicleModule? baseModule = child as BaseVehicleModule; if (baseModule == null) continue; //car should never have a radio if it just spawned, just in case? foreach (var modchild in baseModule.children) { ModularCarRadio? modularCarRadio = modchild as ModularCarRadio; if (modularCarRadio != null) return; } //thx rostov114 foreach (Socket_Base socket_Base in PrefabAttribute.server.FindAll<Socket_Base>(baseModule.prefabID)) { if (socket_Base.socketName.Contains("radiosocket")) { ModularCarRadio? modularCarRadio = GameManager.server.CreateEntity("assets/content/vehicles/modularcar/subents/modular_car_radio.prefab", UnityEngine.Vector3.zero, UnityEngine.Quaternion.identity, false) as ModularCarRadio; if (modularCarRadio == null) return; modularCarRadio.SetParent(baseModule, true, false); modularCarRadio.transform.localPosition = socket_Base.localPosition; modularCarRadio.transform.localRotation = socket_Base.localRotation * UnityEngine.Quaternion.Euler(new UnityEngine.Vector3(270, 0, 0)); modularCarRadio.Spawn(); modularCarRadio.RefreshEntityLinks(); return; } } } }
Thank you, this job is very similar to what I do.