johndoe123
e43184f4f2
NEVERHOOD: Remove obsolete TODOs
2013-05-08 20:47:40 +02:00
johndoe123
df43b8bd68
NEVERHOOD: Move Scene2804::initCrystalColors() to GameModule::initCrystalColorsPuzzle()
...
- Add Scene::isMessageList2, only used in Scene2101
2013-05-08 20:47:40 +02:00
johndoe123
f945448c7b
NEVERHOOD: Change graphic resource draw method to get a Surface instead of separate pixels/pitch
...
- Merge SpriteResource::load and load2
2013-05-08 20:47:40 +02:00
johndoe123
57497817e1
NEVERHOOD: Add enum for the resource types
2013-05-08 20:47:40 +02:00
johndoe123
a98d9aa58a
NEVERHOOD: Clean up DiskplayerScene
...
- 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-08 20:47:39 +02:00
johndoe123
6ddedc955a
NEVERHOOD: Merge TextSurface into FontSurface
2013-05-08 20:47:39 +02:00
johndoe123
fa205be892
NEVERHOOD: Remove some obsolete TODOs
2013-05-08 20:47:39 +02:00
johndoe123
b875696fc7
NEVERHOOD: Update todo.txt
2013-05-08 20:47:39 +02:00
johndoe123
9963ce41ea
NEVERHOOD: Merge CollisionMan into Scene class
2013-05-08 20:47:39 +02:00
johndoe123
4b7ad48ca8
NEVERHOOD: Rename some CollisionMan methods/fields
...
- Remove fallback detector (I think it's not needed)
- Rename Scene insertMouse methods
2013-05-08 20:47:39 +02:00
johndoe123
fec1d7816a
NEVERHOOD: Implement resource cache purging and purge it after each scene
2013-05-08 20:47:39 +02:00
johndoe123
30178e46e5
NEVERHOOD: Implement savegame loading via GMM (in-game saving/loading still TODO)
2013-05-08 20:47:39 +02:00
johndoe123
a35cd088e5
NEVERHOOD: Remove obsolete _keyState
2013-05-08 20:47:39 +02:00
johndoe123
0f1aa64fd0
NEVERHOOD: Add support for the demo version
...
- Remove debug resource dumping code
- Fix Scene1501 (pictures without sound weren't displayed/too fast)
- Move main loop to mainLoop method
2013-05-08 20:47:38 +02:00
johndoe123
060287a4f8
NEVERHOOD: Improve frame-exact seeking for Scene2802
...
Thanks to clone2727 for his help!
2013-05-08 20:47:38 +02:00
johndoe123
99e15e4005
NEVERHOOD: More work on saveload, saving works, loading not yet (from the GMM, in-game isn't finished yet)
2013-05-08 20:47:38 +02:00
johndoe123
c182688e44
NEVERHOOD: Add saveload skeleton (doesn't actually do anything yet)
2013-05-08 20:47:38 +02:00
johndoe123
9a1d9883ad
NEVERHOOD: Fix AsCommonCar turning
2013-05-08 20:47:38 +02:00
johndoe123
b2934eb166
NEVERHOOD: Fix Klaymen "grow" animation after drinking the potion
...
- Remove static sprite 0x50C027A8 Scene2803/Scene2803Small because the resource doesn't exist!
- Remove some old comments
- Fix resource extData handling which fixes some crashes
- Enable reusing deleted sound/music slots in SoundMan (was disabled for debugging)
2013-05-08 20:47:38 +02:00
johndoe123
cc015e3d24
NEVERHOOD: Simplify resource loading
...
- Renamne and clean up
2013-05-08 20:47:38 +02:00
johndoe123
1b9807b312
NEVERHOOD: Remove more old comments
...
- Add the remaining idle stuff to Klayman
2013-05-08 20:47:38 +02:00
johndoe123
370f00e808
NEVERHOOD: New _sceneNum in Module2800
...
- Very slightly improved the speed in SmackerPlayer::gotoFrame()
2013-05-08 20:47:38 +02:00
johndoe123
325c85fc41
NEVERHOOD: Fix Klaymen in Scene1403 (*facepalm*)
2013-05-08 20:47:38 +02:00
johndoe123
1904e944c5
NEVERHOOD: Add initCubeSymbolsPuzzle
...
- 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-08 20:47:37 +02:00
johndoe123
685ce4e312
NEVERHOOD: Add initCodeSymbolsPuzzle
2013-05-08 20:47:37 +02:00
johndoe123
73e0372cef
NEVERHOOD: A little more work on the menu stuff
2013-05-08 20:47:37 +02:00
johndoe123
6be5c11713
NEVERHOOD: More work on the menu system:
...
- 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-08 20:47:37 +02:00
johndoe123
0022c57858
NEVERHOOD: Add SavegameListBox
2013-05-08 20:47:37 +02:00
johndoe123
eecd9b8b2a
NEVERHOOD: Add TextLabelWidget (still doesn't do anything)
2013-05-08 20:47:37 +02:00
johndoe123
228d9264c8
NEVERHOOD: Start with menu widget stuff (doesn't do anything yet!)
2013-05-08 20:47:37 +02:00
johndoe123
4df22cf979
NEVERHOOD: Remove track rectList code because none of the tracks has a rectList
2013-05-08 20:47:36 +02:00
johndoe123
c539060460
NEVERHOOD: Clean up Module2700 (like the ones before)
...
- Add Scene2703 and Scene2732
2013-05-08 20:47:36 +02:00
johndoe123
36204f573d
NEVERHOOD: Clean up Module2600 (like the ones before)
2013-05-08 20:47:35 +02:00
johndoe123
28e613c68b
NEVERHOOD: Clean up Module2500 (like the ones before)
2013-05-08 20:47:35 +02:00
johndoe123
38df3c0d62
NEVERHOOD: Clean up Module2400 (like the ones before)
...
- Fix Klayman::stTurnToFront()
2013-05-08 20:47:35 +02:00
johndoe123
61e2a6f81d
NEVERHOOD: Clean up Module2300 (like the ones before)
...
- Also fix previous modules (oops)
2013-05-08 20:47:35 +02:00
johndoe123
1993d4165a
NEVERHOOD: Clean up Module2200 (like the ones before)
...
- Rename SceneInfo140 to HallOfRecordsInfo
2013-05-08 20:47:35 +02:00
johndoe123
0dd4995af3
NEVERHOOD: Clean up Module2100 (like the ones before)
2013-05-08 20:47:35 +02:00
johndoe123
9d987a97d3
NEVERHOOD: Clean up Module2000 (like the ones before)
2013-05-08 20:47:35 +02:00
johndoe123
2fbfd673ad
NEVERHOOD: Clean up Module1900 (like the ones before)
2013-05-08 20:47:35 +02:00
johndoe123
dd26512c0d
NEVERHOOD: Clean up Module1800 (like the ones before)
2013-05-08 20:47:35 +02:00
johndoe123
904d9430bf
NEVERHOOD: Clean up Module1700 (like the ones before)
2013-05-08 20:47:35 +02:00
johndoe123
e2b696b891
NEVERHOOD: Clean up Module1600 (like the ones before)
...
- Remove AsScene1608Door because the corresponding animation resource didn't exist!
2013-05-08 20:47:34 +02:00
johndoe123
f51140490d
NEVERHOOD: Clean up Module1500 (like the ones before)
2013-05-08 20:47:34 +02:00
johndoe123
af37a2200e
NEVERHOOD: Clean up Module1400 (like the ones before)
2013-05-08 20:47:34 +02:00
johndoe123
ee7d47cb18
NEVERHOOD: Clean up Module1300 (like the ones before)
2013-05-08 20:47:34 +02:00
johndoe123
097f1f27bb
NEVERHOOD: Clean up Module1200 (like the ones before)
2013-05-08 20:47:34 +02:00
johndoe123
f744e60e0e
NEVERHOOD: Clean up Module1100:
...
- Rename stuff
- Remove superfluous braces
- Add a comment to the "which" code in each scene
- Use a seperate _sceneNum instead of _vm->gameState().sceneNum
2013-05-08 20:47:34 +02:00
johndoe123
4d7610f69d
NEVERHOOD: Clean up Module1000:
...
- Rename stuff
- Remove superfluous braces
- Add a comment to the "which" code in each scene
- Use a seperate _sceneNum instead of _vm->gameState().sceneNum
- Remove code related to unused resource preloading and debug messages
2013-05-08 20:47:34 +02:00
johndoe123
1589e4fe7d
NEVERHOOD: Add new method StaticSprite::loadSprite and use it instead of setting stuff "manually"
2013-05-08 20:47:34 +02:00
johndoe123
bf1371c9d4
NEVERHOOD: Rename and clean up fields in AnimFrameInfo
2013-05-08 20:47:34 +02:00
johndoe123
f24a6769c2
NEVERHOOD: Make use of NDrawRect::set
2013-05-08 20:47:33 +02:00
johndoe123
9ba7a7f1a1
NEVERHOOD: Rename stuff in Sprite:
...
- processDelta() to updateBounds()
- getRect() to getCollisionBounds()
- _drawRect to _drawOffset
- _rect to _collisionBounds
- _deltaRect to _collisionBoundsOffset
2013-05-08 20:47:33 +02:00
johndoe123
eb054471e0
NEVERHOOD: Fix _drawRects in AsScene1002Door and SsCommonPressButton
2013-05-08 20:47:33 +02:00
johndoe123
47994441cd
NEVERHOOD: Move setting of debug variables to the GameModule
2013-05-08 20:47:33 +02:00
johndoe123
5af2de503e
NEVERHOOD: Rewrite GameModule::initMemoryPuzzle() to use NonRepeatingRandomNumbers
...
- Change NonRepeatingRandomNumbers
2013-05-08 20:47:33 +02:00
johndoe123
54c83924ce
NEVERHOOD: Add class NonRepeatingRandomNumbers
...
- Simplify GameModule::initKeySlotsPuzzle()
2013-05-08 20:47:33 +02:00
johndoe123
8d97f26cef
NEVERHOOD: Fix AsScene2402Door animation
2013-05-08 20:47:33 +02:00
johndoe123
f8ff1cc12f
NEVERHOOD: Add CreditsScene to Module1300 and Module1800 (played after the game end and after jumping into the hole...)
2013-05-08 20:47:33 +02:00
johndoe123
5ba8f2e9c8
NEVERHOOD: Add making of video to the main menu
...
- Clear render queue at each scene initiailization
- Fix mouse cursor visibility (again :)
- Fix SmackerScene screen clearing
2013-05-08 20:47:33 +02:00
johndoe123
c43253bd6a
NEVERHOOD: Implement CreditsScene
2013-05-08 20:47:32 +02:00
johndoe123
2e32b32808
NEVERHOOD: Start with the MenuModule
2013-05-08 20:47:32 +02:00
johndoe123
ef8f0215cf
NEVERHOOD: Add GameVars::dumpVars() for debugging
2013-05-08 20:47:32 +02:00
johndoe123
126a306c89
NEVERHOOD: Some cleanup:
...
- Remove _name field from Entity (wasn't really maintained by me and
became useless)
- Remove obsolete TODOs
- Add STICK_LAST_FRAME constant for better readability
- Remove commented out callbackList TODOs (these were so far never
used with over 90% of the game implemented)
2013-05-08 20:47:32 +02:00
johndoe123
533eb5d61d
NEVERHOOD: Rename puzzle initialization methods and give them better names
2013-05-08 20:47:32 +02:00
johndoe123
9b7354dacb
NEVERHOOD: Fix mouse cursor visibility by starting out invisible when the Mouse object is created and hiding the cursor when it's destroyed
2013-05-08 20:47:32 +02:00
johndoe123
c7ad09c685
NEVERHOOD: Remove BaseSurface::addDirtyRect() which is obsolete as well
2013-05-08 20:47:32 +02:00
johndoe123
a6e9475a3f
NEVERHOOD: Remove Scene::_surfaceFlag which also is obsolete now
2013-05-08 20:47:32 +02:00
johndoe123
a238f57805
NEVERHOOD: Remove DirtyBackground which became obsolete after the renderqueue stuff
2013-05-08 20:47:31 +02:00
johndoe123
4295991d19
NEVERHOOD: Use hardcoded values as width/height of several sprites (in the original the values were loaded from the entry's extData but since all values are constant anyway it shouldn't matter)
2013-05-08 20:47:31 +02:00
johndoe123
c09c0b8998
NEVERHOOD: Implement an experimental "render queue" to only draw and update what's actually changed; it works surprisingly well so far and only needs a few more changes here and there
2013-05-08 20:47:31 +02:00
johndoe123
692edf40c7
NEVERHOOD: Try to give the AsCommonCar identifiers better names
...
- Implement AsCommonCar::updateSound()
- Fix a bug in Scene1608 (the Klaymen animation got stuck when trying to get back into the car)
2013-05-08 20:47:31 +02:00
johndoe123
963b760076
NEVERHOOD: Remove TODOs concerning the original engine's debug code
...
- Add Scene1202 palette effect
- Add AsScene1405Tile sound panning
- Clean up some old comments
2013-05-08 20:47:31 +02:00
johndoe123
2c4f0b70fe
NEVERHOOD: Add Entity::setSoundPan and use it in the DiskplayerScene
2013-05-08 20:47:31 +02:00
johndoe123
f5c7070ace
NEVERHOOD: Add mouse cursor hiding/showing
2013-05-08 20:47:31 +02:00
johndoe123
682d15fce4
NEVERHOOD: Cleanup and fixes
...
- Implement GameModule::initScene2801Vars()
- Fix Scene1201::~Scene1201() which does some game logic stuff
- Rename some stuff
- Add more game variable constants
2013-05-08 20:47:07 +02:00
johndoe123
6df8fccf6b
NEVERHOOD: Implement GameModule::createModuleByHash
...
This is used later when restoring savegames
- Rename V_RING5_PULLED to V_RADIO_ENABLED
- Implement Palette::fillBaseBlack and use it in Scene2803Small
- Fix Scene2802 (show disabled radio if it's not enabled)
2013-05-08 20:47:07 +02:00
johndoe123
9858705772
NEVERHOOD: Graphics related changes/fixes:
...
- Add BitmapFlags enum
- Merge unpackSpriteRle and unpackSpriteRleRepl
- Implement Y flipping in unpackSpriteRle
- Fix Y flipping in AsScene2804CrystalWaves
2013-05-08 20:47:07 +02:00
johndoe123
676c7569f6
NEVERHOOD: Fix a very stupid bug in Scene::insertMouse433
2013-05-08 20:47:07 +02:00
johndoe123
a724e603da
NEVERHOOD: Use CursorMan
...
- 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-08 20:47:07 +02:00
johndoe123
fa53c0cf83
NEVERHOOD: Work on the resource system:
...
- Remove unused stuff
- Shuffle some stuff around
2013-05-08 20:47:07 +02:00
johndoe123
a80ec8c89c
NEVERHOOD: Implement Module2900, the teleporter
...
- Also fix a related bug in Module2000 (teleporter appearing animation didn't play)
2013-05-08 20:47:06 +02:00
johndoe123
b8d939a94b
NEVERHOOD: Implement Scene2802 (radio tuning scene)
...
- Handle mouse button up events
- Use the SmackerDecoder's rewind
- Implement SmackerPlayer::gotoFrame (slow but better than nothing)
2013-05-08 20:47:06 +02:00
johndoe123
111b6d32c6
NEVERHOOD: Fix Smacker framerate bug after the video decoder changes
...
- React to the space key which can skip some videos and navigation transitions
- Minor renaming in SmackerScene
2013-05-08 20:47:06 +02:00
johndoe123
2e7d100a6f
NEVERHOOD: Replace most of the literal digits in get/setSubVar with constants
2013-05-08 20:47:06 +02:00
Willem Jan Palenstijn
02c5cc75a7
Merge branch 'master'
...
Conflicts:
configure
base/plugins.cpp
2013-05-08 20:46:44 +02:00
johndoe123
1539023834
NEVERHOOD: Use constants for the numbers in get/setGlobalVar
...
Now the code is much more readable
- Still TODO is to do the same with get/setSubVar
2013-05-08 20:44:40 +02:00
johndoe123
97ee348c2a
NEVERHOOD: Rename stuff in DiskplayerScene
...
- Add SmackerPlayer::isDone()
- Fix puzzle key variable handling
- Update globalvars.txt
2013-05-08 20:44:40 +02:00
johndoe123
fd13b546a7
NEVERHOOD: Rename stuff in the Scene class and clean up a little
...
- 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-08 20:44:40 +02:00
johndoe123
59901c5d13
NEVERHOOD: Rename stuff in Module3000
...
- Also change Scene1609::testVars
- Update globalvars.txt
2013-05-08 20:44:40 +02:00
johndoe123
016638bd9e
NEVERHOOD: Rename stuff in Module2700
...
- Also fix the clipRect in Scene2701
2013-05-08 20:44:40 +02:00
johndoe123
5aee04b127
NEVERHOOD: Work on Module2800:
...
- Rename KmScene2803b to KmScene2803Small; Scene2803b to Scene2803Small
- Rename lots of stuff
2013-05-08 20:44:40 +02:00
johndoe123
fcbab80507
NEVERHOOD: Rename stuff in Module2700 (also in Module2500 which uses some of it)
2013-05-08 20:44:40 +02:00
johndoe123
1da6b95af9
NEVERHOOD: Work on Module2500:
...
- Remove Class541 and Class542 and instead use AsCommonIdleCarLower and AsCommonIdleCarFull
- Some renaming
2013-05-08 20:44:39 +02:00
johndoe123
4c421a09c8
NEVERHOOD: Add clipRects to all Klayman subclasses
...
- Rename stuff in Module2400
- Move some temp sprites from class scope to local scope in the respective constructors
2013-05-08 20:44:39 +02:00
johndoe123
483d76d635
NEVERHOOD: Enable/fixup navigation scene sound update code in several modules
...
- Rename some NavigationScene stuff
2013-05-08 20:44:39 +02:00
johndoe123
9b7bb71dd9
NEVERHOOD: Simplify code and rename things
...
- Add Module::createStaticScene to simplify creation of static scenes
(and use it in the relevant places)
- Rename Class545 to AsCommonKey and rename related variables
- Rename stuff in Module2200
2013-05-08 20:43:48 +02:00
johndoe123
15cfb9f787
NEVERHOOD: Implement clipping against multiple clipRects, used only in several scenes for the Klayman sprite.
...
Currently only implemented in KmScene2201 for testing.
2013-05-08 20:43:48 +02:00
johndoe123
8a9ca493b6
NEVERHOOD: Rename stuff in several modules
2013-05-08 20:43:48 +02:00
johndoe123
2fa76ccca1
NEVERHOOD: Work on Module1700:
...
- Rename stuff
- Add puzzle var initialization in Scene1705
2013-05-08 20:43:47 +02:00
johndoe123
b320c9f5a0
NEVERHOOD: Work on Module1600:
...
- Rename stuff (also in related files)
2013-05-08 20:43:47 +02:00
johndoe123
cb5ca83578
NEVERHOOD: Rename more stuff in Module1400; also fix some bugs
...
- Update globalvars.txt
2013-05-08 20:43:47 +02:00
johndoe123
39d1982e47
NEVERHOOD: Work on Module1400:
...
- Rename stuff
- Fix some bugs (mistyped message numbers...)
- More to come
2013-05-08 20:43:47 +02:00
johndoe123
eefa175a2f
NEVERHOOD: Update todo.txt
2013-05-08 20:43:47 +02:00
johndoe123
106ec42124
NEVERHOOD: Work on Module1300:
...
- Remove Class595, only used for setting the surface priority via a message
- Rename stuff and fix some errors
2013-05-08 20:43:47 +02:00
johndoe123
7b0b3000a7
NEVERHOOD: Rename stuff in Module1200
...
- Remove unused countdowns/code in AsScene1201Creature
- Fix AudioResourceMan::isSoundPlaying
2013-05-08 20:43:47 +02:00
johndoe123
f77b12cf96
NEVERHOOD: Rename stuff in Module1200
...
- Fix Scene1201 (tnt man, match)
2013-05-08 20:43:47 +02:00
johndoe123
5e08ab3e3f
NEVERHOOD: Rename Class426 to SsCommonPressButton
2013-05-08 20:43:47 +02:00
johndoe123
81667d492a
NEVERHOOD: Remove SsScene1002LadderArch and Class599 and turn them into 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-08 20:43:46 +02:00
johndoe123
c88fdc34dd
NEVERHOOD: Rename Class152 to StaticScene
2013-05-08 20:43:46 +02:00
johndoe123
bb4bda7404
NEVERHOOD: More minor Klayman changes:
...
- Normalize the calling order of the Set... macros
- Actually use _walkResumeFrameIncr, change stStartWalkingResume
2013-05-08 20:43:46 +02:00
johndoe123
debc7e953d
NEVERHOOD: More changes to the Klayman class:
...
- Rename some stuff
- Reorder methods (in the Klayman header only until I'm happy with it :)
2013-05-08 20:43:46 +02:00
johndoe123
3ef691f1af
NEVERHOOD: Rename
...
- Also fix compilation (oops)
2013-05-08 20:43:46 +02:00
johndoe123
4fef1ac9f2
NEVERHOOD: Some more merging and renaming in the Klayman class
2013-05-08 20:43:46 +02:00
johndoe123
22cfd04b12
NEVERHOOD: Rename handleMessage41D640
2013-05-08 20:43:46 +02:00
johndoe123
7e4faf3505
NEVERHOOD: More Klayman merging
...
- Also clean up parameter list of two Klayman subclass constructors and send a message to the parent class instead of operating on the entities inside the Klayman class
2013-05-08 20:43:46 +02:00
johndoe123
e97bd30682
NEVERHOOD: Change sound stuff in Klayman
...
- Also merge some more code into the Klayman class
- Rename hmInsertDiskSide to hmInsertKey (also related code)
2013-05-08 20:43:46 +02:00
johndoe123
acdc0256bb
NEVERHOOD: Change sound stuff in DiskplayerScene
2013-05-08 20:43:45 +02:00
johndoe123
1b3a686cac
NEVERHOOD: Fix AsScene3011Symbol
2013-05-08 20:43:45 +02:00
johndoe123
45da15adce
NEVERHOOD: Change sound stuff in Module3000 (dirty, TODO)
2013-05-08 20:43:45 +02:00
johndoe123
eca881bd3e
NEVERHOOD: Change sound stuff in Module2800
2013-05-08 20:43:45 +02:00
johndoe123
73f4e4bcac
NEVERHOOD: Change sound stuff in Module2700
2013-05-08 20:43:45 +02:00
johndoe123
26188a3a69
NEVERHOOD: Change sound stuff in Module2600
2013-05-08 20:43:45 +02:00
johndoe123
fb9d9c30e6
NEVERHOOD: Change sound stuff in Module2500
2013-05-08 20:43:45 +02:00
johndoe123
0c5a5b3c62
NEVERHOOD: Change sound stuff in Module2400
2013-05-08 20:43:45 +02:00
johndoe123
3651d982c4
NEVERHOOD: Change sound stuff in Module2200
...
- Add Entity::stopSound
2013-05-08 20:43:45 +02:00
johndoe123
78df19c648
NEVERHOOD: Change sound stuff in Module2100
2013-05-08 20:43:45 +02:00
johndoe123
a8dda6c5b6
NEVERHOOD: Change sound stuff in Module1900
2013-05-08 20:43:44 +02:00
johndoe123
0a1a228a88
NEVERHOOD: Change sound stuff in Module1700
...
- Add Entity::setSoundVolume
2013-05-08 20:43:44 +02:00
johndoe123
0c272631df
NEVERHOOD: Change sound stuff in Module1600
2013-05-08 20:43:44 +02:00
johndoe123
2df0a0a2e1
NEVERHOOD: Change sound stuff in Module1500
2013-05-08 20:43:44 +02:00
johndoe123
b119efd5ed
NEVERHOOD: Change sound stuff in Module1400
2013-05-08 20:43:44 +02:00
johndoe123
5ab4eb6555
NEVERHOOD: Change sound stuff in Module1300
...
- Also fix a very stupid bug in AsScene1307Key which messed up the key moving animation
2013-05-08 20:43:44 +02:00
johndoe123
fc359abd08
NEVERHOOD: Change sound stuff in Module1200
2013-05-08 20:43:44 +02:00
johndoe123
7adc1d312e
NEVERHOOD: Change sound stuff in Module1100
...
- Implement Entity::isSoundPlaying
2013-05-08 20:43:44 +02:00
johndoe123
0f04a01338
NEVERHOOD: Change sound playing
...
Sounds can now be loaded/played by an entity without declaring/initializing a SoundResource which is a little nicer. I implemented this so far for Module1000 only, rest will follow.
2013-05-08 20:43:44 +02:00
johndoe123
6160ee3cf2
NEVERHOOD: Move code from entity.h to new entity.cpp
2013-05-08 20:43:44 +02:00
johndoe123
e1943c1e2b
NEVERHOOD: Move more into the Klayman base class
...
- Fix header from previous commit
2013-05-08 20:43:44 +02:00
johndoe123
d1927ef8e6
NEVERHOOD: Move Klayman teleporter appear/disappear animation code from the several subclasses to the base Klayman class; the code was equal except for the animation hashes
2013-05-08 20:43:43 +02:00
johndoe123
cce19001fd
NEVERHOOD: Rename more Klayman stuff (not much left :)
2013-05-08 20:43:43 +02:00
johndoe123
a5986fd722
NEVERHOOD: Fix resource file reading by introducing SafeMutexedSeekableSubReadStream which locks a mutex during reads and also lock the same mutex in BlbArchive::load; loading resources while music is playing shouldn't mess up the file position now
...
- Fix loading of non-existent resources (not elegant and not checked everywhere yet, the resource system is subject to a minor rewrite anyway)
- Rename more Klayman stuff
2013-05-08 20:43:43 +02:00
johndoe123
8bdddfdb02
NEVERHOOD: Rename many Klayman functions/variables
2013-05-08 20:43:43 +02:00
johndoe123
21d1372d7e
NEVERHOOD: Some work on the Klayman "idle" code (when the user doesn't do something for a certain time)
...
- Fix startIdleAnimation and the Klayman update code which calls the idle code
- Rename related variables/methods
2013-05-08 20:43:43 +02:00
johndoe123
2ba49676ea
NEVERHOOD: Add destructor to AsScene2804BeamCoil
2013-05-08 20:43:43 +02:00
johndoe123
ba991fe702
NEVERHOOD: Fix addSound in AsScene2609Water and add a destructor
2013-05-08 20:43:42 +02:00
johndoe123
a2bc192912
NEVERHOOD: Add sound lists to all modules which have them
2013-05-08 20:43:42 +02:00
johndoe123
f5a8c9d90d
NEVERHOOD: Add most SoundMan remaining calls
...
Except for those which need a sound hash array (later)
2013-05-08 20:43:42 +02:00
johndoe123
fc0e40db30
NEVERHOOD: Implement the actual audio code
...
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-08 20:43:42 +02:00
johndoe123
0bb70c39f0
NEVERHOOD: More work on the SoundMan
...
- Also changed all sound related function calls which are still TODO to the new names
2013-05-08 20:43:42 +02:00
johndoe123
65afa25c9f
NEVERHOOD: Implement the SoundMan; no sound is played yet since the important code doesn't exist yet
2013-05-08 20:43:42 +02:00
johndoe123
96153bfe04
NEVERHOOD: Implement TextSurface, used in the save/load menus
2013-05-08 20:43:42 +02:00
johndoe123
d1d1596fd1
NEVERHOOD: Add support for shadow sprites, used only for the shadow of the car/vehicle thing
2013-05-08 20:43:41 +02:00
johndoe123
ee36d5d5e3
NEVERHOOD: Add remaining scenes in Module2400
2013-05-08 20:43:41 +02:00
johndoe123
1a581543a7
NEVERHOOD: Implement Scene2403
2013-05-08 20:43:41 +02:00
johndoe123
93614a17a8
NEVERHOOD: Implement Scene2406
2013-05-08 20:43:41 +02:00
johndoe123
7c2aa2a225
NEVERHOOD: Implement Scene2402
2013-05-08 20:43:41 +02:00
johndoe123
402f4bd275
NEVERHOOD: Start with Module2400
...
- Implement Scene2401
2013-05-08 20:43:41 +02:00
johndoe123
bd3dac9781
NEVERHOOD: Add commented out code (which is TODO) to Module2500 so I don't forget it later
2013-05-08 20:43:41 +02:00
johndoe123
86c75922fe
NEVERHOOD: Implement Scene2504 and add all car track scenes
2013-05-08 20:43:40 +02:00
johndoe123
bbb23cdf27
NEVERHOOD: Start with Module2500
...
- Implement Scene2501
- Add Scene::removeSprite
2013-05-08 20:43:40 +02:00
johndoe123
43362dfbd1
NEVERHOOD: Implement Scene2803
...
- Also add "empty" constructor to DirtyBackground (used by that scene)
2013-05-08 20:43:40 +02:00
johndoe123
93a074e9ad
NEVERHOOD: Implement Scene2812
2013-05-08 20:43:40 +02:00
johndoe123
0388fb496d
NEVERHOOD: Implement Scene2822
2013-05-08 20:43:40 +02:00
johndoe123
99ebd0eca3
NEVERHOOD: Implement Scene2810
...
- Also add globalvars.txt, a (currently almost empty) list of global game variables with descriptions
2013-05-08 20:43:40 +02:00
johndoe123
6f003399c8
NEVERHOOD: Implement Scene2807
2013-05-08 20:43:39 +02:00
johndoe123
0962c594bd
NEVERHOOD: Rename wrongly named stuff
2013-05-08 20:43:39 +02:00
johndoe123
4f1e8b2070
NEVERHOOD: Implement Scene2804
...
- Fix dispenser in Scene2808 (wasn't clickable)
- Add Palette::fillBaseWhite
- Minor renaming in Module2800
2013-05-08 20:43:39 +02:00
johndoe123
2aa6e6b89c
NEVERHOOD: Implement Scene2809
...
- Fix some setMessageList parameters
- Add scene 10 in Module2800
2013-05-08 20:43:39 +02:00
johndoe123
1cb1e66c10
NEVERHOOD: Implement Class488 (renaming TODO)
2013-05-08 20:43:39 +02:00
johndoe123
12bb3f23f3
NEVERHOOD: Implement Scene2808
2013-05-08 20:43:39 +02:00
johndoe123
404aaaad94
NEVERHOOD: Implement Class469
2013-05-08 20:43:39 +02:00
johndoe123
c2f91e39ba
NEVERHOOD: Implement Scene2806 (Class469 TODO)
2013-05-08 20:43:39 +02:00
johndoe123
f3d98e6275
NEVERHOOD: Add scene 28/05
2013-05-08 20:43:38 +02:00
johndoe123
ee7bd2fc6c
NEVERHOOD: Implement Scene2803b
...
- Also some more Klayman stuff used by that scene
2013-05-08 20:43:38 +02:00
johndoe123
6467904898
NEVERHOOD: Implement Scene2805
2013-05-08 20:43:38 +02:00
johndoe123
9de3cf5675
NEVERHOOD: Some minor cleanup, add a TODO about some palette issues (I couldn't find any apparent causes yet)
2013-05-08 20:43:38 +02:00
johndoe123
0683ed9eee
NEVERHOOD: Rename SetSpriteCallback to SetSpriteUpdate
...
- Started replace message numbers with constants
- Add NRect::contains
- Some cleanup
2013-05-08 20:43:38 +02:00
Willem Jan Palenstijn
9c2341678e
Merge branch 'master'
2013-05-08 20:40:58 +02:00
johndoe123
8172d679df
NEVERHOOD: Add scene create/update handling in Module2800
2013-05-08 20:40:44 +02:00
Filippos Karapetis
88bfe5d076
NEVERHOOD: Added a FIXME
2013-05-08 20:40:04 +02:00
johndoe123
2e94464a8a
NEVERHOOD: Start with Module2800 and add Scene2801
2013-05-08 20:40:04 +02:00
johndoe123
13efdceb9e
NEVERHOOD: Add TODO
2013-05-08 20:40:04 +02:00
Filippos Karapetis
4f35989ac4
NEVERHOOD: Minor renaming, avoid mixing variables with their types
2013-05-08 20:40:03 +02:00
Filippos Karapetis
5465e6fe64
NEVERHOOD: Pack the KlaymanIdleTableItem struct
2013-05-08 20:40:03 +02:00
johndoe123
f43b54827e
NEVERHOOD: Some renaming in Module1000
2013-05-08 20:40:03 +02:00
johndoe123
adb02a9f38
NEVERHOOD: More renaming
2013-05-08 20:40:03 +02:00
johndoe123
dac95f3f73
NEVERHOOD: More renaming (mostly in Klayman and AnimatedSprite)
2013-05-08 20:40:03 +02:00
Willem Jan Palenstijn
01f3f3a8dd
Merge branch 'master'
2013-05-08 20:39:44 +02:00
johndoe123
9cf2c83e5e
NEVERHOOD: Major renaming:
...
- Give better names to animation callback functions/vars
- Give better names to animation functions (previously known as subXXXX - not completed yet)
- Add dumpAllResources (which is a lie, since it only dumps animations for now)
- More renaming to come
2013-05-08 20:39:43 +02:00
johndoe123
023c36f2b6
NEVERHOOD: Add Class437 (still needs renaming, of course :)
2013-05-08 20:39:43 +02:00
johndoe123
c56c93f085
NEVERHOOD: Add Scene2702 (needs cleanup)
2013-05-08 20:39:43 +02:00
johndoe123
d276e7ceaa
NEVERHOOD: Add Scene2701
2013-05-08 20:39:42 +02:00
johndoe123
463039c406
NEVERHOOD: Add Scene2706
...
- Move calcDistance from Class521 to graphics.cpp
2013-05-08 20:39:42 +02:00
johndoe123
aa789ee02b
NEVERHOOD: More work in Module2700
2013-05-08 20:39:42 +02:00
johndoe123
770689b2f1
NEVERHOOD: Start with Module2700 (doesn't do anything yet)
2013-05-08 20:39:42 +02:00
johndoe123
28be9f6f4b
NEVERHOOD: Add Scene2609 and hook Module2600 to the GameModule
2013-05-08 20:39:42 +02:00
johndoe123
9f599a7dfc
NEVERHOOD: Start with Module2600 (missing Scene2609)
2013-05-08 20:39:42 +02:00
johndoe123
8840c74819
NEVERHOOD: Add floor button to Scene1401
2013-05-08 20:39:41 +02:00
johndoe123
a7dcbd0f33
NEVERHOOD: Add floor button ("Class429") to Scene2101
2013-05-08 20:39:41 +02:00
johndoe123
21ebcf2af2
NEVERHOOD: Add Module2100 and Scene2101 (not complete yet)
2013-05-08 20:39:41 +02:00
johndoe123
7a0a0c4b65
NEVERHOOD: Add Module1900 and Scene1901, Scene1907
...
(Scene1908 is actually only used in another module...)
2013-05-08 20:39:41 +02:00
johndoe123
2275141d56
NEVERHOOD: Add Scene1609
...
- Use Scene::insertSprite<> in all scenes
2013-05-08 20:39:41 +02:00
johndoe123
af2820fd23
NEVERHOOD: Add leaveModule and leaveScene
...
(instead of using sendMessage directly)
2013-05-08 20:39:41 +02:00
johndoe123
236ca705e8
NEVERHOOD: Add Module1600 and Scene1608 (stuff will be renamed later)
2013-05-08 20:39:41 +02:00
johndoe123
47f1fe141b
NEVERHOOD: Add Scene1109
...
- Also fix some bugs regarding a missing parameter to setMessageList in various scenes
2013-05-08 20:39:40 +02:00
johndoe123
3872efe2a5
NEVERHOOD: Start with Module1100 and add Scene1105
2013-05-08 20:39:40 +02:00
johndoe123
abf78e07ee
NEVERHOOD: Replace InsertKlayman macros with template functions (still weird but nicer)
2013-05-08 20:39:40 +02:00
johndoe123
9aff6337bc
NEVERHOOD: Try to cleanup sprite creation with a templated insertSprite function (only in Module1000 so far)
2013-05-08 20:39:40 +02:00
johndoe123
1b2d496d18
NEVERHOOD: Try to clean up the clipRect stuff a little
2013-05-08 20:39:40 +02:00
johndoe123
2f670690bc
NEVERHOOD: Add Scene::setPalette for simpled palette creation and use it
2013-05-08 20:39:40 +02:00
johndoe123
fa695229be
NEVERHOOD: Add Sprite::setVisible and use it instead of direct access to the surface member
2013-05-08 20:39:40 +02:00
johndoe123
10ff159030
NEVERHOOD: Move createModuleXXX/updateModuleXXX methods
...
There are merged into createModule and updateModule in the GameModule class
2013-05-08 20:39:40 +02:00
johndoe123
17ad070a9c
NEVERHOOD: Move createSceneXXX/updateSceneXXX methods
...
They are merged into createScene and updateScene for the other already
implemented modules (I hope I didn't break too much :)
2013-05-08 20:39:39 +02:00
johndoe123
a4c34cedd5
NEVERHOOD: Merge createSceneXXX/updateSceneXXX methods into createScene and updateScene for Module1200
2013-05-08 20:39:39 +02:00
johndoe123
0ec039c5b0
NEVERHOOD: Merge the three mouse classes into Mouse, introduce insertMouse433 etc. methods and use them
2013-05-08 20:39:39 +02:00
johndoe123
71ea4d5877
NEVERHOOD: Merge Palette2 class into Palette
2013-05-08 20:39:39 +02:00
johndoe123
d24907d1bb
NEVERHOOD: Rename Palette2::addPalette to addBasePalette to prepare the merge of the Palette/Palette2 classes
2013-05-08 20:39:39 +02:00
johndoe123
67fe73352b
NEVERHOOD: Merge createSceneXXX/updateSceneXXX methods into createScene and updateScene for Module1000
2013-05-08 20:39:39 +02:00
johndoe123
02fe0bc65d
NEVERHOOD: Merge scene-specific createSceneXXX/updateSceneXXX methods into createScene and updateScene (for Module2200 only so far)
2013-05-08 20:39:39 +02:00
johndoe123
fad64afa44
NEVERHOOD: Remove unused resource preloading stuff (probably resource preloading is not needed since the original game ran off slow double/quad-speed cd drives and preloading reduced stuttering while playing back then)
...
- Add Klayman animation speedup
2013-05-08 20:39:39 +02:00
johndoe123
c30e16628e
NEVERHOOD: Add Module::updateChild and use it (in most places)
2013-05-08 20:39:39 +02:00
johndoe123
5d63bef6a2
NEVERHOOD: Use setBackground
2013-05-08 20:39:39 +02:00
johndoe123
4a88ce37dd
NEVERHOOD: Use InsertKlayman
2013-05-08 20:39:38 +02:00
johndoe123
cac9a090e7
NEVERHOOD: Use insertStaticSprite
2013-05-08 20:39:38 +02:00
johndoe123
b757e22f88
NEVERHOOD: Multiple changes to make the game logic code cleaner (hopefully :)
...
- 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-08 20:39:38 +02:00
johndoe123
a21f9ef891
NEVERHOOD: Add Scene1310 and Scene1311
2013-05-08 20:39:38 +02:00
johndoe123
38378d2090
NEVERHOOD: Add Scene1317
...
- Fix SmackerPlayer (last frame was dropped, this hopefully doesn't break other stuff...)
2013-05-08 20:39:38 +02:00
johndoe123
3e122b002c
NEVERHOOD: Add Scene1308 (renaming of stuff todo)
2013-05-08 20:39:38 +02:00
johndoe123
e13b8740c9
NEVERHOOD: Add Scene1307
2013-05-08 20:39:38 +02:00
johndoe123
30ff790a07
NEVERHOOD: Add Scene1306
2013-05-08 20:39:38 +02:00
johndoe123
a6cb31c9c3
NEVERHOOD: Add Scene1305
2013-05-08 20:39:38 +02:00
johndoe123
086879a4aa
NEVERHOOD: Add Scene1304
2013-05-08 20:39:37 +02:00
johndoe123
9d6e3b9575
NEVERHOOD: Add Scene1303
2013-05-08 20:39:37 +02:00
johndoe123
d4030b7a9f
NEVERHOOD: Start with Module1300 and implement Scene1302
2013-05-08 20:39:37 +02:00
johndoe123
9b151cefc3
NEVERHOOD: Implement HallOfRecordsScene (and all HoR scenes) and Scene2247
...
- Load SceneInfo140 from neverhood.dat
- Some renaming
2013-05-08 20:39:36 +02:00
johndoe123
b16f34c376
NEVERHOOD: Add Scene2248
2013-05-08 20:39:36 +02:00
johndoe123
49658b6b5a
NEVERHOOD: Forgot to remove debug code
2013-05-08 20:39:36 +02:00
johndoe123
9133d17cdf
NEVERHOOD: Implement Scene2242
2013-05-08 20:39:36 +02:00
johndoe123
730844f1b7
NEVERHOOD: Implement Scene2208 (viewer for Hall Of Records text)
...
- Implement Screen::drawSurface3 and Screen::drawUnk and move actual blitting code to Screen::blit
2013-05-08 20:39:36 +02:00
johndoe123
50996201f4
NEVERHOOD: Very small cleanup
2013-05-08 20:39:36 +02:00
johndoe123
41f8749bd0
NEVERHOOD: Implement Scene2207 (not complete yet)
2013-05-08 20:39:36 +02:00
johndoe123
f29619f655
NEVERHOOD: Implement Scene2206
2013-05-08 20:39:36 +02:00
johndoe123
e177dcf911
NEVERHOOD: Implement Scene2205
2013-05-08 20:39:35 +02:00
johndoe123
732f7c8845
NEVERHOOD: Add Scene2204 (just a DiskplayerScene)
2013-05-08 20:39:35 +02:00
johndoe123
31457e11aa
NEVERHOOD: Implement Scene2203
2013-05-08 20:39:35 +02:00
johndoe123
c4a4ce4e35
NEVERHOOD: Implement Scene2202 (sliding puzzle)
2013-05-08 20:39:35 +02:00
johndoe123
b64b0cfac2
NEVERHOOD: Implement updateScene2201
2013-05-08 20:39:35 +02:00
johndoe123
eb8c44b54c
NEVERHOOD: Implement Scene2201
...
- Implement DataResource::getHitRectList, DataResource::getMessageListAtPos and related stuff in scene.cpp
2013-05-08 20:39:35 +02:00
digitall
bec86c7c2e
NEVERHOOD: Switch to initGraphics() call, rather than separate calls. Default to 1xScalar.
2013-05-08 20:39:35 +02:00
johndoe123
5fcc3af23b
NEVERHOOD: Implement Module2000
2013-05-08 20:39:34 +02:00