aboutsummaryrefslogtreecommitdiff
path: root/engines/neverhood/scene.cpp
AgeCommit message (Collapse)Author
2013-09-27NEVERHOOD: Fix uninitialized members of the Scene class and remove dead code ↵Filippos Karapetis
- CID 1022300
2013-09-14NEVERHOOD: Rename the "room" command to "scene" and enhance itFilippos Karapetis
The naming has been changed from "room" to "scene", in order to keep it consistent with the rest of the engine. The scene command now also displays resource information about the current scene when invoked without parameters
2013-09-14NEVERHOOD: Move StaticScene into scene.h/.cppFilippos Karapetis
2013-08-05NEVERHOOD: Remove NRect constructorMax Horn
Otherwise, every global variable of type NRect requires a constructor to be run, which can cause portability issue.
2013-07-14JANITORIAL: Remove trailing whitespaceSven Hesse
2013-06-17NEVERHOOD: Fix Smacker errors in Scene1317 (bug #3613666)johndoe123
2013-06-09NEVERHOOD: Add a console command to display the current surfacesFilippos Karapetis
2013-05-08NEVERHOOD: Fix member var initializationsjohndoe123
2013-05-08NEVERHOOD: Rename "Klayman" to "Klaymen" (the correct name of the game's hero)johndoe123
2013-05-08NEVERHOOD: Fix Module1300::createScenejohndoe123
2013-05-08NEVERHOOD: Don't load a DataResource if the same data is already loaded; ↵johndoe123
this fixes a nasty bug in several scenes which use message lists from a DataResource
2013-05-08NEVERHOOD: Remove more old TODOsjohndoe123
2013-05-08NEVERHOOD: Move Scene2804::initCrystalColors() to ↵johndoe123
GameModule::initCrystalColorsPuzzle() - Add Scene::isMessageList2, only used in Scene2101
2013-05-08NEVERHOOD: Clean up DiskplayerScenejohndoe123
- Enable return to launcher - Remove obsolete comments - Remove braces in single-line statements - Remove unused non-transparent drawing code in BaseSurface::copyFrom - Clean up mouse cursor insertion code in Scene class
2013-05-08NEVERHOOD: Merge CollisionMan into Scene classjohndoe123
2013-05-08NEVERHOOD: Rename some CollisionMan methods/fieldsjohndoe123
- Remove fallback detector (I think it's not needed) - Rename Scene insertMouse methods
2013-05-08NEVERHOOD: Implement resource cache purging and purge it after each scenejohndoe123
2013-05-08NEVERHOOD: Add initCubeSymbolsPuzzlejohndoe123
- Add microtiles to the screen update to eliminate overdraw (microtiles code taken from the Toltecs engine) - Fix sprite dimensions in AsScene1402PuzzleBox which caused a crash - Fix screen shaking in Scene1402 (the puzzle box and bridge parts now shake along :) - Use addSoundItem/addMusicItem in the SoundMan instead of directly using push_back on the resp. arrays - Remove old code and comments
2013-05-08NEVERHOOD: More work on the menu system:johndoe123
- Add handling of ascii and system key input - Fix TextSurface::drawChar() - Pause audio when entering the menu, resume it again afterwards - Add TextEditWidget - Add SaveGameMenu (doesn't actually save anything yet and needs more work)
2013-05-08NEVERHOOD: Add making of video to the main menujohndoe123
- Clear render queue at each scene initiailization - Fix mouse cursor visibility (again :) - Fix SmackerScene screen clearing
2013-05-08NEVERHOOD: Remove Scene::_surfaceFlag which also is obsolete nowjohndoe123
2013-05-08NEVERHOOD: Remove DirtyBackground which became obsolete after the ↵johndoe123
renderqueue stuff
2013-05-08NEVERHOOD: Fix a very stupid bug in Scene::insertMouse433johndoe123
2013-05-08NEVERHOOD: Use CursorManjohndoe123
- Only update entities according to the current frame rate but run the actual game loop at a faster rate so the mouse cursor movement doesn't get choppy
2013-05-08NEVERHOOD: Rename stuff in the Scene class and clean up a littlejohndoe123
- Try to stay close to the actual frame rate - Also use the Smacker frame rate when a video is playing to keep videos in sync with the audio
2013-05-08NEVERHOOD: Remove SsScene1002LadderArch and Class599 and turn them into ↵johndoe123
static sprites; the classes were only used to set the sprite surface priority with a message, which is now handled in the scene
2013-05-08NEVERHOOD: Implement the actual audio codejohndoe123
Sounds and music play now in some scenes (I didn't change the comments to code in all modules yet) - Fix calcHash to ignore non-alphanumeric characters, this fixes at least one animation glitch (when inserting tapes into the player) - Move SoundResource to sound.cpp
2013-05-08NEVERHOOD: Start with Module2500johndoe123
- Implement Scene2501 - Add Scene::removeSprite
2013-05-08NEVERHOOD: Rename SetSpriteCallback to SetSpriteUpdatejohndoe123
- Started replace message numbers with constants - Add NRect::contains - Some cleanup
2013-05-08NEVERHOOD: Add Module1600 and Scene1608 (stuff will be renamed later)johndoe123
2013-05-08NEVERHOOD: Add Scene1109johndoe123
- Also fix some bugs regarding a missing parameter to setMessageList in various scenes
2013-05-08NEVERHOOD: Replace InsertKlayman macros with template functions (still weird ↵johndoe123
but nicer)
2013-05-08NEVERHOOD: Add Scene::setPalette for simpled palette creation and use itjohndoe123
2013-05-08NEVERHOOD: Merge the three mouse classes into Mouse, introduce ↵johndoe123
insertMouse433 etc. methods and use them
2013-05-08NEVERHOOD: Multiple changes to make the game logic code cleaner (hopefully :)johndoe123
- Introduce Scene::insertStaticSprite to create static sprites instead of the old "addSprite(new StaticSprite" (not used everywhere yet) - Introduce macro InsertKlayman to create the Klayman object - Change sendMessage semantics from "receiver->sendMessage(num,arg,sender)" to "sendMessage(receiver,num,arg)", the sender is always the sending object ("this") - Similar changes using macros will follow - And fixed a bug in the elevator
2013-05-08NEVERHOOD: Implement HallOfRecordsScene (and all HoR scenes) and Scene2247johndoe123
- Load SceneInfo140 from neverhood.dat - Some renaming
2013-05-08NEVERHOOD: Implement Scene2201johndoe123
- Implement DataResource::getHitRectList, DataResource::getMessageListAtPos and related stuff in scene.cpp
2013-05-08NEVERHOOD: More work on Module3000 and Scene3009 (incomplete)johndoe123
2013-05-08NEVERHOOD: Implement Scene1403, Scene1404 and Scene1405 (memory minigame)johndoe123
- Move GameModule::startup call into engine instead of the game module constructor - Reduce debug output
2013-05-08NEVERHOOD: New modules Module1200, Module1400, Module1700 and Module1800johndoe123
- Implement CollisionMan::removeSprite
2013-05-08NEVERHOOD: Start with Module1200/Scene1201 (not complete yet)johndoe123
- Fix an odd bug with the game variables (index of newly added subvar was sometimes -1)
2013-05-08NEVERHOOD: Implement Scene1004johndoe123
- Module1000 is now almost complete
2013-05-08NEVERHOOD: Fix crash/corruption in clipped sprite drawingjohndoe123
2013-05-08NEVERHOOD: More work on Scene1002, Klayman and the restjohndoe123
- Add "heavy debug" output to Entity (display which update/message handler is called) - Also add more debug output - Error out when a StaticData resource could not be found
2013-05-08NEVERHOOD: Change addHitRect to use an explicit countjohndoe123
- This is since the alignment stuff didn't work and it's not worth it to investigate - Add possibility to write out hardcoded message lists instead of reading from the exe for special lists
2013-05-08NEVERHOOD: More work on Scene1002johndoe123
2013-05-08NEVERHOOD: Implement MouseCursorResource and Mouse433 mouse cursorjohndoe123
2013-05-08NEVERHOOD: More work on Scene1001/Klaymanjohndoe123
- The button can now be used, but looking at the open window doesn't work yet since game variables aren't implemented yet.
2013-05-08NEVERHOOD: More work on Scene1001 and Klaymanjohndoe123
- Fix a bug in Klayman's walking - The lever can now be used - Other stuff is still missing - Remove entity.cpp since it's not needed
2013-05-08NEVERHOOD: More work on Klayman (still eye cancerous code)johndoe123
- Start to implement KmScene1001 - Implement queryPositionSprite and queryPositionRectList - Implement message list related code (setting and running them) - Access to message params now with accessors (so compatible types can be converted)