Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also .

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also .
base repository: scummvm/scummvm
Choose a Base Repository
scummvm/scummvm
0xf1sh/scummvm
AlbanBedel/scummvm
Alphard-o/scummvm
AndywinXp/scummvm
BLooperZ/scummvm
BenCastricum/scummvm
CatalystG/scummvm
CeRiAl/scummvm
Coworker/scummvm
Cpasjuste/scummvm
Cruel/scummvm
Deledrius/scummvm
DrItanium/scummvm
DrMcCoy/scummvm
Drenn1/scummvm
Fyre91/scummvm
GNUtoo/scummvm
Henne/scummvm
Joefish/scummvm
JoshTheAggie/scummvm
LubomirR/scummvm
Lybr4/scummvm
MaddTheSane/scummvm
Marisa-Chan/scummvm
MestreLion/scummvm
MrHuu/scummvm-3ds
Nitrus/scummvm
OmerMor/scummvm
Prilkop/scummvm-pink
PyrokinesisStudio/scummvm
RichieSams/scummvm
Risca/scummvm
ShaunOfTheLive/scummvm
SimSaw/scummvm
St0rmcrow/scummvm
Strangerke/scummvm
SupSuper/scummvm
Tea23/scummvm
Templier/scummvm
Termimad/scummvm
Tkachov/scummvm
TomFrost/scummvm
VonBluebaugh/scummvm
WayneRSH/scummvm
YakBizzarro/scummvm
ZsKokos/scummvm
adventuregamestudio/scummvm
ajax16384/scummvm
albrechtf/scummvm
alcherk/scummvm
alexbevi/scummvm
angjerden/scummvm-opensky
anguslees/scummvm
antoniou79/scummvm
athrxx/scummvm
bSr43/scummvm
beholdnec/scummvm-funhouse
berenm/scummvm
bgK/scummvm
bluddy/scummvm
bluegr/scummvm
byunsangho/scummvm
chkr-private/scummvm
chrilith/scummvm
chrisws/scummvm
clone2727/scummvm
craigsc/scummvm-rg350
crazyp/scummvm
criezy/scummvm
danzat/scummvm
dhewg/scummvm
digitall/scummvm
dividedmind/scummvm
djwillis/scummvm
dmgamm/scummvm
dreammaster/scummvm
dyllad/scummvm
edheldil/scummvm
enginmanap/scummvm
eriktorbjorn/scummvm
fivearrows/scummvm
fuzzie/scummvm
gbraad/scummvm
geunyul/scummvm
gitter-badger/scummvm
giucam/scummvm
goldmojo/scummvm-rg350
goops17/scummvm
grayfoxier/scummvm
hchen1014/scummvm
heather162/scummvm
hooby3dfx/scummvm
hoteacristi/scummvm
idimiter/scummvm
infernuslord/scummvm
inisider/scummvm
jakimushka/scummvm
jammm/scummvm
jasonschroeder/scummvm
javisar/scummvm
jbanes/scummvm
jcwilk/scummvm
jenshnielsen/scummvm
jhhoward/scummvm
jiskattema/scummvm
jmglogow/scummvm
jnourry/scummvm
johndoe123/scummvm
johndrinkwater/scummvm-steamlink
juj/emscripten-scummvm
jvprat/scummvm
jweinberg/scummvm
kelmer44/scummvm
khbecker/scummvm
kintera/scummvm
klusark/scummvm
kpeatt/emscripten-scummvm
krawler602/scummvm
libretro/scummvm
lordhoto/scummvm
lukecharman/scummvm
madmoose/scummvm
mauimauer/scummvm
mborjesson/scummvm
mcb30/scummvm
mcgamez88/scummvm
mcnicholls/scummvm
megaboy/scummvm
michailBs/scummvm
midstream/scummvm
miguelgonz/scummvm
mikeconley/emscripten-scummvm
mikicompany/scummvm
mokerjoke/scummvm
monnerat/scummvm
monocodus-demonstrations/scummvm
murgo/scummvm
mynameisfashanu/scummvm
nakioman/scummvm
nexapps/scummvm
nikitin23/scummvm
norbertbajko/scummvm
nukeykt/scummvm
onlyjob/scummvm
peres/scummvm
phoenixtail26/scummvm
qwzybug/scummvm
rasky/scummvm
rayzer86/scummvm
remmythical/emscripten-scummvm
ress/scummvm
rkmarvin/scummvm
robertmegone/scummvm
rofl0r/scummvm
rolph-recto/scummvm
roman5566/scummvm
rsn8887/scummvm
rundfunk47/scummvm
sact/scummvm
salty-horse/scummvm
sathieu/scummvm
saucjedi/scummvm
scott-t/scummvm
scummvm-director/scummvm
seriesParallel/scummvm
sev-/scummvm
singron/scummvm
sirlemonhead/scummvm
skristiansson/scummvm
somaen/scummvm
ssilverm/scummvm
stevenhoefel/scummvm
superg/scummvm
swkim01/scummvm-kor
tafuri/scummvm
tcarey/scummvm-1
timofonic/scummvm
tiqpit/scummvm
tobiatesan/scummvm
tobigun/scummvm
tommimi/scummvm
tsoliman/scummvm
ttcremers/scummvm
upthorn/scummvm
vanfanel/scummvm
vcosta/scummvm
vinterstum/scummvm
vladborovtsov/scummvm
vyadh/scummvm
weakdancer/scummvm
whiterandrek/scummvm
widar/scummvm
wjp/scummvm
xesf/scummvm-asylum
yaz0r/scummvm
yinsimei/scummvm
zach-morris/scummvm
zekizeki2010/scummvm
zeldin/scummvm
Nothing to show
base: 2170c9bc39fa
head repository: scummvm/scummvm
Choose a Head Repository
scummvm/scummvm
0xf1sh/scummvm
AlbanBedel/scummvm
Alphard-o/scummvm
AndywinXp/scummvm
BLooperZ/scummvm
BenCastricum/scummvm
CatalystG/scummvm
CeRiAl/scummvm
Coworker/scummvm
Cpasjuste/scummvm
Cruel/scummvm
Deledrius/scummvm
DrItanium/scummvm
DrMcCoy/scummvm
Drenn1/scummvm
Fyre91/scummvm
GNUtoo/scummvm
Henne/scummvm
Joefish/scummvm
JoshTheAggie/scummvm
LubomirR/scummvm
Lybr4/scummvm
MaddTheSane/scummvm
Marisa-Chan/scummvm
MestreLion/scummvm
MrHuu/scummvm-3ds
Nitrus/scummvm
OmerMor/scummvm
Prilkop/scummvm-pink
PyrokinesisStudio/scummvm
RichieSams/scummvm
Risca/scummvm
ShaunOfTheLive/scummvm
SimSaw/scummvm
St0rmcrow/scummvm
Strangerke/scummvm
SupSuper/scummvm
Tea23/scummvm
Templier/scummvm
Termimad/scummvm
Tkachov/scummvm
TomFrost/scummvm
VonBluebaugh/scummvm
WayneRSH/scummvm
YakBizzarro/scummvm
ZsKokos/scummvm
adventuregamestudio/scummvm
ajax16384/scummvm
albrechtf/scummvm
alcherk/scummvm
alexbevi/scummvm
angjerden/scummvm-opensky
anguslees/scummvm
antoniou79/scummvm
athrxx/scummvm
bSr43/scummvm
beholdnec/scummvm-funhouse
berenm/scummvm
bgK/scummvm
bluddy/scummvm
bluegr/scummvm
byunsangho/scummvm
chkr-private/scummvm
chrilith/scummvm
chrisws/scummvm
clone2727/scummvm
craigsc/scummvm-rg350
crazyp/scummvm
criezy/scummvm
danzat/scummvm
dhewg/scummvm
digitall/scummvm
dividedmind/scummvm
djwillis/scummvm
dmgamm/scummvm
dreammaster/scummvm
dyllad/scummvm
edheldil/scummvm
enginmanap/scummvm
eriktorbjorn/scummvm
fivearrows/scummvm
fuzzie/scummvm
gbraad/scummvm
geunyul/scummvm
gitter-badger/scummvm
giucam/scummvm
goldmojo/scummvm-rg350
goops17/scummvm
grayfoxier/scummvm
hchen1014/scummvm
heather162/scummvm
hooby3dfx/scummvm
hoteacristi/scummvm
idimiter/scummvm
infernuslord/scummvm
inisider/scummvm
jakimushka/scummvm
jammm/scummvm
jasonschroeder/scummvm
javisar/scummvm
jbanes/scummvm
jcwilk/scummvm
jenshnielsen/scummvm
jhhoward/scummvm
jiskattema/scummvm
jmglogow/scummvm
jnourry/scummvm
johndoe123/scummvm
johndrinkwater/scummvm-steamlink
juj/emscripten-scummvm
jvprat/scummvm
jweinberg/scummvm
kelmer44/scummvm
khbecker/scummvm
kintera/scummvm
klusark/scummvm
kpeatt/emscripten-scummvm
krawler602/scummvm
libretro/scummvm
lordhoto/scummvm
lukecharman/scummvm
madmoose/scummvm
mauimauer/scummvm
mborjesson/scummvm
mcb30/scummvm
mcgamez88/scummvm
mcnicholls/scummvm
megaboy/scummvm
michailBs/scummvm
midstream/scummvm
miguelgonz/scummvm
mikeconley/emscripten-scummvm
mikicompany/scummvm
mokerjoke/scummvm
monnerat/scummvm
monocodus-demonstrations/scummvm
murgo/scummvm
mynameisfashanu/scummvm
nakioman/scummvm
nexapps/scummvm
nikitin23/scummvm
norbertbajko/scummvm
nukeykt/scummvm
onlyjob/scummvm
peres/scummvm
phoenixtail26/scummvm
qwzybug/scummvm
rasky/scummvm
rayzer86/scummvm
remmythical/emscripten-scummvm
ress/scummvm
rkmarvin/scummvm
robertmegone/scummvm
rofl0r/scummvm
rolph-recto/scummvm
roman5566/scummvm
rsn8887/scummvm
rundfunk47/scummvm
sact/scummvm
salty-horse/scummvm
sathieu/scummvm
saucjedi/scummvm
scott-t/scummvm
scummvm-director/scummvm
seriesParallel/scummvm
sev-/scummvm
singron/scummvm
sirlemonhead/scummvm
skristiansson/scummvm
somaen/scummvm
ssilverm/scummvm
stevenhoefel/scummvm
superg/scummvm
swkim01/scummvm-kor
tafuri/scummvm
tcarey/scummvm-1
timofonic/scummvm
tiqpit/scummvm
tobiatesan/scummvm
tobigun/scummvm
tommimi/scummvm
tsoliman/scummvm
ttcremers/scummvm
upthorn/scummvm
vanfanel/scummvm
vcosta/scummvm
vinterstum/scummvm
vladborovtsov/scummvm
vyadh/scummvm
weakdancer/scummvm
whiterandrek/scummvm
widar/scummvm
wjp/scummvm
xesf/scummvm-asylum
yaz0r/scummvm
yinsimei/scummvm
zach-morris/scummvm
zekizeki2010/scummvm
zeldin/scummvm
Nothing to show
compare: 3c2ac653b2ee
This comparison is big! We’re only showing the most recent 250 commits
Commits on Dec 13, 2014
In scene 31, moving the corrugated metal does a check on an invalid item
index
cutscene

In scene 33, the game briefly adds the player to the _images list, even
though no player sprites have been loaded, since it's a cutscene scene
I'm still not happy everything needed is being synchronised, so this
way we can work on it further without upsetting other Amazon saves
Commits on Dec 14, 2014
Commits on Dec 17, 2014
Commits on Dec 19, 2014
The original called Surface::copyFrom, which keeps recreating the
dest surface with each copy. This version simply copies the image
ACCESS: Support for Amazon - Guardians of Eden
Showing with 17,992 additions and 0 deletions.
  1. +570 −0 engines/access/access.cpp
  2. +297 −0 engines/access/access.h
  3. +780 −0 engines/access/amazon/amazon_game.cpp
  4. +139 −0 engines/access/amazon/amazon_game.h
  5. +2,217 −0 engines/access/amazon/amazon_logic.cpp
  6. +251 −0 engines/access/amazon/amazon_logic.h
  7. +86 −0 engines/access/amazon/amazon_player.cpp
  8. +48 −0 engines/access/amazon/amazon_player.h
  9. +2,411 −0 engines/access/amazon/amazon_resources.cpp
  10. +148 −0 engines/access/amazon/amazon_resources.h
  11. +241 −0 engines/access/amazon/amazon_room.cpp
  12. +72 −0 engines/access/amazon/amazon_room.h
  13. +516 −0 engines/access/amazon/amazon_scripts.cpp
  14. +67 −0 engines/access/amazon/amazon_scripts.h
  15. +342 −0 engines/access/animation.cpp
  16. +140 −0 engines/access/animation.h
  17. +344 −0 engines/access/asurface.cpp
  18. +166 −0 engines/access/asurface.h
  19. +282 −0 engines/access/bubble_box.cpp
  20. +89 −0 engines/access/bubble_box.h
  21. +162 −0 engines/access/char.cpp
  22. +67 −0 engines/access/char.h
  23. +3 −0 engines/access/configure.engine
  24. +76 −0 engines/access/data.cpp
  25. +103 −0 engines/access/data.h
  26. +164 −0 engines/access/debugger.cpp
  27. +64 −0 engines/access/debugger.h
  28. +127 −0 engines/access/decompress.cpp
  29. +43 −0 engines/access/decompress.h
  30. +209 −0 engines/access/detection.cpp
  31. +91 −0 engines/access/detection_tables.h
  32. +371 −0 engines/access/events.cpp
  33. +157 −0 engines/access/events.h
  34. +239 −0 engines/access/files.cpp
  35. +142 −0 engines/access/files.h
  36. +177 −0 engines/access/font.cpp
  37. +103 −0 engines/access/font.h
  38. +535 −0 engines/access/inventory.cpp
  39. +140 −0 engines/access/inventory.h
  40. +168 −0 engines/access/martian/martian_game.cpp
  41. +76 −0 engines/access/martian/martian_game.h
  42. +722 −0 engines/access/martian/martian_resources.cpp
  43. +52 −0 engines/access/martian/martian_resources.h
  44. +141 −0 engines/access/martian/martian_room.cpp
  45. +66 −0 engines/access/martian/martian_room.h
  46. +48 −0 engines/access/martian/martian_scripts.cpp
  47. +49 −0 engines/access/martian/martian_scripts.h
  48. +41 −0 engines/access/module.mk
  49. +820 −0 engines/access/player.cpp
  50. +153 −0 engines/access/player.h
  51. +109 −0 engines/access/resources.cpp
  52. +53 −0 engines/access/resources.h
  53. +833 −0 engines/access/room.cpp
  54. +202 −0 engines/access/room.h
  55. +368 −0 engines/access/screen.cpp
  56. +182 −0 engines/access/screen.h
  57. +885 −0 engines/access/scripts.cpp
  58. +168 −0 engines/access/scripts.h
  59. +310 −0 engines/access/sound.cpp
  60. +109 −0 engines/access/sound.h
  61. +176 −0 engines/access/video.cpp
  62. +82 −0 engines/access/video.h

Large diffs are not rendered by default.

@@ -0,0 +1,297 @@
/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, whose names
* are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/

#ifndef ACCESS_ACCESS_H
#define ACCESS_ACCESS_H

#include "common/scummsys.h"
#include "common/system.h"
#include "common/error.h"
#include "common/random.h"
#include "common/savefile.h"
#include "common/serializer.h"
#include "common/util.h"
#include "engines/engine.h"
#include "graphics/surface.h"
#include "access/animation.h"
#include "access/bubble_box.h"
#include "access/char.h"
#include "access/data.h"
#include "access/debugger.h"
#include "access/events.h"
#include "access/files.h"
#include "access/font.h"
#include "access/inventory.h"
#include "access/player.h"
#include "access/room.h"
#include "access/screen.h"
#include "access/scripts.h"
#include "access/sound.h"
#include "access/video.h"

/**
* This is the namespace of the Access engine.
*
* Status of this engine: In Development
*
* Games using this engine:
* - Amazon: Guardians of Eden
*/
namespace Access {

enum {
GType_Amazon = 1,
GType_MartianMemorandum = 2,
GType_Noctropolis = 3
};

enum AccessDebugChannels {
kDebugPath = 1 << 0,
kDebugScripts = 1 << 1,
kDebugGraphics = 1 << 2,
kDebugSound = 1 << 3
};

struct AccessGameDescription;

extern const char *const _estTable[];

#define ACCESS_SAVEGAME_VERSION 1

struct AccessSavegameHeader {
uint8 _version;
Common::String _saveName;
Graphics::Surface *_thumbnail;
int _year, _month, _day;
int _hour, _minute;
int _totalFrames;
};

class AccessEngine : public Engine {
private:
uint32 _lastTime, _curTime;

/**
* Handles basic initialization
*/
void initialize();

/**
* Set VGA mode
*/
void setVGA();

protected:
const AccessGameDescription *_gameDescription;
Common::RandomSource _randomSource;
int _loadSaveSlot;

/**
* Main handler for showing game rooms
*/
void doRoom();

/**
* Support method that generates a savegame name
* @param slot Slot number
*/
Common::String generateSaveName(int slot);

/**
* Play back an entire video
*/
void playVideo(int videoNum, const Common::Point &pt);

// Engine APIs
virtual Common::Error run();
virtual bool hasFeature(EngineFeature f) const;
protected:
/**
* Play the game
*/
virtual void playGame() = 0;

/**
* Synchronize savegame data
*/
virtual void synchronize(Common::Serializer &s);
public:
AnimationManager *_animation;
BubbleBox *_bubbleBox;
CharManager *_char;
Debugger *_debugger;
EventsManager *_events;
FileManager *_files;
InventoryManager *_inventory;
Player *_player;
Room *_room;
Screen *_screen;
Scripts *_scripts;
SoundManager *_sound;
MusicManager *_midi;
VideoPlayer *_video;

ASurface *_destIn;
ASurface *_current;
ASurface _buffer1;
ASurface _buffer2;
ASurface _vidBuf;
int _vidX, _vidY;
Common::Array<CharEntry *> _charTable;
SpriteResource *_objectsTable[100];
bool _establishTable[100];
bool _establishFlag;
int _establishMode;
int _establishGroup;
int _establishCtrlTblOfs;
int _numAnimTimers;
TimerList _timers;
DeathList _deaths;
FontManager _fonts;
Common::Array<Common::Rect> _newRects;
Common::Array<Common::Rect> _oldRects;
Common::Array<ExtraCell> _extraCells;
ImageEntryList _images;
int _mouseMode;

int _currentManOld;
int _converseMode;
int _startAboutBox;
int _startTravelBox;
bool _currentCharFlag;
bool _boxSelect;
int _scale;
int _scaleH1, _scaleH2;
int _scaleN1;
int _scaleT1;
int _scaleMaxY;
int _scaleI;
int _scrollX, _scrollY;
int _scrollCol, _scrollRow;
bool _imgUnscaled;
bool _canSaveLoad;

Resource *_establish;
int _et;
int _printEnd;
int _txtPages;
int _narateFile;
int _sndSubFile;
int _countTbl[6];

// Fields that are included in savegames
int _conversation;
int _currentMan;
uint32 _newTime;
uint32 _newDate;
int _flags[256];

bool _clearSummaryFlag;
bool _cheatFl;
bool _restartFl;
// Fields mapped into the flags array
int &_useItem;
int &_startup;
int &_manScaleOff;

public:
AccessEngine(OSystem *syst, const AccessGameDescription *gameDesc);
virtual ~AccessEngine();

virtual void dead(int deathId) = 0;

uint32 getFeatures() const;
bool isCD() const;
bool isDemo() const;
Common::Language getLanguage() const;
Common::Platform getPlatform() const;
uint16 getVersion() const;
uint32 getGameID() const;
uint32 getGameFeatures() const;
bool shouldQuitOrRestart();

int getRandomNumber(int maxNumber);

void loadCells(Common::Array<CellIdent> &cells);

/**
* Free the sprites list
*/
void freeCells();

virtual void establish(int esatabIndex, int sub) = 0;

void plotList();
void plotList1();

void copyBlocks();

void copyRects();

void copyBF1BF2();

void copyBF2Vid();

void doLoadSave();

void freeChar();

/**
* Draw a string on a given surface and update text positioning
*/
void printText(ASurface *s, const Common::String &msg);
void speakText(ASurface *s, const Common::String &msg);

/**
* Load a savegame
*/
virtual Common::Error loadGameState(int slot);

/**
* Save the game
*/
virtual Common::Error saveGameState(int slot, const Common::String &desc);

/**
* Returns true if a savegame can currently be loaded
*/
bool canLoadGameStateCurrently();

/**
* Returns true if the game can currently be saved
*/
bool canSaveGameStateCurrently();

/**
* Read in a savegame header
*/
static bool readSavegameHeader(Common::InSaveFile *in, AccessSavegameHeader &header);

/**
* Write out a savegame header
*/
void writeSavegameHeader(Common::OutSaveFile *out, AccessSavegameHeader &header);
};

} // End of namespace Access

#endif /* ACCESS_ACCESS_H */

No commit comments for this range

You can’t perform that action at this time.