diff options
author | Travis Howell | 2006-10-25 05:32:15 +0000 |
---|---|---|
committer | Travis Howell | 2006-10-25 05:32:15 +0000 |
commit | 869243142ad4e42c23c52617414fe737c3eead86 (patch) | |
tree | 0ea16da05bd36c44ed96da9b69ce6262a9f8942f /engines/agos/items.cpp | |
parent | 8b0f34e193f571f10d990efba1a5a8e229bc0957 (diff) | |
download | scummvm-rg350-869243142ad4e42c23c52617414fe737c3eead86.tar.gz scummvm-rg350-869243142ad4e42c23c52617414fe737c3eead86.tar.bz2 scummvm-rg350-869243142ad4e42c23c52617414fe737c3eead86.zip |
Add class code used by scripts in Elvira 1
svn-id: r24491
Diffstat (limited to 'engines/agos/items.cpp')
-rw-r--r-- | engines/agos/items.cpp | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/engines/agos/items.cpp b/engines/agos/items.cpp index 64d8f639de..31574e6dbb 100644 --- a/engines/agos/items.cpp +++ b/engines/agos/items.cpp @@ -385,19 +385,33 @@ Item *AGOSEngine::derefItem(uint item) { Item *AGOSEngine::findInByClass(Item *i, int16 m) { i = derefItem(i->child); - while (i) { if (i->classFlags & m) { - //_findNextPtr = derefItem(i->next); + _findNextPtr = derefItem(i->next); return i; } if (m == 0) { - //_findNextPtr = derefItem(i->next); + _findNextPtr = derefItem(i->next); return i; } i = derefItem(i->next); } + return NULL; +} +Item *AGOSEngine::nextInByClass(Item *i, int16 m) { + i = _findNextPtr; + while(i) { + if (i->classFlags & m) { + _findNextPtr = derefItem(i->next); + return i; + } + if (m == 0) { + _findNextPtr = derefItem(i->next); + return i; + } + i = derefItem(i->next); + } return NULL; } |