[Scummvm-git-logs] scummvm master -> 62e7ab61b9abcb7a00762ea04ca43d78e82748c1
neuromancer
noreply at scummvm.org
Tue Nov 22 19:38:30 UTC 2022
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:
28c51e2aa2 FREESCAPE: correct shot direction when using shootMode
317c388a38 FREESCAPE: correctly place mouse pointer in demo mode
62e7ab61b9 FREESCAPE: implement missing keys in demo mode for driller releses of amiga/atari
Commit: 28c51e2aa2d00aed5cfd041fac2baebd55e5a0bb
https://github.com/scummvm/scummvm/commit/28c51e2aa2d00aed5cfd041fac2baebd55e5a0bb
Author: neuromancer (gustavo.grieco at gmail.com)
Date: 2022-11-22T20:39:29+01:00
Commit Message:
FREESCAPE: correct shot direction when using shootMode
Changed paths:
engines/freescape/movement.cpp
diff --git a/engines/freescape/movement.cpp b/engines/freescape/movement.cpp
index b045203ef44..cebe125d797 100644
--- a/engines/freescape/movement.cpp
+++ b/engines/freescape/movement.cpp
@@ -71,8 +71,10 @@ void FreescapeEngine::shoot() {
Common::Point center(_viewArea.left + _viewArea.width() / 2, _viewArea.top + _viewArea.height() / 2);
float xoffset = _crossairPosition.x - center.x;
float yoffset = _crossairPosition.y - center.y;
+ xoffset = xoffset * 0.33;
+ yoffset = yoffset * 0.50;
- Math::Vector3d direction = directionToVector(_pitch + yoffset, _yaw - xoffset);
+ Math::Vector3d direction = directionToVector(_pitch - yoffset, _yaw - xoffset);
Math::Ray ray(_position, direction);
Object *shot = _currentArea->shootRay(ray);
if (shot) {
Commit: 317c388a389540b05574be210b625e57c1e69906
https://github.com/scummvm/scummvm/commit/317c388a389540b05574be210b625e57c1e69906
Author: neuromancer (gustavo.grieco at gmail.com)
Date: 2022-11-22T20:39:29+01:00
Commit Message:
FREESCAPE: correctly place mouse pointer in demo mode
Changed paths:
engines/freescape/freescape.cpp
engines/freescape/keyboard.cpp
diff --git a/engines/freescape/freescape.cpp b/engines/freescape/freescape.cpp
index 8f58a3207c2..e07af023d38 100644
--- a/engines/freescape/freescape.cpp
+++ b/engines/freescape/freescape.cpp
@@ -211,6 +211,7 @@ void FreescapeEngine::drawCrossair(Graphics::Surface *surface) {
void FreescapeEngine::centerCrossair() {
_crossairPosition.x = _viewArea.left + _viewArea.width() / 2;
_crossairPosition.y = _viewArea.top + _viewArea.height() / 2;
+ _currentDemoMousePosition = _crossairPosition;
}
void FreescapeEngine::checkSensors() {
diff --git a/engines/freescape/keyboard.cpp b/engines/freescape/keyboard.cpp
index 985ec7fec90..04817a9cc3d 100644
--- a/engines/freescape/keyboard.cpp
+++ b/engines/freescape/keyboard.cpp
@@ -29,19 +29,20 @@ Common::Event FreescapeEngine::decodeDOSMouseEvent(int index, int repetition) {
event.customType = 0xde00;
switch(index) {
case 0x16:
+ assert(repetition == 1);
event.type = Common::EVENT_LBUTTONDOWN;
break;
case 0x17:
- _currentDemoMousePosition.x -= repetition;
+ _currentDemoMousePosition.x += repetition;
break;
case 0x18:
- _currentDemoMousePosition.x += repetition;
+ _currentDemoMousePosition.x -= repetition;
break;
case 0x19:
- _currentDemoMousePosition.y -= repetition;
+ _currentDemoMousePosition.y += repetition;
break;
case 0x1a:
- _currentDemoMousePosition.y += repetition;
+ _currentDemoMousePosition.y -= repetition;
break;
default:
error("Unreachable");
Commit: 62e7ab61b9abcb7a00762ea04ca43d78e82748c1
https://github.com/scummvm/scummvm/commit/62e7ab61b9abcb7a00762ea04ca43d78e82748c1
Author: neuromancer (gustavo.grieco at gmail.com)
Date: 2022-11-22T20:39:29+01:00
Commit Message:
FREESCAPE: implement missing keys in demo mode for driller releses of amiga/atari
Changed paths:
engines/freescape/keyboard.cpp
diff --git a/engines/freescape/keyboard.cpp b/engines/freescape/keyboard.cpp
index 04817a9cc3d..4ef5652cc3f 100644
--- a/engines/freescape/keyboard.cpp
+++ b/engines/freescape/keyboard.cpp
@@ -53,22 +53,38 @@ Common::Event FreescapeEngine::decodeDOSMouseEvent(int index, int repetition) {
int FreescapeEngine::decodeAmigaAtariKey(int index) {
switch (index) {
+ case 0x41:
+ return Common::KEYCODE_a;
case 0x44:
return Common::KEYCODE_d;
+ case 0x46:
+ return Common::KEYCODE_f;
case 0x4c:
return Common::KEYCODE_l;
+ case 0x4e:
+ return Common::KEYCODE_n;
case 0x50:
return Common::KEYCODE_p;
+ case 0x52:
+ return Common::KEYCODE_r;
+ case 0x53:
+ return Common::KEYCODE_s;
case 0x55:
return Common::KEYCODE_u;
+ case 0x58:
+ return Common::KEYCODE_x;
+ case 0x5a:
+ return Common::KEYCODE_z;
+ case 0x5f:
+ return Common::KEYCODE_UNDERSCORE;
case 0x96:
return Common::KEYCODE_UP;
case 0x97:
return Common::KEYCODE_DOWN;
case 0x98:
- return Common::KEYCODE_w;
+ return Common::KEYCODE_w; // Right
case 0x99:
- return Common::KEYCODE_q;
+ return Common::KEYCODE_q; // Left
default:
error("Invalid key index: %x", index);
}
More information about the Scummvm-git-logs
mailing list