DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ RefreshAudio()

void Edible_Base::RefreshAudio ( )
inlineprotected

См. определение в файле Edible_Base.c строка 223

224 {
225 string soundName = "";
226
227 FoodStageType currentFoodStage = GetFoodStageType();
229
230 if (currentFoodStage == FoodStageType.BURNED)
231 {
232 soundName = SOUND_BURNING_DONE;
233 }
234 else
235 {
236 switch (m_CookedByMethod)
237 {
238 case CookingMethodType.BAKING:
239 {
240 if (nextFoodStage == FoodStageType.BAKED)
241 soundName = SOUND_BAKING_START;
242 else if (currentFoodStage == FoodStageType.BAKED)
243 soundName = SOUND_BAKING_DONE;
244 else
245 soundName = "";
246 break;
247 }
248
249 case CookingMethodType.BOILING:
250 {
251 if (nextFoodStage == FoodStageType.BOILED)
252 soundName = SOUND_BOILING_START;
253 else if (currentFoodStage == FoodStageType.BOILED)
254 soundName = SOUND_BOILING_DONE;
255 else
256 soundName = "";
257 break;
258 }
259
260 case CookingMethodType.DRYING:
261 {
262 if (nextFoodStage == FoodStageType.DRIED)
263 soundName = SOUND_DRYING_START;
264 else if (currentFoodStage == FoodStageType.DRIED)
265 soundName = SOUND_DRYING_DONE;
266 else
267 soundName = "";
268 break;
269 }
270
271 default:
272 soundName = "";
273 break;
274 }
275
276 if (nextFoodStage == FoodStageType.BURNED)
277 {
278 if (soundName == "") //on 'bad' transitions only, indicates bad outcome
279 {
280 soundName = SOUND_BURNING_DONE;
281 }
282 else // pre-emptive burning sounds replace regular ones
283 {
284 array<float> nextStageProperties = new array<float>();
285 nextStageProperties = FoodStage.GetAllCookingPropertiesForStage(nextFoodStage, null, GetType());
286 float nextStageTime = nextStageProperties.Get(eCookingPropertyIndices.COOK_TIME);
287 float progress01 = GetCookingTime() / nextStageTime;
288 if (progress01 > Cooking.BURNING_WARNING_THRESHOLD)
289 {
290 soundName = SOUND_BURNING_DONE;
291 }
292 }
293 }
294 }
295
296 SoundCookingStart(soundName);
297 }
eBleedingSourceType GetType()
Определения BleedingSource.c:63
CookingMethodType
Определения Cooking.c:2
FoodStageType
Определения FoodStage.c:2
FoodStageType GetFoodStageType()
Определения Edible_Base.c:531
const string SOUND_BOILING_START
Определения Edible_Base.c:7
FoodStageType GetNextFoodStageType(CookingMethodType cooking_method)
Определения Edible_Base.c:603
const string SOUND_BAKING_DONE
Определения Edible_Base.c:6
const string SOUND_DRYING_START
Определения Edible_Base.c:9
void SoundCookingStart(string sound_name)
Определения Edible_Base.c:705
const string SOUND_BAKING_START
Определения Edible_Base.c:5
const string SOUND_DRYING_DONE
Определения Edible_Base.c:10
float GetCookingTime()
Определения Edible_Base.c:657
CookingMethodType m_CookedByMethod
Определения Edible_Base.c:23
const string SOUND_BURNING_DONE
Определения Edible_Base.c:11
const string SOUND_BOILING_DONE
Определения Edible_Base.c:8

Перекрестные ссылки GetCookingTime(), GetFoodStageType(), GetNextFoodStageType(), GetType(), m_CookedByMethod, SOUND_BAKING_DONE, SOUND_BAKING_START, SOUND_BOILING_DONE, SOUND_BOILING_START, SOUND_BURNING_DONE, SOUND_DRYING_DONE, SOUND_DRYING_START и SoundCookingStart().

Используется в OnVariablesSynchronized().