void ScreenHeader::write(byte *addr) { Common::MemoryWriteStream writeS(addr, size()); writeS.writeUint16LE(width); writeS.writeUint16LE(height); writeS.writeUint16LE(noLayers); }
void FrameHeader::write(byte *addr) { Common::MemoryWriteStream writeS(addr, size()); writeS.writeUint32LE(compSize); writeS.writeUint16LE(width); writeS.writeUint16LE(height); }
void PSXFontEntry::write(byte *addr) { Common::MemoryWriteStream writeS(addr, size()); writeS.writeUint16LE(offset); writeS.writeUint16LE(skipLines); writeS.writeUint16LE(charWidth); writeS.writeUint16LE(charHeight); }
void CdtEntry::write(byte *addr) { Common::MemoryWriteStream writeS(addr, size()); writeS.writeUint16LE(x); writeS.writeUint16LE(y); writeS.writeUint32LE(frameOffset); writeS.writeByte(frameType); }
uint32 Sword2Engine::saveGame(uint16 slotNo, const byte *desc) { char description[SAVE_DESCRIPTION_LEN]; uint32 bufferSize = findBufferSize(); byte *saveBuffer = (byte *)malloc(bufferSize); ScreenInfo *screenInfo = _screen->getScreenInfo(); memset(description, 0, sizeof(description)); strncpy(description, (const char *)desc, SAVE_DESCRIPTION_LEN - 1); Common::MemoryWriteStream writeS(saveBuffer, bufferSize); byte *globalVars = _resman->openResource(1); byte *objectHub = _resman->openResource(CUR_PLAYER_ID) + ResHeader::size(); // Script no. 7 - 'george_savedata_request' calls fnPassPlayerSaveData _logic->runResScript(CUR_PLAYER_ID, 7); writeS.writeUint32LE(0); // Checksum writeS.write(description, SAVE_DESCRIPTION_LEN); writeS.writeUint32LE(_resman->fetchLen(1)); writeS.writeUint32LE(screenInfo->background_layer_id); writeS.writeUint32LE(_logic->getRunList()); writeS.writeUint32LE(screenInfo->feet_x); writeS.writeUint32LE(screenInfo->feet_y); writeS.writeUint32LE(_sound->getLoopingMusicId()); writeS.write(objectHub, ObjectHub::size()); writeS.write(_logic->_saveLogic, ObjectLogic::size()); writeS.write(_logic->_saveGraphic, ObjectGraphic::size()); writeS.write(_logic->_saveMega, ObjectMega::size()); writeS.write(globalVars, _resman->fetchLen(1)); WRITE_LE_UINT32(saveBuffer, calcChecksum(saveBuffer + 4, bufferSize - 4)); _resman->closeResource(CUR_PLAYER_ID); _resman->closeResource(1); uint32 errorCode = saveData(slotNo, saveBuffer, bufferSize); free(saveBuffer); if (errorCode != SR_OK) { uint32 textId; switch (errorCode) { case SR_ERR_FILEOPEN: textId = TEXT_SAVE_CANT_OPEN; break; default: textId = TEXT_SAVE_FAILED; break; } _screen->displayMsg(fetchTextLine(_resman->openResource(textId / SIZE), textId & 0xffff) + 2, 0); } return errorCode; }
void ResHeader::write(byte *addr) { Common::MemoryWriteStream writeS(addr, size()); writeS.writeByte(fileType); writeS.writeByte(compType); writeS.writeUint32LE(compSize); writeS.writeUint32LE(decompSize); writeS.write(name, NAME_LEN); }
void ObjectMouse::write(byte *addr) { Common::MemoryWriteStream writeS(addr, size()); writeS.writeSint32LE(x1); writeS.writeSint32LE(y1); writeS.writeSint32LE(x2); writeS.writeSint32LE(y2); writeS.writeSint32LE(priority); writeS.writeSint32LE(pointer); }
void LayerHeader::write(byte *addr) { Common::MemoryWriteStream writeS(addr, size()); writeS.writeUint16LE(x); writeS.writeUint16LE(y); writeS.writeUint16LE(width); writeS.writeUint16LE(height); writeS.writeUint32LE(maskSize); writeS.writeUint32LE(offset); }
void AnimHeader::write(byte *addr) { Common::MemoryWriteStream writeS(addr, size()); writeS.writeByte(runTimeComp); writeS.writeUint16LE(noAnimFrames); writeS.writeUint16LE(feetStartX); writeS.writeUint16LE(feetStartY); writeS.writeByte(feetStartDir); writeS.writeUint16LE(feetEndX); writeS.writeUint16LE(feetEndY); writeS.writeByte(feetEndDir); writeS.writeUint16LE(blend); }
void MultiScreenHeader::write(byte *addr) { Common::MemoryWriteStream writeS(addr, size()); writeS.writeUint32LE(palette); writeS.writeUint32LE(bg_parallax[0]); writeS.writeUint32LE(bg_parallax[1]); writeS.writeUint32LE(screen); writeS.writeUint32LE(fg_parallax[0]); writeS.writeUint32LE(fg_parallax[1]); writeS.writeUint32LE(layers); writeS.writeUint32LE(paletteTable); writeS.writeUint32LE(maskOffset); }
void PSXScreensEntry::write(byte *addr) { Common::MemoryWriteStream writeS(addr, size()); writeS.writeUint16LE(bgPlxXres); writeS.writeUint16LE(bgPlxYres); writeS.writeUint32LE(bgPlxOffset); writeS.writeUint32LE(bgPlxSize); writeS.writeUint16LE(bgXres); writeS.writeUint16LE(bgYres); writeS.writeUint32LE(bgOffset); writeS.writeUint32LE(bgSize); writeS.writeUint16LE(fgPlxXres); writeS.writeUint16LE(fgPlxYres); writeS.writeUint32LE(fgPlxOffset); writeS.writeUint32LE(fgPlxSize); }
bool L2Game_CharacterCreate::create( const L2Game_NewCharacterTemplate *tmpl, const wchar_t *name, int hairStyle, int hairColor, int face, int gender ) { if( !tmpl ) return false; setPacketType( 0x0C ); // CharacterCreate writeS( name ); writeD( tmpl->race ); writeD( gender ); writeD( tmpl->classID ); writeD( tmpl->base_INT ); writeD( tmpl->base_STR ); writeD( tmpl->base_CON ); writeD( tmpl->base_MEN ); writeD( tmpl->base_DEX ); writeD( tmpl->base_WIT ); writeD( hairStyle ); writeD( hairColor ); writeD( face ); return true; }
void ObjectWalkdata::write(byte *addr) { Common::MemoryWriteStream writeS(addr, size()); writeS.writeUint32LE(nWalkFrames); writeS.writeUint32LE(usingStandingTurnFrames); writeS.writeUint32LE(usingWalkingTurnFrames); writeS.writeUint32LE(usingSlowInFrames); writeS.writeUint32LE(usingSlowOutFrames); int i; for (i = 0; i < ARRAYSIZE(nSlowInFrames); i++) writeS.writeUint32LE(nSlowInFrames[i]); for (i = 0; i < ARRAYSIZE(leadingLeg); i++) writeS.writeUint32LE(leadingLeg[i]); for (i = 0; i < ARRAYSIZE(dx); i++) writeS.writeUint32LE(dx[i]); for (i = 0; i < ARRAYSIZE(dy); i++) writeS.writeUint32LE(dy[i]); }
void Parallax::write(byte *addr) { Common::MemoryWriteStream writeS(addr, size()); writeS.writeUint16LE(w); writeS.writeUint16LE(h); }
void TextHeader::write(byte *addr) { Common::MemoryWriteStream writeS(addr, size()); writeS.writeUint32LE(noOfLines); }