From 755d6deb171c46bbf1fa328b90ce1f097a9d58e9 Mon Sep 17 00:00:00 2001 From: lolbot-iichan Date: Sun, 19 May 2019 21:55:26 +0300 Subject: WINTERMUTE: Add FoxTail dynamic light methods FoxTail requires access to SubFrame's pixels to set actor.AlphaColor with lighting map pixel value at x,y of actor's position. --- engines/wintermute/base/gfx/osystem/base_surface_osystem.h | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'engines/wintermute/base/gfx') diff --git a/engines/wintermute/base/gfx/osystem/base_surface_osystem.h b/engines/wintermute/base/gfx/osystem/base_surface_osystem.h index 9fbbe1d498..950cabf28c 100644 --- a/engines/wintermute/base/gfx/osystem/base_surface_osystem.h +++ b/engines/wintermute/base/gfx/osystem/base_surface_osystem.h @@ -81,6 +81,17 @@ public: } return _height; } + bool getPixel(int x, int y, byte *r, byte *g, byte *b, byte *a) override { + if (!_loaded) { + finishLoad(); + } + if (_surface) { + uint32 pixel = getPixelAt(_surface, x, y); + _surface->format.colorToARGB(pixel, *a, *r, *g, *b); + return STATUS_OK; + } + return STATUS_FAILED; + } Graphics::AlphaType getAlphaType() const { return _alphaType; } private: -- cgit v1.2.3