[Scummvm-git-logs] scummvm master -> 397a377b8bda238a0b7b62117c07d058feeadf6e
mgerhardy
martin.gerhardy at gmail.com
Thu Dec 17 12:51:13 UTC 2020
This automated email contains information about 3 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
e52d5bf41e TWINE: reduced cyclic complexity of centerScreenOnActor
ed1f4e758b TWINE: enable ui keymap after credits sequence was shown
397a377b8b TWINE: fixed parsing color value for sphere data
Commit: e52d5bf41ecf0faa909ac375a8c377a349993376
https://github.com/scummvm/scummvm/commit/e52d5bf41ecf0faa909ac375a8c377a349993376
Author: Martin Gerhardy (martin.gerhardy at gmail.com)
Date: 2020-12-17T12:29:18+01:00
Commit Message:
TWINE: reduced cyclic complexity of centerScreenOnActor
Changed paths:
engines/twine/twine.cpp
diff --git a/engines/twine/twine.cpp b/engines/twine/twine.cpp
index a5ac037e0a..b172fb1f52 100644
--- a/engines/twine/twine.cpp
+++ b/engines/twine/twine.cpp
@@ -605,26 +605,31 @@ void TwinEEngine::processOptionsMenu() {
}
void TwinEEngine::centerScreenOnActor() {
- if (!disableScreenRecenter && !_debugGrid->useFreeCamera) {
- ActorStruct *actor = _scene->getActor(_scene->currentlyFollowedActor);
- _renderer->projectPositionOnScreen(actor->x - (_grid->newCameraX << 9),
- actor->y - (_grid->newCameraY << 8),
- actor->z - (_grid->newCameraZ << 9));
- if (_renderer->projPosX < 80 || _renderer->projPosX >= SCREEN_WIDTH - 60 || _renderer->projPosY < 80 || _renderer->projPosY >= SCREEN_HEIGHT - 50) {
- _grid->newCameraX = ((actor->x + 0x100) >> 9) + (((actor->x + 0x100) >> 9) - _grid->newCameraX) / 2;
- _grid->newCameraY = actor->y >> 8;
- _grid->newCameraZ = ((actor->z + 0x100) >> 9) + (((actor->z + 0x100) >> 9) - _grid->newCameraZ) / 2;
-
- if (_grid->newCameraX >= GRID_SIZE_X) {
- _grid->newCameraX = GRID_SIZE_X - 1;
- }
+ if (disableScreenRecenter) {
+ return;
+ }
+ if (_debugGrid->useFreeCamera) {
+ return;
+ }
- if (_grid->newCameraZ >= GRID_SIZE_Z) {
- _grid->newCameraZ = GRID_SIZE_Z - 1;
- }
+ ActorStruct *actor = _scene->getActor(_scene->currentlyFollowedActor);
+ _renderer->projectPositionOnScreen(actor->x - (_grid->newCameraX << 9),
+ actor->y - (_grid->newCameraY << 8),
+ actor->z - (_grid->newCameraZ << 9));
+ if (_renderer->projPosX < 80 || _renderer->projPosX >= SCREEN_WIDTH - 60 || _renderer->projPosY < 80 || _renderer->projPosY >= SCREEN_HEIGHT - 50) {
+ _grid->newCameraX = ((actor->x + 0x100) >> 9) + (((actor->x + 0x100) >> 9) - _grid->newCameraX) / 2;
+ _grid->newCameraY = actor->y >> 8;
+ _grid->newCameraZ = ((actor->z + 0x100) >> 9) + (((actor->z + 0x100) >> 9) - _grid->newCameraZ) / 2;
+
+ if (_grid->newCameraX >= GRID_SIZE_X) {
+ _grid->newCameraX = GRID_SIZE_X - 1;
+ }
- _redraw->reqBgRedraw = true;
+ if (_grid->newCameraZ >= GRID_SIZE_Z) {
+ _grid->newCameraZ = GRID_SIZE_Z - 1;
}
+
+ _redraw->reqBgRedraw = true;
}
}
Commit: ed1f4e758b282c57435c4dd9bb6a1d500078c239
https://github.com/scummvm/scummvm/commit/ed1f4e758b282c57435c4dd9bb6a1d500078c239
Author: Martin Gerhardy (martin.gerhardy at gmail.com)
Date: 2020-12-17T13:17:50+01:00
Commit Message:
TWINE: enable ui keymap after credits sequence was shown
Changed paths:
engines/twine/menuoptions.cpp
diff --git a/engines/twine/menuoptions.cpp b/engines/twine/menuoptions.cpp
index 5061581941..1ea2956901 100644
--- a/engines/twine/menuoptions.cpp
+++ b/engines/twine/menuoptions.cpp
@@ -111,6 +111,8 @@ void MenuOptions::showCredits() {
_engine->_screens->clearScreen();
_engine->flip();
+
+ _engine->_input->enableKeyMap(uiKeyMapId);
}
void MenuOptions::showEndSequence() {
Commit: 397a377b8bda238a0b7b62117c07d058feeadf6e
https://github.com/scummvm/scummvm/commit/397a377b8bda238a0b7b62117c07d058feeadf6e
Author: Martin Gerhardy (martin.gerhardy at gmail.com)
Date: 2020-12-17T13:50:53+01:00
Commit Message:
TWINE: fixed parsing color value for sphere data
Changed paths:
engines/twine/renderer.cpp
diff --git a/engines/twine/renderer.cpp b/engines/twine/renderer.cpp
index aa1249666c..28578f7aa3 100644
--- a/engines/twine/renderer.cpp
+++ b/engines/twine/renderer.cpp
@@ -1011,9 +1011,8 @@ uint8 *Renderer::prepareSpheres(Common::MemoryReadStream &stream, int32 &numOfPr
numOfPrimitives += numSpheres;
do {
CmdRenderSphere *sphere = (CmdRenderSphere *)renderBufferPtr;
- stream.skip(1);
- sphere->colorIndex = stream.readByte();
stream.skip(2);
+ sphere->colorIndex = stream.readUint16LE();
sphere->radius = stream.readUint16LE();
const int16 centerOffset = stream.readUint16LE();
const int16 centerIndex = centerOffset / 6;
@@ -1216,10 +1215,10 @@ int32 Renderer::renderModelElements(int32 numOfPrimitives, uint8 *ptr, RenderCom
CmdRenderSphere *sphere = (CmdRenderSphere *)pointer;
int32 radius = sphere->radius;
- if (!isUsingOrhoProjection) {
- radius = (radius * cameraPosY) / (cameraPosX + *(const int16 *)pointer); // TODO: this does not make sense.
- } else {
+ if (isUsingOrhoProjection) {
radius = (radius * 34) >> 9;
+ } else {
+ radius = (radius * cameraPosY) / (cameraPosX + *(const int16 *)pointer); // TODO: this does not make sense.
}
radius += 3;
More information about the Scummvm-git-logs
mailing list