void XmlMapHandler::Save(std::ostream& file, const Map& map) { wxXmlNode* root = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, "Map"); const Tileset& tileset = map.GetTileset(); const std::vector<AnimatedTile>& animated_tiles = tileset.GetAnimatedTiles(); if (map.HasCollisionLayer()) WriteCollision(root, map); for (const auto& tile : animated_tiles) WriteAnimation(root, map, tile); for (const auto& background : map.GetBackgrounds()) WriteBackground(root, map, background); for (const auto& layer : map.GetLayers()) WriteLayer(root, map, layer); WriteProperties(root, map); wxXmlDocument* doc = new wxXmlDocument(); doc->SetRoot(root); wxOutputStream* fos = new wxFOutputStream(file); if (!doc->Save(*fos)) throw "Failed to save XML file"; delete fos; }
int CEQUFile::WriteEQUFile( char* filename, int* motidarray, int motnum, CTreeHandler2* lpth, CShdHandler* lpsh, CMotHandler* lpmh ) { m_lpth = lpth; m_lpsh = lpsh; m_lpmh = lpmh; int ret; ret = MakeJointArray(); if( ret ){ DbgOut( "EQUFile : WriteEQUFile : MakeJointArray error !!!\n" ); _ASSERT( 0 ); return 1; } if( m_jointnum <= 0 ){ _ASSERT( 0 ); return 0; } m_hfile = CreateFile( (LPCTSTR)filename, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_ALWAYS, FILE_FLAG_SEQUENTIAL_SCAN, NULL ); if( m_hfile == INVALID_HANDLE_VALUE ){ DbgOut( "EQUFile : WriteEQUFile : file open error !!!\n" ); _ASSERT( 0 ); return 1; } m_mode = EQUFILE_WRITE; ret = Write2File( 0, equheader ); _ASSERT( !ret ); /////// ret = Write2File( 1, "<AnimNum>%d</AnimNum>\r\n\r\n", motnum ); _ASSERT( !ret ); int motcnt; for( motcnt = 0; motcnt < motnum; motcnt++ ){ int motid = *( motidarray + motcnt ); if( (motid < 0) || (motid >= m_lpmh->m_kindnum) ){ DbgOut( "EQUFile : WriteEQUFile : motid error !!!\n" ); _ASSERT( 0 ); return 1; } ret = WriteAnimation( motid ); if( ret ){ DbgOut( "EQUFile : WriteEQUFile : WriteAnimation error !!!\n" ); _ASSERT( 0 ); return 1; } } /////// ret = Write2File( 0, "</EQU>\r\n" ); _ASSERT( !ret ); return 0; }
// --[ Method ]--------------------------------------------------------------- // // - Class : CHelper // - prototype : bool WriteNodeData(COutput* pOutput) const // // - Purpose : Writes the helper data in a given destiny. // // ----------------------------------------------------------------------------- bool CHelper::WriteNodeData(COutput* pOutput) const { assert(pOutput); assert(pOutput->Ready()); unsigned uError = 0; if(!WriteAnimation(pOutput)) uError++; return uError == 0; }
void DiMotionSerializerImpl::ExportMotion( const DiMotion* pMotion, DiDataStreamPtr stream ) { mStream = stream; WriteFileHeader(); if (pMotion->GetSkeleton()) { WriteSkeleton(pMotion->GetSkeleton()); } DiMotion::ConstAnimationListIterator i = pMotion->GetAnimations(); while (i.HasMoreElements()) { WriteAnimation(i.GetNext()); } }
int CX24977Patcher::WritePreIDPatches(BIOS_Options *BIOSOptions) { ShrinkKernel(); WriteColors(BIOSOptions->XLipHighlightsColor, BIOSOptions->XLipColor, BIOSOptions->XWallColor, BIOSOptions->XGlowColor, BIOSOptions->XboxColor); WriteAnimation(BIOSOptions->Animation); WriteXLogo(BIOSOptions->XLogo); WriteSplashLogo(BIOSOptions->SplashLogo); WriteTradeMark(BIOSOptions->TrademarkSymbol); WriteBootFlags(BIOSOptions->BootFlags); WriteLBA48(BIOSOptions->LBA48, BIOSOptions->PartitionOpt, BIOSOptions->IgnoreHDTable); memcpy(mpKernelBuffer + mLedPatch->offset, mLedPatch->data, sizeof(mLedPatch->data)); memcpy(mpKernelBuffer + mDashPatch->pHookOffset, mDashPatch->data, 22); strncpy((char *) (mpKernelBuffer + *mDefXBEOffset), "default.xbe", 0x11); return 1; }