-SoundAsset added init for enum types.

-Vehicles updated to use enum initpersistfield.
This commit is contained in:
marauder2k7 2021-09-28 23:36:04 +01:00
parent 76addc52eb
commit 6bec47d3fa
5 changed files with 62 additions and 8 deletions

View file

@ -289,6 +289,17 @@ ConsoleDocClass( WheeledVehicleData,
"@ingroup Vehicles\n"
);
typedef WheeledVehicleData::Sounds wheelSoundsEnum;
DefineEnumType(wheelSoundsEnum);
ImplementEnumType(wheelSoundsEnum, "enum types.\n"
"@ingroup WheeledVehicleData\n\n")
{WheeledVehicleData::JetSound, "JetSound", "..." },
{WheeledVehicleData::EngineSound, "EngineSound", "..." },
{WheeledVehicleData::SquealSound, "SquealSound", "..." },
{WheeledVehicleData::WheelImpactSound, "WheelImpactSound", "..." },
EndImplementEnumType;
WheeledVehicleData::WheeledVehicleData()
{
tireEmitter = 0;
@ -335,7 +346,7 @@ bool WheeledVehicleData::preload(bool server, String &errorStr)
if (!server) {
for (S32 i = 0; i < MaxSounds; i++)
{
if (mWheeledVehicleSounds[i])
if (getWheeledVehicleSounds(i) != StringTable->EmptyString())
{
_setWheeledVehicleSounds(getWheeledVehicleSounds(i), i);
}
@ -437,7 +448,7 @@ bool WheeledVehicleData::mirrorWheel(Wheel* we)
void WheeledVehicleData::initPersistFields()
{
INITPERSISTFIELD_SOUNDASSET_ARRAY(WheeledVehicleSounds, Sounds::MaxSounds, WheeledVehicleData, "Sounds related to wheeled vehicle.");
INITPERSISTFIELD_SOUNDASSET_ENUMED(WheeledVehicleSounds, wheelSoundsEnum, MaxSounds, WheeledVehicleData, "Sounds related to wheeled vehicle.");
addField("tireEmitter",TYPEID< ParticleEmitterData >(), Offset(tireEmitter, WheeledVehicleData),
"ParticleEmitterData datablock used to generate particles from each wheel "