diff options
author | Filippos Karapetis | 2009-06-07 16:50:34 +0000 |
---|---|---|
committer | Filippos Karapetis | 2009-06-07 16:50:34 +0000 |
commit | 3b687a7a04b08ab2c88b85fc265397f895b6ea6e (patch) | |
tree | 20638268c1b2be6cd468927e36d427ca2f00984b /engines/sci/engine/kmath.cpp | |
parent | 36cdd09223aeb0b1839635e55e42131fc6834b3e (diff) | |
download | scummvm-rg350-3b687a7a04b08ab2c88b85fc265397f895b6ea6e.tar.gz scummvm-rg350-3b687a7a04b08ab2c88b85fc265397f895b6ea6e.tar.bz2 scummvm-rg350-3b687a7a04b08ab2c88b85fc265397f895b6ea6e.zip |
Replaced KP_ALT, SKPV_OR_ALT and UKPV_OR_ALT
svn-id: r41340
Diffstat (limited to 'engines/sci/engine/kmath.cpp')
-rw-r--r-- | engines/sci/engine/kmath.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/engines/sci/engine/kmath.cpp b/engines/sci/engine/kmath.cpp index 1cdf84c3d0..e4c314c605 100644 --- a/engines/sci/engine/kmath.cpp +++ b/engines/sci/engine/kmath.cpp @@ -101,9 +101,11 @@ reg_t kGetAngle(EngineState *s, int funct_nr, int argc, reg_t *argv) { } reg_t kGetDistance(EngineState *s, int funct_nr, int argc, reg_t *argv) { - int xrel = (int)(((float) argv[1].toSint16() - SKPV_OR_ALT(3, 0)) / cos(SKPV_OR_ALT(5, 0) * PI / 180.0)); // This works because cos(0)==1 - int yrel = argv[0].toSint16() - SKPV_OR_ALT(2, 0); - + int xdiff = (argc > 3) ? argv[3].toSint16() : 0; + int ydiff = (argc > 2) ? argv[2].toSint16() : 0; + int angle = (argc > 5) ? argv[5].toSint16() : 0; + int xrel = (int)(((float) argv[1].toSint16() - xdiff) / cos(angle * PI / 180.0)); // This works because cos(0)==1 + int yrel = argv[0].toSint16() - ydiff; return make_reg(0, (int16)sqrt((float) xrel*xrel + yrel*yrel)); } @@ -147,7 +149,7 @@ reg_t kSinDiv(EngineState *s, int funct_nr, int argc, reg_t *argv) { reg_t kTimesTan(EngineState *s, int funct_nr, int argc, reg_t *argv) { int param = argv[0].toSint16(); - int scale = SKPV_OR_ALT(1, 1); + int scale = (argc > 1) ? argv[1].toSint16() : 1; param -= 90; if ((param % 90) == 0) { @@ -159,7 +161,7 @@ reg_t kTimesTan(EngineState *s, int funct_nr, int argc, reg_t *argv) { reg_t kTimesCot(EngineState *s, int funct_nr, int argc, reg_t *argv) { int param = argv[0].toSint16(); - int scale = SKPV_OR_ALT(1, 1); + int scale = (argc > 1) ? argv[1].toSint16() : 1; if ((param % 90) == 0) { warning("Attempted tan(pi/2)"); |