12 #include "../stdafx.h"
14 #include "../engine_base.h"
15 #include "../string_func.h"
18 #include "../safeguards.h"
20 static const SaveLoad _engine_desc[] = {
51 static std::vector<Engine*> _temp_engine;
60 uint8 *zero = CallocT<uint8>(
sizeof(
Engine));
79 if (index < _temp_engine.size()) {
80 return _temp_engine[index];
81 }
else if (index == _temp_engine.size()) {
83 return _temp_engine[index];
89 static void Save_ENGN()
93 SlSetArrayIndex(e->
index);
98 static void Load_ENGN()
105 Engine *e = GetTempDataEngine(index);
125 if (e->
index >= _temp_engine.size())
break;
148 for (std::vector<Engine*>::iterator it = _temp_engine.begin(); it != _temp_engine.end(); ++it) {
151 _temp_engine.clear();
154 static void Load_ENGS()
164 Engine *e = GetTempDataEngine(engine);
178 static void Save_EIDS()
183 SlSetArrayIndex(index);
184 SlObject(eid, _engine_id_mapping_desc);
188 static void Load_EIDS()
190 _engine_mngr.
Clear();
194 SlObject(eid, _engine_id_mapping_desc);
199 {
'EIDS', Save_EIDS, Load_EIDS, NULL, NULL, CH_ARRAY },
200 {
'ENGN', Save_ENGN, Load_ENGN, NULL, NULL, CH_ARRAY },
201 {
'ENGS', NULL, Load_ENGS, NULL, NULL, CH_RIFF |
CH_LAST },