Strangerke
f4a7bf910d
TRECISION: rename some comments in Sound, rework a bit soundtimer
2021-05-29 21:24:24 +01:00
Strangerke
299551b0fd
TRECISION: Use Common::Point in several places instead of 2 int16
2021-05-29 21:24:24 +01:00
Strangerke
3bc1ec607d
TRECISION: get rid of sysdef.h
2021-05-29 21:24:24 +01:00
Filippos Karapetis
dbe1fddb0e
TRECISION: Move _screenBuffer and change it to a Graphics::Surface
2021-05-29 21:24:24 +01:00
Filippos Karapetis
a65cca4c7e
TRECISION: Draw the first animation frame fully
...
Fixes some of the animation glitches
2021-05-29 21:24:24 +01:00
SupSuper
24e9483cc4
TRECISION: Yet another fix to seeking dialog videos
2021-05-29 21:24:23 +01:00
SupSuper
6e042dba1b
VIDEO: Allow setting _lastTimeChange in overridden classes
2021-05-29 21:24:23 +01:00
Filippos Karapetis
f597204547
TRECISION: Simplify and fix sortTable initialization
2021-05-29 21:24:23 +01:00
Filippos Karapetis
9052efb497
TRECISION: Simplify alt room initialization
2021-05-29 21:24:23 +01:00
Filippos Karapetis
450ae98a19
TRECISION: Split control panel initialization
2021-05-29 21:24:22 +01:00
Filippos Karapetis
e1e3ea3bd1
TRECISION: Move isCloseupOrControlRoom() to LogicManager
2021-05-29 21:24:22 +01:00
Strangerke
17373849d1
TRECISION: Remove text.text.cpp
2021-05-29 21:24:22 +01:00
Strangerke
4c54b6ea46
TRECISION: Move 3 variables out of globvar, remove globvar.cpp, process.cpp and extern.h
2021-05-29 21:24:22 +01:00
Filippos Karapetis
a263e7aa11
TRECISION: Group the exit mouse handling code
2021-05-29 21:24:22 +01:00
Filippos Karapetis
492712d699
TRECISION: Refactor the visual references code
...
The dirty rect code already checks for intersecting rects, so this code
is redundant. Also, the way it was changed, it produced clipping bugs
in cases like climbing up/down staircases, which are now gone.
Also, this allows to change the _sortTable into a list.
Finally, the room object index is now calculated when the object's
dirty rect is added, which simplifies the room object index code.
2021-05-29 21:24:21 +01:00
Filippos Karapetis
d1c8992780
TRECISION: Rename _index to _objectId, remove _curFrame
2021-05-29 21:24:21 +01:00
Filippos Karapetis
11ec5214dd
TRECISION: Refactor sortTable as a Common::Array
2021-05-29 21:24:21 +01:00
Filippos Karapetis
303ece965e
TRECISION: Refactor object visibility
...
- Added methods to toggle and query object visibility
- Added methods to update object animations
- All dirty rect handling is done inside setObjectVisible()
- The above allows the complete removal of the associated object
visibility methods and variables (RegenRoom(), PaintRegenRoom(),
VideoObjStatus, OldObjStatus
- Object dirty rects are now set once when the room changes in
InitRegenRoom(), and are updated when any call to change object
visibility is made to setObjectVisible()
2021-05-29 21:24:21 +01:00
Filippos Karapetis
6b33fe9eac
TRECISION: Init _pathFind and _renderer
2021-05-29 21:24:20 +01:00
Filippos Karapetis
08f471fabe
TRECISION: Remove the unused actor y coordinates
2021-05-29 21:24:20 +01:00
Strangerke
3e1d8219cd
TRECISION: Reduce redirectionsin goToPosition, pointOut and viewPanel
2021-05-29 21:24:20 +01:00
Strangerke
8286d47ca9
TRECISION: Reduce the number of redirections in nextStep, remove g_vm in 3D.cpp
2021-05-29 21:24:20 +01:00
Strangerke
a0484e8abd
TRECISION: Remove some dead code in buildFramelist
2021-05-29 21:24:20 +01:00
Strangerke
54f94a74ec
TRECISION: move distance functions to utils, some comment renaming
2021-05-29 21:24:19 +01:00
Strangerke
adf880c1be
TRECISION: Remove 3dact.cpp
2021-05-29 21:24:19 +01:00
Strangerke
85fa769d35
TRECISION: Move some global code to a new class PathFinding3D (WIP)
2021-05-29 21:24:19 +01:00
Filippos Karapetis
2b8d915547
TRECISION: Document all dialogs / cutscenes
2021-05-29 21:24:19 +01:00
Filippos Karapetis
891d522877
TRECISION: Split the playDialog() calls out of endChangeRoom()
2021-05-29 21:24:19 +01:00
Strangerke
afcc3a724e
TRECISION: Make some functions private in Renderer3D
2021-05-29 21:24:18 +01:00
Strangerke
4eeb08e89a
TRECISION: Stop returning a dummy value in read3D
2021-05-29 21:24:18 +01:00
Strangerke
3094e4ba68
TRECISION: Move 3Drend into a renderer class
2021-05-29 21:24:18 +01:00
Strangerke
982c0d1444
TRECISION: Reduce the number of redirections in 3Drend
2021-05-29 21:24:18 +01:00
Strangerke
e8dc735181
TRECISION: Move the camera and light loading code to Actor, some polishing
2021-05-29 21:24:17 +01:00
Strangerke
29e4d40ca3
TRECISION: Rename readActor into readModel, make some more variable unsigned
2021-05-29 21:24:17 +01:00
Strangerke
c6f05ae53b
TRECISION: Move two functions to Actor, fix some warnings by using some unsigned variables and parameters
2021-05-29 21:24:17 +01:00
Filippos Karapetis
273b88f8d1
TRECISION: Remove initNames() and its hardcoded texts
...
_objName, _sentence and _sysText are fully initialized in LoadAll().
These variables are not used before LoadAll() is called, so this is
safe to remove
2021-05-29 21:24:17 +01:00
Filippos Karapetis
a4737f7141
TRECISION: Remove more unused animation definitions
2021-05-29 21:24:17 +01:00
Filippos Karapetis
038346ded1
TRECISION: Rename some animations and remove some unused ones
2021-05-29 21:24:16 +01:00
Filippos Karapetis
61400b8559
TRECISION: Split actions out of endChangeRoom()
2021-05-29 21:24:16 +01:00
Filippos Karapetis
371c99e535
TRECISION: Clean up startSmkAnim()
2021-05-29 21:24:16 +01:00
Strangerke
4cabf0e165
TRECISION: Fix some warnings, some renaming and polishing
2021-05-29 21:24:16 +01:00
Filippos Karapetis
9c4727ee8c
TRECISION: Simplify setVideoRange()
2021-05-29 21:24:16 +01:00
Filippos Karapetis
26796e53cc
TRECISION: Fix several Smacker video issues
...
- The frames in Trecision start from 1, whereas they start from 0 in
ScummVM
- Chop off extra frames in DialogManager::playChoice()
2021-05-29 21:24:15 +01:00
Filippos Karapetis
b858978ec3
TRECISION: Simplify dirty rects code
2021-05-29 21:24:15 +01:00
Filippos Karapetis
a87ba5fdb2
TRECISION: Override endOfVideo() to check for frame numbers
2021-05-29 21:24:15 +01:00
Filippos Karapetis
ba007cfd2b
VIDEO: Allow endOfVideo() to be overriden
...
This is useful for Nightlong, which uses frame count to check for the
end of an animation
2021-05-29 21:24:15 +01:00
Filippos Karapetis
05da94bdea
TRECISION: Check for animation frames in handleEndOfVideo()
...
This fixes the animation in the werewolf room, which kept looping
without returning control back to the player. A regression from
4a8b32b0556ae191a29538a12054da9f549c8244
2021-05-29 21:24:15 +01:00
Filippos Karapetis
3bfb6d0ea4
TRECISION: Simplify doMouseInventory()
2021-05-29 21:24:14 +01:00
Filippos Karapetis
baf34e1fa4
TRECISION: Remove dead code (_flagScreenRefreshed flag)
...
It's set to true in ProcessTime() which is the first function to run
inside the game loop. Afterwards, it's never set to false, so
practically it's always true
2021-05-29 21:24:14 +01:00
Filippos Karapetis
db1afeb733
TRECISION: Remove dead code
...
- FromSomeOneSay is always false
- _flagSkipEnable is always true after someone starts talking and is
never set to false
- _flagSkipEnable is a uint16 and can never equal 99999 (bug from
the original code)
2021-05-29 21:24:14 +01:00