Commit Graph
405 Commits
Author SHA1 Message Date
Einar Johan Trøan Sømåen c9d4f37c13 Stub a class for handling commentary 2015-02-04 15:52:11 +01:00
Einar Johan Trøan Sømåen 9acbc7c6cc Implement a beginning of savegame handling for remastered, this has the side effect of breaking the savegame menu, unless GetTextObjectDimesnions returns bitmapWidth (but that breaks Special Features). Leaving it broken for now. (Save game format is modified for remastered from this commit). 2015-02-03 16:59:04 +01:00
Einar Johan Trøan Sømåen 7ff408def0 Implement enabling/disabling of special feature cutscenes/concept art gallery. 2015-02-03 14:33:32 +01:00
Einar Johan Trøan Sømåen 00cc0ad867 Move the handling of language-prefixes to GrimEngine, and let Actor atleast ask for the correct voice file. 2015-02-03 14:08:03 +01:00
Einar Johan Trøan Sømåen c113ae1731 Add a (rather hacky) way to enable live language-switching. 2015-02-02 20:47:40 +01:00
Joel Teichroeb b80b243ff7 Move remastered lua 2015-02-01 16:11:40 -08:00
Joel Teichroeb 875c4b09a5 Improve overlays 2015-01-31 13:36:01 -08:00
Joel Teichroeb 28fbf84855 Detect remastered 2015-01-31 12:33:03 -08:00
Joel Teichroeb 1afe52dcf9 Add overlays. Colour is currently wrong" 2015-01-28 20:44:27 -08:00
Einar Johan Trøan Sømåen 23401502af GRIM: Force the demo-flag on for grim-demos, thus enabling the english demo with intro video to run 2015-01-18 16:37:51 +01:00
Ingo van Lil 3d39e63da7 GRIM/EMI: Add Joystick/gamepad support 2015-01-12 19:45:18 +01:00
Christian Krause 316b2595e3 EMI: Avoid calling luaUpdate in poll event loop
- this avoids the issue that _frameTime is set to 0 if a consecutive
  luaUpdate() happens in the same millisecond and so getPerSecond()
  would return 0 for any given rate
- this fixes the issue that Guybrush would walk erratically
  when residualvm is built with optimization
2015-01-01 20:50:59 +01:00
Einar Johan Trøan Sømåen 223c81b144 EMI: Add code for one-shot playing the Aspyr logo on EMI Mac
This needs to be separate from the other videos, since the logo
is encoded as QuickTime. This solution replicates logic from
mainLoop to avoid adding any further special cases in engine code.
2014-12-02 17:01:39 +01:00
Einar Johan Trøan Sømåen 4b6d21d690 EMI: Add code for loading local.m4b from the german EFMI Installer file. 2014-09-17 21:14:22 +02:00
Joel Teichroeb e77f599f1c Merge pull request #1026 from Akz-/emi-sortorder-fix
EMI: Sort order fixes
2014-08-19 15:22:13 -07:00
Joni Vähämäki 0909de720b EMI: Do not reset sort order when the set changes.
The original game doesn't reset the sort order. This fixes, for example, the voodoo anklet being visible through walls after leaving the jail set.
2014-08-14 18:32:16 +03:00
Stefano Musumeci d0ce4482f9 GRIM: Changed the way strings are rendered. 2014-08-13 15:39:03 +02:00
Stefano Musumeci 8abb5b008c Merge branch 'master' into tinygl-dirty-rects
Conflicts:
	graphics/tinygl/zbuffer.cpp
	graphics/tinygl/zbuffer.h
2014-08-13 14:06:34 +02:00
Joel Teichroeb 5a06111056 GRIM: Fix a crash when the debugger comes up before g_movie has been initialized 2014-08-09 12:05:07 -07:00
Stefano Musumeci 4ec96c515e Merge branch 'master' into tinygl-dirty-rects 2014-08-07 18:11:22 +02:00
Joel Teichroeb dc57920d53 Merge pull request #995 from klusark/smushprim
GRIM/EMI: Simplify primitive drawing, and don't draw primitives over movies.
2014-08-06 09:55:18 -07:00
Joni Vähämäki d9e2b2057c EMI: Do not free sound tracks in the audio thread. 2014-08-06 19:43:11 +03:00
Joni Vähämäki 9ee420b0d0 EMI: Explicitly initialize g_imuse/g_emisound to null. 2014-08-06 19:43:09 +03:00
Joni Vähämäki a03a06b0f6 EMI: Initialize EMISound instead of iMuse at engine startup. 2014-08-06 19:16:54 +03:00
Joel Teichroeb 6627af4000 GRIM/EMI: Do not draw primitives in SmushMode. Fixes #990 2014-08-03 12:01:34 -07:00
Joel Teichroeb 42e6ed383b GRIM: Remove and refactor drawPrimitives 2014-08-03 11:58:12 -07:00
Stefano Musumeci 03239abf72 TINYGL: Restored old drawing logic. 2014-08-02 21:41:44 +02:00
Stefano Musumeci 91c44129b9 TINYGL/HACK: This commit is just an hack that makes the fps counter rendered correctly.
I will probably remove this after everything is finished.
2014-07-27 19:57:44 +02:00
Stefano Musumeci 4f6df7dea1 TINYGL: Reordered a function call inside Grim engine.
Explanation: luaUpdate destroys shadow mask buffers which in turn makes the program crash, this was the only solution I could come up with but I'm not sure if it has any side effects.
2014-07-27 19:57:44 +02:00
Christian Krause 1e82136592 EMI: Implement screenshot thumbnails for savegames 2014-07-16 23:18:43 +02:00
Joel Teichroeb 3cfccc39bb GRIM: Set g_grim to nullptr in the deconstructor 2014-06-21 00:08:10 -07:00
Joel Teichroeb a539832c78 Merge pull request #910 from JoseJX/FixGLTextureParams
EMI: Clamp sprites, repeat other textures.
2014-06-20 08:30:44 -07:00
Joseph Jezak df3d63fc24 EMI: Add support for clamping sprite textures and repeating other textures. 2014-06-18 22:19:42 -04:00
Joni Vähämäki b5cdd1240f EMI: Only draw models for actors inside the view frustum.
This adds math classes for doing frustum culling in software. These could be used for optimizing performance in many other places as well. For example, if an actor is outside the view frustum, it may not be necessary to do expensive keyframe animation and vertex skinning calculations for that actor.
2014-06-16 15:42:18 +03:00
Joel Teichroeb 0f3da43694 GRIM: Change NULL to nullptr. 2014-05-30 17:43:08 -07:00
Einar Johan Trøan Sømåen a7b78f72f7 Merge pull request #852 from JoseJX/DemoMovieSkip
EMI: Allow the user to skip the intro movie in the EMI Demo.
2014-05-28 00:49:08 +02:00
Joseph Jezak josejx@gentoo.org e021febdce EMI: Makes ESC the only active key during movies. 2014-05-27 10:49:10 -04:00
Pawel Kolodziejski 8759900b6a ALL: synced with ScummVM 2014-04-05 18:18:42 +02:00
Dries Harnie 7fe50ec16d GRIM/EMI: Flush check_gamedata to disk immediately 2014-02-24 20:04:38 +01:00
Ingo van Lil 8e0cbb9651 EMI: Reset sort order when changing sets
Some sets (e.g. the big monkey's engine room) set Guybrush's sort order
to a large value, causing him to become invisible in other places. This
patch resets the sort order for all actors when switching to a new set.
2013-12-30 11:17:14 +01:00
Einar Johan Trøan Sømåen e843d7855b Merge pull request #775 from inguin/emi-pause
EMI: Improve pause handling
2013-12-11 16:26:09 -08:00
Ingo van Lil 4788a21e0a EMI: Improve pause handling
Both EMI and Grim call RenderModeUser when entering the menus or dialogs,
but EMI does not use special "blast" commands to display text or images,
so we cannot suspend regular screen updates. The current implementation
does not switch engine modes in RenderModeUser, which has the drawback
that the frame time is not stopped during pause or menu.

With this patch, EMI handles draw mode like normal mode with frozen frame
time.
2013-12-12 01:17:27 +01:00
Ingo van Lil d2aa15a30f EMI/GRIM: Handle normal mode and draw mode in separate virtual methods. 2013-12-12 01:17:27 +01:00
Ingo van Lil 9c044de7b6 GRIM/EMI: Stop frame time while debugger is open. 2013-12-12 01:16:57 +01:00
Christian Krause 41e6ed50fb EMI: Stop all PoolSounds when changing the set
- this fixes the problem that the fish sound was continuing
even after leaving the water without catching any of the fish
2013-12-12 01:10:11 +01:00
Christian Krause e8ffe93119 EMI: save/restore layer pool
- this fixes one crash after savegame restore when
Lua_V2::AdvanceLayerFrame() was trying to dereference a non-existing
layer object
2013-12-04 00:55:14 +01:00
Ingo van Lil c3b202ede3 GRIM: Cleanup refreshDrawMode
Remove _refreshDrawNeeded and refreshDrawMode(), they have been unused
for years.
2013-12-02 14:07:24 -08:00
Einar Johan Trøan Sømåen 5213d50777 EMI: Avoid updating lua while playing movies in the PS2-version.
Otherwise the scripts that start after a movie start prematurely, in the
case of the dock intro, this means that the dialogue on the docks starts
playing at the same time as the arrival video starts playing. With this
fix we avoid that issue, resuming operation as normal only when the movie
is finished.
2013-11-29 22:40:03 +01:00
Einar Johan Trøan Sømåen eac2c340f1 EMI: Allow movie skipping in the PS2-version.
Catch the ESC-key event manually for the PS2 version,
to allow skipping movies. (This also eats up the ESC-key event,
to avoid passing it on to lua afterwards).
2013-11-29 22:38:40 +01:00
Christian Krause f3c81da634 EMI: Fix color of menu entries
The highlighted menu entry is sometimes not correctly colored.
There are multiple textObjects per string (one for each color) and
residualvm draws them in an unspecified order.

To ensure that the correct textObject is drawn on top, each
object gets a layer attribute assigned by the lua code.

The patch adds the layer attribute to the runtime engine and orders the
textObjects by layer before drawing them.
2013-11-27 22:07:25 +01:00