diff options
author | rubidium <rubidium@openttd.org> | 2012-02-11 20:08:31 +0000 |
---|---|---|
committer | rubidium <rubidium@openttd.org> | 2012-02-11 20:08:31 +0000 |
commit | 0e925c9e5e0df9fa0576b02c2b2984d819fcf6e3 (patch) | |
tree | 94891607655c2935831311baf5c682279eb540c4 | |
parent | 1b13eb49dd86cca51f8bd529aeae2f2bf94da5a3 (diff) | |
download | openttd-0e925c9e5e0df9fa0576b02c2b2984d819fcf6e3.tar.xz |
(svn r23927) -Fix [FS#5056]: 32bpp animated blitter was optimised a bit too far regarding not needing to update the colour mapping when (re)initialising the palette
-rw-r--r-- | src/blitter/32bpp_anim.cpp | 7 | ||||
-rw-r--r-- | src/script/api/script_news.cpp | 2 |
2 files changed, 4 insertions, 5 deletions
diff --git a/src/blitter/32bpp_anim.cpp b/src/blitter/32bpp_anim.cpp index 271cea284..acc726215 100644 --- a/src/blitter/32bpp_anim.cpp +++ b/src/blitter/32bpp_anim.cpp @@ -417,10 +417,9 @@ void Blitter_32bppAnim::PaletteAnimate(const Palette &palette) this->palette = palette; /* If first_dirty is 0, it is for 8bpp indication to send the new - * palette. As we dont do that for 32bpp, ignore that request - * completely */ - if (this->palette.first_dirty == 0) return; - assert(this->palette.first_dirty == PALETTE_ANIM_START); + * palette. However, only the animation colours might possibly change. + * Especially when going between toyland and non-toyland. */ + assert(this->palette.first_dirty == PALETTE_ANIM_START || this->palette.first_dirty == 0); const uint16 *anim = this->anim_buf; uint32 *dst = (uint32 *)_screen.dst_ptr; diff --git a/src/script/api/script_news.cpp b/src/script/api/script_news.cpp index 9319c8df0..aaa8a6895 100644 --- a/src/script/api/script_news.cpp +++ b/src/script/api/script_news.cpp @@ -21,7 +21,7 @@ EnforcePrecondition(false, text != NULL); EnforcePrecondition(false, !StrEmpty(text->GetEncodedText())); - EnforcePrecondition(false, type >= NT_ARRIVAL_COMPANY && type <= NT_GENERAL); + EnforcePrecondition(false, type == NT_ECONOMY || type == NT_SUBSIDIES || type == NT_GENERAL); EnforcePrecondition(false, company == ScriptCompany::COMPANY_INVALID || ScriptCompany::ResolveCompanyID(company) != ScriptCompany::COMPANY_INVALID); uint8 c = company; |