Commit Graph
626 Commits
Author SHA1 Message Date
Martin Kiewitz 01eb329be2 SCI: kPalette / animate adjustments to behave more like sierra sci, also doesnt crash in island of brain anymore
svn-id: r46975
2010-01-04 16:44:58 +00:00
Filippos Karapetis 5560f93c2a SCI/new sound code: update sound cues when kGetEvent() is called, instead of kAnimate(), fixes music fading in LSL3
svn-id: r46973
2010-01-04 16:16:58 +00:00
Filippos Karapetis 74ae4ecc48 Added a comment for the reason updateSci0Cues() is called within kAnimate()
svn-id: r46833
2010-01-01 15:35:27 +00:00
Filippos Karapetis afc4bc1295 SCI/new music code:
- Resolved a deadlock with the mixer, and added appropriate mutexes (a result of the fact that SCI mixes MIDI and digital audio in the same list)
- Fixed sound playing when loading games, by properly resetting the MIDI driver
- Reverted savegame version to 14 - the changes in versions 15 and 16 don't have any effect on the currently enabled old music code, and the new music code is disabled by default, and is still prone to changes
- Now saving/loading signal, loop and hold for each sound, as well as reverb
- Added stub code for setting reverb and channel hold
- The signal, loop and hold values of each song are cached, like in SSCI and like what happens in Greg's SCI implementation. This allows a clear separation of the engine code from the rest of the engine. Reverted commits 46792 and 46797
- Removed duplicate song list accessing code
- Song cues are now updated in kAnimate for SCI0, like the old music code does, to compensate for the fact that SCI0 didn't poll for music changes via cmdUpdateCues, like what SCI01 and newer do
- Cleanup

svn-id: r46812
2010-01-01 06:41:52 +00:00
Filippos Karapetis bcc33871c1 The wrapper for the VMD decoder is only used in the SCI engine for SCI32 games, so moved it inside the engine, instead of common code. Added support for VMD video playing from the "play_video" console command
svn-id: r46737
2009-12-30 10:09:48 +00:00
Filippos Karapetis fabe51c129 Renamed gameName -> gameId, to keep the same vocabulary everywhere
svn-id: r46635
2009-12-27 12:54:03 +00:00
Filippos Karapetis 69fa167902 SCI32: The view related functions pass a view object as parameter, and the engine should deduce the parameters it needs from that object. Added stub view functions based on that fact. Also, added a sanity check in kCelHigh and kCelWide
svn-id: r46527
2009-12-24 13:50:50 +00:00
Matthew Hoops ef79d7f017 SCI32:
- Fully implement kArray and kIsHiRes and mostly implement kString (printf and atoi subfunctions still missing).
	- Add a dummy SciGui class for SCI32 to bypass the views. Gabriel Knight 1 will now play the Sierra logo music and the main menu music.
	- Some other minor SCI32 changes.

svn-id: r46462
2009-12-21 14:32:54 +00:00
Filippos Karapetis 2a3cbcbc57 Fixed text controls when subtitles are enabled in multilingual SCI01 games
svn-id: r46461
2009-12-21 14:06:47 +00:00
Filippos Karapetis 0c1b646c7f - Started wrapping the current sound code around appropriate defines
- Introduced a new resource type, SoundResource, used in the new music code

svn-id: r46421
2009-12-19 16:19:53 +00:00
Martin Kiewitz df422c0894 SCI: Fix kSetCursor (Sci1.1) to behave like Sierra Sci (fixes cursor hiding/showing in kq6)
svn-id: r46224
2009-11-30 19:34:45 +00:00
Filippos Karapetis ece0444f9c Changed some comments back to DOxygen (inline) style and removed some more dead code
svn-id: r46029
2009-11-20 22:41:17 +00:00
Martin Kiewitz b64afbdac0 SCI/newgui: kDisposeWindow - changed to reflect actual sierra sci behaviour
svn-id: r45683
2009-11-05 07:27:36 +00:00
Filippos Karapetis f83d7c6339 Reapplied the LSL1 casino workaround, which got disabled accidentally in commit #45661
svn-id: r45665
2009-11-04 14:17:14 +00:00
Martin Kiewitz 429c06c5ae SCI/newgui: kGraph / InitPriority changed to reflect sci0 implementation, also moved code
svn-id: r45661
2009-11-04 12:54:27 +00:00
Filippos Karapetis 12e3375f3b Removed the reference to SciGuiCursor from EngineState
svn-id: r45660
2009-11-04 12:19:05 +00:00
Filippos Karapetis f755311114 priority_first and priority_last are not used by the new drawing code, thus the new code didn't handle priority changes by kGraph()
svn-id: r45658
2009-11-04 11:52:11 +00:00
Filippos Karapetis 34aaac37fc Removed some more hacks for accessing the segment manager
svn-id: r45631
2009-11-03 14:24:47 +00:00
Martin Kiewitz fdc6524fb3 SCI/newgui: fixing kDisposeWindow so that reanimate is correctly called (fixes cels disappearing after removing windows)
svn-id: r45588
2009-10-31 22:50:05 +00:00
Johannes Schickel f709046167 Fix compilation.
svn-id: r45582
2009-10-31 19:55:49 +00:00
Martin Kiewitz b29fd4dacd SCI/newgui: SciGuiPortrait created
svn-id: r45579
2009-10-31 19:48:28 +00:00
Johannes Schickel 67a7492fa2 Comment out unused variables.
svn-id: r45574
2009-10-31 18:36:13 +00:00
Filippos Karapetis c64fa600b7 - Added some TODOs
- Disabled the kGraph case used in KQ6 Windows for now, as it's problematic and crashes the game
- Added extra param to kDrawCel(), used in KQ6 Windows

The icon bar in KQ6 Windows is shown a bit better now

svn-id: r45567
2009-10-31 17:54:28 +00:00
Martin Kiewitz 99cd8d5d2f SCI/newgui: kGraph support for Save-UpscaledHires-Box (not sure if coordinates are really hires, it seems that they are not)
svn-id: r45564
2009-10-31 15:25:47 +00:00
Johannes Schickel 0867129399 Formatting.
svn-id: r45553
2009-10-30 23:44:12 +00:00
Filippos Karapetis 86cafd561f Some work on the kPortrait kernel function, used to show hires character portraits in the Windows CD version of KQ6
svn-id: r45552
2009-10-30 22:55:35 +00:00
Filippos Karapetis 89811d1ea4 Cleanup
svn-id: r45506
2009-10-29 19:32:27 +00:00
Filippos Karapetis ebfcea35ec - Implemented savegame deletion for SQ4 floppy
- Added a more proper way to disable the "Change Directory" button, by checking its name, rather than the string it contains

svn-id: r45504
2009-10-29 18:07:39 +00:00
Filippos Karapetis 6eea032245 Disable the "Delete" button for all versions of SQ4 floppy, and the "Change Directory" button for all games (English and non-English versions)
svn-id: r45503
2009-10-29 16:27:23 +00:00
Martin Kiewitz 8178d548eb SCI/newgui: Defining color white and others in SciGuiScreen and using that. Also clears screen with 0 on sci1.1 games (needs further investigation), fixes pictures
svn-id: r45500
2009-10-29 14:16:20 +00:00
Filippos Karapetis 8150fc07bc Added a workaround for the casino door in LSL1
svn-id: r45494
2009-10-28 23:32:28 +00:00
Martin Kiewitz 5f71650520 SCI/newgui: BaseSetter moved to SciGui
svn-id: r45480
2009-10-28 19:19:35 +00:00
Martin Kiewitz 88e56f87eb SCI/newgui: IsItSkip moved into SciGui
svn-id: r45479
2009-10-28 19:10:39 +00:00
Martin Kiewitz 5abe6c8054 SCI/newgui: Cleanup
svn-id: r45478
2009-10-28 18:59:11 +00:00
Filippos Karapetis fbbd0b1575 Fixed the rectangle top inside kBaseSetter()
svn-id: r45466
2009-10-28 14:45:26 +00:00
Filippos Karapetis 0851b00d4f Cleanup
svn-id: r45465
2009-10-28 14:35:47 +00:00
Filippos Karapetis 6ac2680e82 Oops, removed leftover code (z was taken into account after all, but in a different place...)
svn-id: r45464
2009-10-28 14:25:39 +00:00
Filippos Karapetis 394fc76719 Rewrote kBaseSetter() to use new graphics functions and behave like the original, and fixed a bug in the process (the previous code ignored z when calculating the height)
svn-id: r45463
2009-10-28 14:23:23 +00:00
Filippos Karapetis 0b83a8eec0 Reimplemented isItSkip() using new graphics code
svn-id: r45461
2009-10-28 13:43:09 +00:00
Filippos Karapetis 04ab6bc9fc Enclose all of the old graphics code within the INCLUDE_OLDGFX safeguard (defined in sci.h)
svn-id: r45459
2009-10-28 13:20:30 +00:00
Filippos Karapetis b5feeb60b6 Moved the cel count calculation to the new graphics code
svn-id: r45379
2009-10-25 22:33:08 +00:00
Martin Kiewitz f0fc4810fd SCI: kAddToPic - removing support for argc==0 case, if this really gets used somewhere, we need to set _picNotValid in that case
svn-id: r45372
2009-10-25 18:43:23 +00:00
Martin Kiewitz 701caea8d7 SCI: kAddToPic - abort when list is null reference (fixes qfg1 saved game loading on some screens)
svn-id: r45351
2009-10-23 20:41:59 +00:00
Martin Kiewitz 9c9181eed6 SCI: speed throttler moved to kGameIsRestarting for all games. Also made the delay shorter. sq3 now seems to work fine, kq1 also has animations and lsl5 mud wrestling is also working correctly.
svn-id: r45345
2009-10-23 11:25:48 +00:00
Martin Kiewitz 12cdcea516 SCI: kAnimate disable throttler for SCI0 and SCI01 games cause of issues in at least kq1. temporary solution only!
svn-id: r45341
2009-10-22 21:19:03 +00:00
Filippos Karapetis 42068f5853 Cleanup
svn-id: r45337
2009-10-22 15:12:54 +00:00
Filippos Karapetis 1f4ad52c61 Moved the view loop counting code in the new GUI
svn-id: r45322
2009-10-22 05:41:50 +00:00
Filippos Karapetis b105d690e3 - Removed kShow() and the related code it uses - it's a debugging function, and we have the same functionality in the debug console
- Merged the view signal flags from kernel.h and gui_animate.h, and named them appropriately. Also, updated the notes next to them, cause some were incorrectly marked as not used in our engine
- Added a note about a hack used in the old GUI in the view signal flags
- Moved the control state flags inside gui_helpers.h

svn-id: r45310
2009-10-21 19:19:03 +00:00
Martin Kiewitz f2c6950983 SCI: kPalVary - pause
svn-id: r45292
2009-10-20 20:57:08 +00:00
Martin Kiewitz 35071a25b4 SCI: kPalVary basic
svn-id: r45287
2009-10-20 19:56:37 +00:00