aboutsummaryrefslogtreecommitdiff
path: root/engines/pegasus/pegasus.cpp
AgeCommit message (Collapse)Author
2017-12-03BASE: Remove bad casts between incompatible Plugin typesColin Snover
Previously, a C-style cast was used to convert a Common::Array<Plugin *>, populated with pointers to StaticPlugin and DynamicPlugin instances, to a Common::Array<PluginSubclass<T> *>, but PluginSubclass<T> is a *sibling* class to StaticPlugin/DynamicPlugin, so this cast was invalid and the results undefined. The methods for retrieving subclasses of plugins can't be easily changed to just generate an array of temporary wrapper objects that expose an identical API which dereferences to the preferred PluginObject subclass because pointers to these objects are retained by other parts of ScummVM, so the wrappers would needed to be persisted or they would need to just re-expose the underlying Plugin object again. This indicated that a way to solve this problem is to have the callers receive Plugin objects and get the PluginObject from the Plugin by explicitly stating their desired type, in a similar manner to std::get(std::variant), so that the pattern used by this patch to solve the problem. Closes gh-1051.
2017-09-12PEGASUS: Free the interface data when destroying the engineBastien Bouclet
Fixes loading a game from the launcher after returning to the launcher.
2017-09-12PEGASUS: Call OSystem::updateScreen on each frameBastien Bouclet
Fixes the display of OSD information when toggling fullscreen.
2016-11-29ALL: save file => saved gameBen Castricum
2016-11-29ALL: game state => saved gameBen Castricum
2016-09-03JANITORIAL: Make GPL headers uniformEugene Sandulenko
2014-10-28PEGASUS: Remove trailing whitespaceFilippos Karapetis
2014-08-16PEGASUS: Don't try to translate "???"Ben Castricum
2014-04-27PEGASUS: Set volume in more placesKeith Kaisershot
2014-04-23PEGASUS: Poll for events in more placesMatthew Hoops
Based on a patch by Keith Kaisershot (blitter)
2014-04-17PEGASUS: Reset item state upon starting a new gameMatthew Hoops
2014-04-13PEGASUS: Fix showing save failed dialog when not using the GMMMatthew Hoops
2014-02-26PEGASUS: Fix being able to use the inventory from the pause screenMatthew Hoops
Somehow, I completely missed implementing this function!
2014-02-23PEGASUS: Force the inventory drawers closed when loading a gameMatthew Hoops
2013-12-14PEGASUS: Fix regression with Prehistoric AI rules orderingMatthew Hoops
2013-08-03PEGASUS: Take advantage of Surface::getPixels.Johannes Schickel
2013-08-03PEGASUS: Prefer getBasePtr over direct Surface::pixels access.Johannes Schickel
2013-04-16PEGASUS: Clean up DVD demo Theora playbackMatthew Hoops
2013-04-16PEGASUS: Add the new demo theora videosMatthew Hoops
2013-04-15PEGASUS: Add sanity check on the NItm resource being presentMatthew Hoops
2013-02-23ALL: Fix typo (existant->existent)Willem Jan Palenstijn
2013-02-04PEGASUS: Make the demo menu music start before the splash screenMatthew Hoops
2013-02-04PEGASUS: Limit the accepted characters in save file namesMatthew Hoops
2013-02-04PEGASUS: Sort save file names alphabeticallyMatthew Hoops
2012-12-15PEGASUS: Fix segfault when pressing 'i' during the space chaseMatthew Hoops
Thanks to digitall for finding this one
2012-11-26PEGASUS: Improve descriptions for the keymapMatthew Hoops
2012-11-21PEGASUS: Add a keymapMatthew Hoops
2012-11-18PEGASUS: Don't constantly redraw the overview text frameMatthew Hoops
2012-11-17PEGASUS: Fade out the main menu when using the quit buttonMatthew Hoops
2012-10-29PEGASUS: Ease off the CPU in the overviewMatthew Hoops
2012-09-26PEGASUS: Remove trailing whitespaces.Johannes Schickel
Powered by: git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
2012-09-22PEGASUS: Fix saving while in the space chaseMatthew Hoops
2012-09-22PEGASUS: Don't allow loading/saving in a few more placesMatthew Hoops
Only affects loading/saving from the GMM
2012-09-22PEGASUS: Fix restoring correct biochip after sub chaseMatthew Hoops
2012-09-21PEGASUS: Replace FunctionPtr by our Functor code in Common.Johannes Schickel
This "fixes" a segmentation fault in our buildbot's toolchain for DC. The segmentation fault occured while compiling engines/pegasus/ai/ai_condition.cpp. Thanks to clone2727 for looking over this and testing it.
2012-09-12PEGASUS: Disable save compression by defaultMatthew Hoops
So they can be used by the original interpreter more easily (the type/creator codes still need to be set, though -- pegasus_save_types can handle that)
2012-09-09PEGASUS: Fix some memory leaksMatthew Hoops
Thanks to fuzzie for spotting
2012-08-31PEGASUS: Use setEndTime()Matthew Hoops
2012-08-28PEGASUS: Remove g_allItems global constructionMatthew Hoops
2012-08-28PEGASUS: Remove g_allHotspots global constructionMatthew Hoops
2012-08-26Merge remote branch 'upstream/master' into pegasusMatthew Hoops
Conflicts: AUTHORS devtools/credits.pl gui/credits.h
2012-08-20PEGASUS: Optimize the nearest neighbor frame scaling a bitMatthew Hoops
Hopefully should improve performance on lower end systems
2012-07-05PEGASUS: Implement screen fadingMatthew Hoops
This does linear instead of gamma for speed and complexity reasons.
2012-06-16PEGASUS: Don't manually close the load/save dialogsMatthew Hoops
2012-06-16Merge remote branch 'upstream/master' into pegasusMatthew Hoops
2012-05-25Merge remote branch 'upstream/master' into pegasusMatthew Hoops
2012-05-11PEGASUS: Rewrite the input code to more closely emulate what the original didMatthew Hoops
Now the easter egg key works better and so does striding.
2012-05-04PEGASUS: Add a workaround for the canyon/space chase segfaultMatthew Hoops
2012-04-09PEGASUS: Add support for load/save keysMatthew Hoops
2012-04-03PEGASUS: Add safety check around decodeNextFrame() when playing the Bandai logoMatthew Hoops