bool LoadDemo(demoSystem& dem, int demo) { char name[256]; sprintf(name,"Data/Demo%i.dem",demo); dem.mKeyBuffer.clear(); CFileIO fIO; if(!fIO.GetFile(name,"rb")) return false; fIO.ReadBinary(&dem.iScrollOffset,1); int bufsize,n; fIO.ReadBinary(&bufsize,1); if(bufsize>0) { for(n=0;n<bufsize;n++) { keyBuffer kb; fIO.ReadBinary(&kb.tick,1); fIO.ReadBinary(&kb.KeyStateChange,1); fIO.ReadBinary(&kb.KeyStates,1); dem.mKeyBuffer.push_back(kb); } } return true; }
void Generator::LoadFromFile(CFileIO &fIO) { fIO.ReadBinary(&iEntType,1); fIO.ReadBinary(&ScrollOffset,1); fIO.ReadBinary(&Pos.x,1); fIO.ReadBinary(&Pos.y,1); fIO.ReadBinary(&numEnts,1); fIO.ReadBinary(&tickDelay,1); if(!(mpEntity = gpEngine->CreateEntity(iEntType))) return; mpEntity->LoadFromFile(fIO); }
void ControlledEntity::ReadBufferFromFile(CFileIO &fIO) { int bufsize,n; fIO.ReadBinary(&bufsize,1); if(bufsize>0) { for(n=0;n<bufsize;n++) { keyBuffer kb; fIO.ReadBinary(&kb.tick,1); fIO.ReadBinary(&kb.KeyStateChange,1); fIO.ReadBinary(&kb.KeyStates,1); mKeyBuffer.push_back(kb); } } }
//================================================================================================// bool Engine::LoadMapData() { char sz[256]; ClearMapArrays(); ClearMapEntities(); CFileIO fIO; sprintf(sz,"Data/Maps/Stage%i.stg",iStage); if(!fIO.GetFile(sz,"rb")) return false; int x,y; //read block data for(x=0;x<400;x++) { for(y=0;y<15;y++) { fIO.ReadBinary(&mTilesLayer1[x][y].ID,1); fIO.ReadBinary(&mTilesLayer1[x][y].properties,1); fIO.ReadBinary(&mTilesLayer2[x][y].ID,1); fIO.ReadBinary(&mTilesLayer2[x][y].properties,1); fIO.ReadBinary(&mTilesLayer3[x][y].ID,1); fIO.ReadBinary(&mTilesLayer3[x][y].properties,1); } } //read entities int numEnt,n; fIO.ReadBinary(&numEnt,1); for(n=0;n<numEnt;n++) { Generator g; g.LoadFromFile(fIO); mGenerators.push_back(g); } fIO.ReadBinary(&numEnt,1); for(n=0;n<numEnt;n++) { AnimGenerator g; g.LoadFromFile(fIO); mAnimGenerators.push_back(g); } return true; }
void TriggerSpeedUp::LoadFromFile(CFileIO &fIO) { fIO.ReadBinary(&iMaxTicks,1); }
void Serpent::LoadFromFile(CFileIO &fIO) { fIO.ReadBinary(&RateofFire,1); fIO.ReadBinary(&bStartDirection,1); ReadBufferFromFile(fIO); }
void FireBug::LoadFromFile(CFileIO &fIO) { fIO.ReadBinary(&RateofFire,1); fIO.ReadBinary(&bStartMovement,1); }
void SuperTurret::LoadFromFile(CFileIO &fIO) { fIO.ReadBinary(&bDirection,1); }
void BreakScenery::LoadFromFile(CFileIO &fIO) { fIO.ReadBinary(&frame,1); fIO.ReadBinary(&iRotation,1); spr = gpEngine->sprBreak1; }