aboutsummaryrefslogtreecommitdiff
path: root/scumm/intern.h
diff options
context:
space:
mode:
authorMax Horn2005-04-23 16:52:11 +0000
committerMax Horn2005-04-23 16:52:11 +0000
commit554ecd57cbe1bf396cda807e25bd4ed832850d0c (patch)
tree1721b41a946b7ea85b7826513f16d063ac51f87b /scumm/intern.h
parentb43e1e960fadff6b900329ec96c32121406cb92b (diff)
downloadscummvm-rg350-554ecd57cbe1bf396cda807e25bd4ed832850d0c.tar.gz
scummvm-rg350-554ecd57cbe1bf396cda807e25bd4ed832850d0c.tar.bz2
scummvm-rg350-554ecd57cbe1bf396cda807e25bd4ed832850d0c.zip
Don't use Common::Map for the object table at all; rather use bsearch on a fixed size table.
svn-id: r17777
Diffstat (limited to 'scumm/intern.h')
-rw-r--r--scumm/intern.h14
1 files changed, 8 insertions, 6 deletions
diff --git a/scumm/intern.h b/scumm/intern.h
index f934c6ada0..b6ab82b8f9 100644
--- a/scumm/intern.h
+++ b/scumm/intern.h
@@ -23,8 +23,6 @@
#ifndef INTERN_H
#define INTERN_H
-#include "common/map.h"
-
#include "scumm/scumm.h"
#include "scumm/wiz_he.h"
@@ -1264,12 +1262,16 @@ protected:
const OpcodeEntryV8 *_opcodesV8;
- typedef Common::Map<Common::String, int> ObjectIDMap;
-
- ObjectIDMap _objectIDMap;
+ struct ObjectNameId {
+ char name[40];
+ int id;
+ };
+ int _objectIDMapSize;
+ ObjectNameId *_objectIDMap;
public:
- ScummEngine_v8(GameDetector *detector, OSystem *syst, const ScummGameSettings &gs, uint8 md5sum[16]) : ScummEngine_v7(detector, syst, gs, md5sum) {}
+ ScummEngine_v8(GameDetector *detector, OSystem *syst, const ScummGameSettings &gs, uint8 md5sum[16]);
+ ~ScummEngine_v8();
protected:
virtual void setupOpcodes();