aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-09-03SCI32: Fix load from launcher for LighthouseColin Snover
Launcher loads of games without a saved Robot were fine, but games that were saved with a Robot (e.g. room 480 when facing the water) would crash.
2017-09-03SCI32: Fix closing a Robot when its Plane has been destroyed alreadyColin Snover
This can happen during game restores in at least Lighthouse, which has a Robot on the menu screen whose plane is deleted prior to a call to kRestoreGame32 (which closes the Robot).
2017-09-03SCI32: Make audio resource size mismatch non-fatalColin Snover
Lighthouse audio.225 in RESSCI.002 (US English 1.0C) triggers this condition; the audio resource says its data is one byte larger than the recorded size in the volume. In this case, just use the smaller of the two values for the size, to avoid overreads.
2017-09-03SCI32: Fix Lighthouse GUIOsColin Snover
2017-09-03SCI32: Correct LSL7 demo GUIOsColin Snover
2017-09-03SCI32: Add standard SRDialog patches to LighthouseColin Snover
2017-09-03SCI32: Fix crash after credits in LighthouseColin Snover
2017-09-03SCI32: Clip videos to the screenColin Snover
This is needed for 8.VMD in Lighthouse (room 380, the credits room), which is rendered partially off the bottom of the screen. OSystem does not accept rects that are offscreen. Technically this video probably should not have been doubled vertically by game scripts, but there is not enough space to fix the rendering with a regular script patch, and it is a very unimportant video.
2017-09-03SCI32: Implement kCelLinkColin Snover
kCelLink exists in SSCI since 2.1mid, but it is only known to be used in Lighthouse, during the weapon creation puzzle near the end of the game.
2017-09-03SDL: Fix unsafe sprintf usageColin Snover
Translation strings come from external data sources and can cause a stack buffer overflow here just by accidentally (or maliciously) being too long.
2017-09-03TITANIC: Fix Doorbot doubletake in the prologuePaul Gilbert
2017-09-03VIDEO: Simplify AVIDecoder reverse playback special handlingPaul Gilbert
2017-09-03VIDEO: Fix reverse playback in AVIDecoderPaul Gilbert
2017-09-03RISCOS: Use double quotes in sed commandCameron Cawley
2017-09-03RISCOS: Automatically calculate the correct WimpSlot sizeCameron Cawley
2017-09-03RISCOS: Use armv3m as the target architecture instead of armv4Cameron Cawley
2017-09-03RISCOS: Use shorter filenames for config and log filesCameron Cawley
2017-09-03RISCOS: Check for GCCSDK_INSTALL_ENVCameron Cawley
2017-09-03RISCOS: Correctly set executable extensionCameron Cawley
2017-09-03RISCOS: Add networking files to applicationCameron Cawley
2017-09-03RISCOS: Add RISC OS supportcameron
2017-09-02TITANIC: Minor cleanup and warning fixes to star controlPaul Gilbert
2017-09-02Merge pull request #1005 from dafioram/DVectorDAffineDestructionPaul Gilbert
TITANIC: DVectorDAffineDestruction
2017-09-02TITANIC: Fix star3 locking overshoot, #9961David Fioramonti
I fixed this previously for star2, I thought the overshoot for star3 locking might have also been fixed since I hadn't observed it in a while. I applied the same workaround by setting the old position to be the new position.
2017-09-02CREDITS: Add TitanicBastien Bouclet
2017-09-02CREDITS: Add section for Titanic enginePaul Gilbert
2017-09-02TITANIC: Added/Removed comments for new functions in FVector and FPoseDavid Fioramonti
2017-09-02TITANIC: Move Matrix4Inv out of starcamera and into FPose functionDavid Fioramonti
2017-09-02TITANIC: Remove DVector and DAffine files from build and folderDavid Fioramonti
2017-09-02TITANIC: Swap DAffine for FPose in Orientation and TransformsDavid Fioramonti
More swapping of functions in the Orientation and Transform classes.
2017-09-02TITANIC: Swap DAffine usage for FPose in setViewportAngleDavid Fioramonti
2017-09-02TITANIC: Replace DAffine with FPose in Transform and Orientation classesDavid Fioramonti
2017-09-02TITANIC: Duplicate DAffine usage in lockMarker2 with FPose usageDavid Fioramonti
2017-09-02TITANIC: Templatize matrix_invDavid Fioramonti
This allows DAffine and FPose to use a double version and a float version of matrix4Inv.
2017-09-01Merge pull request #1004 from dafioram/fix10170Paul Gilbert
TITANIC: Don't allow unlocking stars while locking onto a star
2017-09-01TITANIC: Added DAffine functions that combines several vector operationsDavid Fioramonti
2017-09-01JANITORIAL: Fix whitespacesEugene Sandulenko
2017-09-01COMPOSER: Added detection for German Baba Yaga from bug #10171Eugene Sandulenko
2017-09-01TITANIC: Replace all external uses of DVector with FVectorDavid Fioramonti
Wherever DVector was used outside of DAffine and CMatrixTransform I replaced with FVectors. So Internally those functions are still using DVectors. This required adding some new functions to FVector that duplicated functionality in DVector.
2017-08-31TITANIC: Don't allow unlocking stars while locking onto a starDavid Fioramonti
Fixes #10170. I've added a boolean variable that tracks whether the game is in the process of locking onto a star or not. When the user hits the unlock button _isInLockingProcess gets checked and the request to unlock is denied if the locking on is currently happening. Once the locking on is finished then the release is lifted and the user can unlock at this time (or after locking onto the next star).
2017-08-31TITANIC: Minor syntactic fixes for Star Control classesPaul Gilbert
2017-08-31Merge pull request #1003 from dafioram/fix9961Paul Gilbert
TITANIC: Star_Control cleanup and Fix bug #9961
2017-08-31TITANIC: Fix star lock2/lock3 overshoot, fixes #9961David Fioramonti
The problem was that the camera when locking onto the 2nd star was starting at a bad spot and then overshooting when it moved to do the locking movements. A solution I picked is just to start at the final spot. I also removed the check that the distance the mover had to move was too large since the bug is now avoided.
2017-08-31TITANIC: Star Camera lockMarker2 refactorDavid Fioramonti
Named many variables in the lockMarker2 functions.
2017-08-31TITANIC: Add 4x4 inverse to Daffine and use itDavid Fioramonti
Very important for StarCamera:lockMarker2 is an inverse of the difference between locked star1 and about to be star2. Before it was calculating the col4 values by doing a new col4 = -inv(R)*col4. col4 represents the x,y,z position of the vector. This calculation is not correct in the most general sense and is only valid for a single rotation and translation. For any more than one rotation and translation the upper left 3x3 inverse is still the transpose of the previous 3x3 portion there since that is just the rotation part, but the translation part is now R2T1 + T2, which can't be undone by simply multiplying by the inverse of R2. This gets more complicated for lots of rotations so I've added a general 4x4 inverse calculation and just pulled of the column 4 values. The inverse implementation I used was from the mesa 3d library and that has an MIT license so its okay to use in GPL.
2017-08-30TITANIC: Renamed a dvector funcDavid Fioramonti
More correct function naming then before.
2017-08-30TITANIC: StarCamera separate function for calculating angleDavid Fioramonti
This makes lockMarker2 more manageable.
2017-08-30TITANIC: StarCamera workDavid Fioramonti
2017-08-30TITANIC: AutoMover and related refactoringDavid Fioramonti
2017-08-30TITANIC: CCameraMover and related classes RefactorDavid Fioramonti
1. Removed updatePosition function defintions since UnmarkedCameraMover and MarkedCameraMover, derived classes, are overriddening it. I.e., CCameraMover::updatePosition doesn't get used. This also allowed some header files to removed. 2. Renaming of some functions.