postpone the engine sound played from c++ on soundcontroller (via OnSound override)
1791 {
1794
1795 #ifndef SERVER
1796 PlayerBase player = null;
1797 EffectSound sound = null;
1799
1800 bool doInside = false;
1801
1803
1804 switch (state)
1805 {
1806 case CarEngineSoundState.STARTING:
1807 sound = new EffectSound();
1808 sound.
SetSoundSet(
"Offroad_02_Starting_SoundSet");
1810
1812 break;
1813 case CarEngineSoundState.START_OK:
1814 doInside = true;
1815
1816 sound = new EffectSound();
1819
1822 break;
1823
1824 case CarEngineSoundState.START_NO_FUEL:
1825 sound = new EffectSound();
1826 sound.
SetSoundSet(
"offroad_engine_failed_start_fuel_SoundSet");
1828 break;
1829
1830 case CarEngineSoundState.START_NO_BATTERY:
1831 sound = new EffectSound();
1832 sound.
SetSoundSet(
"offroad_engine_failed_start_battery_SoundSet");
1834 break;
1835
1836 case CarEngineSoundState.START_NO_SPARKPLUG:
1837 sound = new EffectSound();
1838 sound.
SetSoundSet(
"offroad_engine_failed_start_sparkplugs_SoundSet");
1840 break;
1841
1842 case CarEngineSoundState.STOP_OK:
1843 doInside = true;
1844
1845 sound = new EffectSound();
1848 break;
1849 case CarEngineSoundState.STOP_NO_FUEL:
1850 doInside = true;
1851
1852 sound = new EffectSound();
1855 break;
1856
1857 default:
1858 break;
1859 }
1860
1861
1862 if (doInside && Class.CastTo(player,
g_Game.GetPlayer()))
1863 {
1864 if (player.IsCameraInsideVehicle())
1865 {
1867 }
1868 }
1869
1870 if (sound)
1871 {
1872 vector enginePos = GetEnginePos();
1873
1875 sound.SetPosition(ModelToWorld(enginePos));
1876 sound.SetLocalPosition(enginePos);
1878 SEffectManager.EffectRegister(sound);
1879
1881 }
1882
1883 #endif
1884 }
string m_EngineStartOK
Sounds.
int m_CarEngineLastSoundState
void SetEngineStarted(bool started)
ref EffectSound m_PreStartSound
void SetCarEngineSoundState(CarEngineSoundState pState)
void SetSoundSet(string snd)
Set soundset for the sound.
override void SetAutodestroy(bool auto_destroy)
Sets whether Effect automatically cleans up when it stops.
void SetSoundWaveKind(WaveKind wave_kind)
Set WaveKind for the sound.
void SetSoundFadeOut(float fade_out)
Set the sound fade out duration.
override void SetParent(Object parent_obj, int pivot)
Set parent for the sound to follow.
bool SoundPlay()
Plays sound.