Cleanup of Zone/Animation removal code. Only the good god of void pointers knows how it managed to work until now.

svn-id: r26430
This commit is contained in:
Nicola Mettifogo 2007-04-09 11:07:38 +00:00
parent 41a5f70d72
commit cfcf281b86
5 changed files with 9 additions and 33 deletions

View file

@ -81,14 +81,14 @@ void Parallaction::doLoadGame(uint16 slot) {
f->readLine(s, 15);
// TODO (LIST): the very same code can be found in _c_finito().
// Why aren't we clearing Animations too, anyway?
// TODO (LIST): unify (and parametrize) calls to freeZones.
// We aren't calling freeAnimations because it is not needed, since
// kChangeLocation will trigger a complete deletion. Anyway, we still
// need to invoke freeZones here with kEngineQuit set, because the
// call in changeLocation preserve certain zones.
_engineFlags |= kEngineQuit;
freeZones(_zones._next);
freeNodeList(_zones._next);
_zones._next = NULL;
_engineFlags &= ~kEngineQuit;
_numLocations = atoi(s);