diff --git a/Utils/MapEdit/Core.h b/Utils/MapEdit/Core.h index 9bf36088b..0749b17a3 100644 --- a/Utils/MapEdit/Core.h +++ b/Utils/MapEdit/Core.h @@ -50,6 +50,9 @@ public: int LayerGetActive(); CLayer *LayerGet(int i); +// Tex Cache + CTexCache &GetTexCache() {return(TexCache);} + private: CMapEditView *ParentWindow; diff --git a/Utils/MapEdit/TexCache.cpp b/Utils/MapEdit/TexCache.cpp index 80889000a..4c852c4d1 100644 --- a/Utils/MapEdit/TexCache.cpp +++ b/Utils/MapEdit/TexCache.cpp @@ -15,25 +15,28 @@ /*****************************************************************************/ /*****************************************************************************/ /*****************************************************************************/ -int CTexCache::ProcessTexture(char *TexName) +int CTexCache::ProcessTexture(char *TexName,char *Path,int Flags) { -// TRACE3("%i %s\t%i Tris\n",Id,ThisNode.GetName(),TriCount); int ListSize=TexList.size(); // Check if Tex exists for (int Count=0;Count TexList; diff --git a/Utils/MapEdit/TileSet.cpp b/Utils/MapEdit/TileSet.cpp index b43b2cd13..600d77dae 100644 --- a/Utils/MapEdit/TileSet.cpp +++ b/Utils/MapEdit/TileSet.cpp @@ -19,8 +19,16 @@ /*****************************************************************************/ CTileSet::CTileSet(char *_Filename,CCore *Core) { - strcpy(Filename,_Filename); - Load(Core); +char Drive[_MAX_DRIVE]; +char Dir[_MAX_DIR]; +char Fname[_MAX_FNAME]; +char Ext[_MAX_EXT]; + + _splitpath(_Filename,Drive,Dir,Fname,Ext); + sprintf(Path,"%s%s",Drive,Dir); + sprintf(Filename,"%s%s",Fname,Ext); + + Load(Core,_Filename); } /*****************************************************************************/ @@ -33,11 +41,11 @@ CTileSet::~CTileSet() /*****************************************************************************/ /*****************************************************************************/ /*****************************************************************************/ -int CTileSet::Load(CCore *Core) +int CTileSet::Load(CCore *Core,char *_Filename) { -CScene Scene; + CScene Scene; - Scene.Load(Filename); + Scene.Load(_Filename); CNode &ThisNode=Scene.GetSceneNode(0); int ChildCount=ThisNode.GetPruneChildCount(); @@ -45,7 +53,7 @@ int ChildCount=ThisNode.GetPruneChildCount(); for (int Child=0; Child Tile;