From 219f4f6695af35d139b32a3daf5371e19d70c71c Mon Sep 17 00:00:00 2001 From: uruk Date: Mon, 2 Jun 2014 13:43:28 +0200 Subject: CGE2: Implement Hero::setCurrent(). --- engines/cge2/hero.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/engines/cge2/hero.cpp b/engines/cge2/hero.cpp index 0c28d4c7f0..5a6e437824 100644 --- a/engines/cge2/hero.cpp +++ b/engines/cge2/hero.cpp @@ -209,7 +209,16 @@ Sprite *Hero::expand(void) { // It's very similar to Sprite's expand, but doesn' } void Hero::setCurrent(void) { - warning("STUB: Hero::setCurrent()"); + double m = _vm->_eye->_z / (_pos3D._z - _vm->_eye->_z); + int h = -(V2D::trunc(m * _siz.y)); + + int i = 0; + for (; i < kDimMax; i++) { + if (h >= (_hig[i] + _hig[i + 1]) / 2) + break; + } + + _ext->_shpList = &_dim[_curDim = i]; } void Hero::hStep(void) { -- cgit v1.2.3