equal
deleted
inserted
replaced
206 z = v->z_pos - 1; |
206 z = v->z_pos - 1; |
207 SetDisasterVehiclePos(v, x, y, z); |
207 SetDisasterVehiclePos(v, x, y, z); |
208 |
208 |
209 if (++v->age == 1) { |
209 if (++v->age == 1) { |
210 CreateEffectVehicleRel(v, 0, 7, 8, EV_CRASHED_SMOKE); |
210 CreateEffectVehicleRel(v, 0, 7, 8, EV_CRASHED_SMOKE); |
211 SndPlayVehicleFx(0x10, v); |
211 SndPlayVehicleFx(SND_12_EXPLOSION, v); |
212 v->u.disaster.image_override = 0xF42; |
212 v->u.disaster.image_override = 0xF42; |
213 } else if (v->age == 70) { |
213 } else if (v->age == 70) { |
214 v->u.disaster.image_override = 0xF43; |
214 v->u.disaster.image_override = 0xF43; |
215 } else if (v->age <= 300) { |
215 } else if (v->age <= 300) { |
216 if (!(v->tick_counter&7)) { |
216 if (!(v->tick_counter&7)) { |
309 } |
309 } |
310 |
310 |
311 // destroy? |
311 // destroy? |
312 if (v->age > 50) { |
312 if (v->age > 50) { |
313 CreateEffectVehicleRel(v, 0, 7, 8, EV_CRASHED_SMOKE); |
313 CreateEffectVehicleRel(v, 0, 7, 8, EV_CRASHED_SMOKE); |
314 SndPlayVehicleFx(0x10, v); |
314 SndPlayVehicleFx(SND_12_EXPLOSION, v); |
315 DeleteDisasterVeh(v); |
315 DeleteDisasterVeh(v); |
316 } |
316 } |
317 } |
317 } |
318 } |
318 } |
319 |
319 |
372 i = DEREF_INDUSTRY(v->dest_tile); |
372 i = DEREF_INDUSTRY(v->dest_tile); |
373 DestructIndustry(i); |
373 DestructIndustry(i); |
374 |
374 |
375 SetDParam(0, i->town->index); |
375 SetDParam(0, i->town->index); |
376 AddNewsItem(STR_B002_OIL_REFINERY_EXPLOSION, NEWS_FLAGS(NM_THIN,NF_VIEWPORT|NF_TILE,NT_ACCIDENT,0), i->xy, 0); |
376 AddNewsItem(STR_B002_OIL_REFINERY_EXPLOSION, NEWS_FLAGS(NM_THIN,NF_VIEWPORT|NF_TILE,NT_ACCIDENT,0), i->xy, 0); |
377 SndPlayTileFx(0x10, i->xy); |
377 SndPlayTileFx(SND_12_EXPLOSION, i->xy); |
378 } |
378 } |
379 } else if (v->next_order == 0) { |
379 } else if (v->next_order == 0) { |
380 int x,y; |
380 int x,y; |
381 uint tile; |
381 uint tile; |
382 int ind; |
382 int ind; |
442 i = DEREF_INDUSTRY(v->dest_tile); |
442 i = DEREF_INDUSTRY(v->dest_tile); |
443 DestructIndustry(i); |
443 DestructIndustry(i); |
444 |
444 |
445 SetDParam(0, i->town->index); |
445 SetDParam(0, i->town->index); |
446 AddNewsItem(STR_B003_FACTORY_DESTROYED_IN_SUSPICIOUS, NEWS_FLAGS(NM_THIN,NF_VIEWPORT|NF_TILE,NT_ACCIDENT,0), i->xy, 0); |
446 AddNewsItem(STR_B003_FACTORY_DESTROYED_IN_SUSPICIOUS, NEWS_FLAGS(NM_THIN,NF_VIEWPORT|NF_TILE,NT_ACCIDENT,0), i->xy, 0); |
447 SndPlayTileFx(0x10, i->xy); |
447 SndPlayTileFx(SND_12_EXPLOSION, i->xy); |
448 } |
448 } |
449 } else if (v->next_order == 0) { |
449 } else if (v->next_order == 0) { |
450 int x,y; |
450 int x,y; |
451 uint tile; |
451 uint tile; |
452 int ind; |
452 int ind; |
599 if (abs(v->x_pos - u->x_pos) > 16) |
599 if (abs(v->x_pos - u->x_pos) > 16) |
600 return; |
600 return; |
601 v->next_order = 1; |
601 v->next_order = 1; |
602 |
602 |
603 CreateEffectVehicleRel(u, 0, 7, 8, EV_CRASHED_SMOKE); |
603 CreateEffectVehicleRel(u, 0, 7, 8, EV_CRASHED_SMOKE); |
604 SndPlayVehicleFx(0x10, u); |
604 SndPlayVehicleFx(SND_12_EXPLOSION, u); |
605 |
605 |
606 DeleteDisasterVeh(u); |
606 DeleteDisasterVeh(u); |
607 |
607 |
608 for(i=0; i!=80; i++) { |
608 for(i=0; i!=80; i++) { |
609 uint32 r = Random(); |
609 uint32 r = Random(); |