From 0ec029274ba544157212c23288e0e1f166f457b9 Mon Sep 17 00:00:00 2001 From: cybermind <iddqd_mail@mail.ru> Date: Sun, 31 Mar 2013 12:19:47 +0600 Subject: [PATCH] [-] Fixed crash when no file was used for missile --- src/missile/missile.cpp | 4 +++- src/sound/sound.cpp | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/missile/missile.cpp b/src/missile/missile.cpp index a4b2ae0de..85386d3e6 100644 --- a/src/missile/missile.cpp +++ b/src/missile/missile.cpp @@ -536,7 +536,9 @@ void Missile::DrawMissile(const CViewport &vp) const CLabel(GetGameFont()).DrawClip(screenPixelPos.x, screenPixelPos.y, this->Damage); break; default: - this->Type->DrawMissileType(this->SpriteFrame, screenPixelPos); + if (Type->G) { + this->Type->DrawMissileType(this->SpriteFrame, screenPixelPos); + } break; } } diff --git a/src/sound/sound.cpp b/src/sound/sound.cpp index b7aa8d7ca..0cfda59fd 100644 --- a/src/sound/sound.cpp +++ b/src/sound/sound.cpp @@ -303,7 +303,7 @@ void PlayUnitSound(const CUnit &unit, CSound *sound) */ void PlayMissileSound(const Missile &missile, CSound *sound) { - int stereo = ((missile.position.x + missile.Type->G->Width / 2 - + int stereo = ((missile.position.x + (missile.Type->G ? missile.Type->G->Width / 2 : 0) + UI.SelectedViewport->MapPos.x * PixelTileSize.x) * 256 / ((UI.SelectedViewport->MapWidth - 1) * PixelTileSize.x)) - 128; clamp(&stereo, -128, 127);