diff --git a/Utils/Libs/DaveLib/DaveLib.dsp b/Utils/Libs/DaveLib/DaveLib.dsp new file mode 100644 index 000000000..cc407948b --- /dev/null +++ b/Utils/Libs/DaveLib/DaveLib.dsp @@ -0,0 +1,94 @@ +# Microsoft Developer Studio Project File - Name="DaveLib" - Package Owner=<4> +# Microsoft Developer Studio Generated Build File, Format Version 6.00 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (x86) Static Library" 0x0104 + +CFG=DaveLib - Win32 Debug +!MESSAGE This is not a valid makefile. To build this project using NMAKE, +!MESSAGE use the Export Makefile command and run +!MESSAGE +!MESSAGE NMAKE /f "DaveLib.mak". +!MESSAGE +!MESSAGE You can specify a configuration when running NMAKE +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "DaveLib.mak" CFG="DaveLib - Win32 Debug" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "DaveLib - Win32 Release" (based on "Win32 (x86) Static Library") +!MESSAGE "DaveLib - Win32 Debug" (based on "Win32 (x86) Static Library") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "" +# PROP Scc_LocalPath "" +CPP=cl.exe +RSC=rc.exe + +!IF "$(CFG)" == "DaveLib - Win32 Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release" +# PROP BASE Intermediate_Dir "Release" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release" +# PROP Intermediate_Dir "Release" +# PROP Target_Dir "" +MTL=midl.exe +# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c +# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c +# ADD BASE RSC /l 0x809 /d "NDEBUG" +# ADD RSC /l 0x809 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo +# ADD LIB32 /nologo + +!ELSEIF "$(CFG)" == "DaveLib - Win32 Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug" +# PROP BASE Intermediate_Dir "Debug" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug" +# PROP Intermediate_Dir "Debug" +# PROP Target_Dir "" +MTL=midl.exe +# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c +# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c +# ADD BASE RSC /l 0x809 /d "_DEBUG" +# ADD RSC /l 0x809 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo +# ADD LIB32 /nologo + +!ENDIF + +# Begin Target + +# Name "DaveLib - Win32 Release" +# Name "DaveLib - Win32 Debug" +# Begin Source File + +SOURCE=.\List.h +# End Source File +# Begin Source File + +SOURCE=.\list2d.h +# End Source File +# End Target +# End Project diff --git a/Utils/Libs/DaveLib/List.h b/Utils/Libs/DaveLib/List.h index 8d8211d96..2653bc5bc 100644 --- a/Utils/Libs/DaveLib/List.h +++ b/Utils/Libs/DaveLib/List.h @@ -1,9 +1,11 @@ -/**********************/ -/*** Vtx List Class ***/ -/**********************/ +/******************/ +/*** List Class ***/ +/******************/ -#if !defined __VTXLIST_CLASS_HEADER__ -#define __VTXLIST_CLASS_HEADER__ +#pragma warning( disable : 4786 ) + +#if !defined __LIST_CLASS_HEADER__ +#define __LIST_CLASS_HEADER__ #include @@ -41,10 +43,9 @@ public: return(ListSize); } - void clear() - { - List.clear(); - } + void clear() {List.clear();} + void resize(int i) {List.resize(i);} + int size() {return(List.size());} diff --git a/Utils/Libs/DaveLib/list2d.cpp b/Utils/Libs/DaveLib/list2d.cpp new file mode 100644 index 000000000..745456366 --- /dev/null +++ b/Utils/Libs/DaveLib/list2d.cpp @@ -0,0 +1,10 @@ +/******************/ +/*** List Class ***/ +/******************/ + + +#include +#include "List2d.h" + + + diff --git a/Utils/Libs/DaveLib/list2d.h b/Utils/Libs/DaveLib/list2d.h new file mode 100644 index 000000000..534b0ef31 --- /dev/null +++ b/Utils/Libs/DaveLib/list2d.h @@ -0,0 +1,143 @@ +/*********************/ +/*** List 2d Class ***/ +/*********************/ + + +#pragma warning( disable : 4786 ) + +#ifndef __LIST_2D_HEADER__ +#define __LIST_2D_HEADER__ + +#include + +/*****************************************************************************/ +template class CList2d +{ +public: +inline int GetWidth() +{ + return(List.size()); +} + +inline int GetHeight() +{ + if (GetWidth()) + { + return(List[0].size()); + } + return(0); +} + +inline void SetSize(int Width,int Height) +{ + List.resize(Width); + for (int i=0;i Old=*this; + +int OldWidth=Old.GetWidth(); +int OldHeight=Old.GetHeight(); +int MinW=min(Width,OldWidth); +int MinH=min(Height,OldHeight); + + Delete(); + SetSize(Width,Height,TRUE); + for (int Y=0; Y=0 && X=0 && Y > List; +}; + + +/*****************************************************************************/ +#endif diff --git a/Utils/Libs/GLib/Glib.dsp b/Utils/Libs/GLib/Glib.dsp index 405e2f136..39b67cfea 100644 --- a/Utils/Libs/GLib/Glib.dsp +++ b/Utils/Libs/GLib/Glib.dsp @@ -42,7 +42,7 @@ RSC=rc.exe # PROP Target_Dir "" MTL=midl.exe # ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "include" /I "include\pc" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /FR"Release/" /Fp"Release/Glib.pch" /YX /Fo"Release/" /Fd"Release/" /FD /c +# ADD CPP /nologo /MD /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /FR"Release/" /Fp"Release/Glib.pch" /YX /Fo"Release/" /Fd"Release/" /FD /c # ADD BASE RSC /l 0x809 /d "NDEBUG" # ADD RSC /l 0x809 /d "NDEBUG" BSC32=bscmake.exe diff --git a/Utils/Libs/GinLib/ginlib.dsp b/Utils/Libs/GinLib/ginlib.dsp index 09f5edc96..da3aa309c 100644 --- a/Utils/Libs/GinLib/ginlib.dsp +++ b/Utils/Libs/GinLib/ginlib.dsp @@ -42,7 +42,7 @@ RSC=rc.exe # PROP Target_Dir "" MTL=midl.exe # ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\glib\include" /I "..\glib\include\pc" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c +# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\glib" /I "..\maths" /I "..\davelib" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c # ADD BASE RSC /l 0x809 /d "NDEBUG" # ADD RSC /l 0x809 /d "NDEBUG" BSC32=bscmake.exe diff --git a/Utils/Libs/Maths/maths.dsp b/Utils/Libs/Maths/maths.dsp index a564c51d7..ca4794a3e 100644 --- a/Utils/Libs/Maths/maths.dsp +++ b/Utils/Libs/Maths/maths.dsp @@ -42,7 +42,7 @@ RSC=rc.exe # PROP Target_Dir "" MTL=midl.exe # ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c -# ADD CPP /nologo /W3 /GX /O2 /I "..\common" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c +# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c # ADD BASE RSC /l 0x809 /d "NDEBUG" # ADD RSC /l 0x809 /d "NDEBUG" BSC32=bscmake.exe diff --git a/Utils/Libs/TexGrab/TexGrab.cpp b/Utils/Libs/TexGrab/TexGrab.cpp index bc753db80..34188bc4d 100644 --- a/Utils/Libs/TexGrab/TexGrab.cpp +++ b/Utils/Libs/TexGrab/TexGrab.cpp @@ -65,8 +65,6 @@ CTexGrab::~CTexGrab() ---------------------------------------------------------------------- */ void CTexGrab::Process() { -SprSet MySprSet; - MySprSet.setHalfTpage(m_useHalfTpage); MySprSet.setAnimatedHeader(m_AnimatedHeadersOnly); MySprSet.setDontOutputBoxes(m_DontOutputBoxes); @@ -92,6 +90,7 @@ SprSet MySprSet; if (m_PagePlacements) { MySprSet.Write(m_OutFile,m_PageBase,m_WidthPages,m_HeightPages); + MySprSet.CreateTexInfo(TexInfo); if (m_OutLbm) MySprSet.WriteLBM(m_OutLbm); @@ -127,6 +126,14 @@ GString UpperName(Name); Purpose: Params: ---------------------------------------------------------------------- */ +void CTexGrab::AddMemFrame(char *Name,Frame &Frame) +{ +GString UpperName(Name); + + UpperName.Upper(); + + MyFiles.AddMemFrame(UpperName,Frame); +} /* diff --git a/Utils/Libs/TexGrab/TexGrab.dsp b/Utils/Libs/TexGrab/TexGrab.dsp index cd0cb7217..795dd833e 100644 --- a/Utils/Libs/TexGrab/TexGrab.dsp +++ b/Utils/Libs/TexGrab/TexGrab.dsp @@ -40,8 +40,9 @@ RSC=rc.exe # PROP Output_Dir "Release" # PROP Intermediate_Dir "Release" # PROP Target_Dir "" +MTL=midl.exe # ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c -# ADD CPP /nologo /W3 /GX /O2 /I "..\GinLib" /I "..\glib\include" /I "..\glib\include\pc" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c +# ADD CPP /nologo /W3 /GX /O2 /I "..\glib" /I "..\ginlib" /I "..\maths" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c # ADD BASE RSC /l 0x809 /d "NDEBUG" # ADD RSC /l 0x809 /d "NDEBUG" BSC32=bscmake.exe @@ -63,8 +64,9 @@ LIB32=link.exe -lib # PROP Output_Dir "Debug" # PROP Intermediate_Dir "Debug" # PROP Target_Dir "" +MTL=midl.exe # ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c -# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "..\GinLib" /I "..\glib\include" /I "..\glib\include\pc" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /FR /YX /FD /GZ /c +# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "..\glib" /I "..\ginlib" /I "..\maths" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /FR /YX /FD /GZ /c # ADD BASE RSC /l 0x809 /d "_DEBUG" # ADD RSC /l 0x809 /d "_DEBUG" BSC32=bscmake.exe diff --git a/Utils/Libs/TexGrab/TexGrab.h b/Utils/Libs/TexGrab/TexGrab.h index dc7dfc653..155e3579c 100644 --- a/Utils/Libs/TexGrab/TexGrab.h +++ b/Utils/Libs/TexGrab/TexGrab.h @@ -56,6 +56,8 @@ public: ~CTexGrab(); void AddFile(char *Name); + void AddMemFrame(char *Name,Frame &Frame); + void Process(); void CompressTpages(bool f) {m_compressTpages=f;} @@ -85,12 +87,15 @@ public: void MaxSize(int Size) {MyFiles.SetMaxSize(Size);} void SetTPage(int Base,int W,int H) {m_PageBase=Base; m_WidthPages=W; m_HeightPages=H; m_PagePlacements=true;} void ForceOffsets(int XOfs,int YOfs) {MyFiles.SetXOff(XOfs); MyFiles.SetYOff(YOfs); MyFiles.SetForceOffsets(true);} - + + std::vector &GetTexInfo() {return(TexInfo);} protected: AllFiles MyFiles; + SprSet MySprSet; + GString m_OutFile; GString m_OutLbm; @@ -109,6 +114,8 @@ protected: bool m_AnimatedHeadersOnly; bool m_DontOutputBoxes; bool m_AlignHeaders; + + std::vector TexInfo; }; diff --git a/Utils/Libs/TexGrab/sprset.cpp b/Utils/Libs/TexGrab/sprset.cpp index 0ae449560..c9e78c0d5 100644 --- a/Utils/Libs/TexGrab/sprset.cpp +++ b/Utils/Libs/TexGrab/sprset.cpp @@ -127,12 +127,19 @@ void SprSet::AddFile(FileInfo const & ThisInfo) GString Ext(FileName.Ext()); Ext.Upper(); - if (Ext == "LBM" || Ext == "BMP") - AddLbm(ThisInfo); - else if (Ext == "ANM") - AddAnm(ThisInfo); + if (ThisInfo.getHasMemFrame()) + { // NEW!! Frames from memory :o) Dave + AddFrame(ThisInfo.getMemFrame(),ThisInfo); + } else - Error(ERR_FATAL,"Don't deal with these sort of files : %s", FileName.FullName()); + { + if (Ext == "LBM" || Ext == "BMP") + AddLbm(ThisInfo); + else if (Ext == "ANM") + AddAnm(ThisInfo); + else + Error(ERR_FATAL,"Don't deal with these sort of files : %s", FileName.FullName()); + } } /*---------------------------------------------------------------------- Function: @@ -355,6 +362,47 @@ void SprSet::WriteReport(char const * File) Error(ERR_FATAL,"Couldn't open file %s for output",(char const *)OutFileName); } +/*---------------------------------------------------------------------- + Function: + Purpose: + Params: + Returns: + ---------------------------------------------------------------------- */ +#include + +void SprSet::CreateTexInfo(std::vector &TexInfo) +{ +int ListSize=AllSprFrames.size(); +const int DirLen=1024; +char Dir[DirLen+1]; +GString CurrDir; + + CurrDir=getcwd(Dir,DirLen); + CurrDir.Upper(); + CurrDir=CurrDir+"\\"; + + TexInfo.resize(ListSize); + + for (int f=0;fGetActualName(); + + + ThisInfo.Name=GFName::makerelative(CurrDir,Name,Dir); + ThisInfo.Clut=Frm.GetClut(); + ThisInfo.Tpage=Frm.GetTpage(); + ThisInfo.Rotated=Frm.IsRotated(); + ThisInfo.u=Frm.GetTPRect().X; + ThisInfo.v=Frm.GetTPRect().Y; + ThisInfo.w=Frm.GetWidth(); + ThisInfo.h=Frm.GetHeight(); + ThisInfo.XOfs=Frm.GetX(); + ThisInfo.XOfs=Frm.GetY(); + } +} + /*---------------------------------------------------------------------- Function: Purpose: Allocate all processed frames into tpages diff --git a/Utils/Libs/TexGrab/sprset.h b/Utils/Libs/TexGrab/sprset.h index 5754c5f4b..60503557a 100644 --- a/Utils/Libs/TexGrab/sprset.h +++ b/Utils/Libs/TexGrab/sprset.h @@ -44,6 +44,15 @@ /*---------------------------------------------------------------------- Structure defintions -------------------- */ +struct sTexOutInfo +{ + GString Name; + u16 Clut; + u16 Tpage; + bool Rotated; + int u,v,w,h; + int XOfs,YOfs; +}; /* Encapsulates a file and all the infomation parkgrab needs to process it ----------------------------------------------------------------------- */ @@ -54,7 +63,6 @@ class FileInfo { CrossHair=false; ForceOffsets=false; - MemFrame=0; } FileInfo(FileInfo const & Fi) @@ -122,7 +130,10 @@ class FileInfo ShrinkToFit=NewShrinkToFit; m_allocateAs16Bit=allocateAs16Bit; - MemFrame=NewMemFrame; + if (NewMemFrame) + { + MemFrame=*NewMemFrame; + } /* if we're allocating on a 16 bit pixel boundary then we don't want the texture to be rotated @@ -177,6 +188,12 @@ class FileInfo bool getAllocateAs16Bit(void) const {return(m_allocateAs16Bit);} + bool getHasMemFrame(void) const + {return(MemFrame.SeeData!=0);} + + Frame const &getMemFrame() const + {return(MemFrame);} + char const * GetActualName(void) const {return(ActualFileName);} @@ -198,7 +215,7 @@ class FileInfo int XOff,YOff; - Frame *MemFrame; + Frame MemFrame; }; typedef std::vector FIVec; @@ -439,6 +456,26 @@ public: { return(MyFileInfo.getAllocateAs16Bit()); } + int getX(void) {return(X);} + + int getY(void) {return(Y);} + + int getW(void) + { + if (MyFileInfo.GetMoveUVs() && Width && !MyFileInfo.getAllocateAs16Bit()) + return(Width-1); + else + return(Width); + } + + int getH(void) + { + if (MyFileInfo.GetMoveUVs() && Height && !MyFileInfo.getAllocateAs16Bit()) + return(Height-1); + else + return(Height); + } + protected: void ResizeAndReduce(Frame & Frm,int TargCols,float XPerc,float YPerc,bool ZeroSeeThrough); @@ -485,6 +522,8 @@ public: void AddFiles(FIVec const & FileList); + void CreateTexInfo(std::vector &TexInfo); + void Write(char const * FileName,int TpNumber,int WidthInTpages,int HeightInTpages); void WriteLBM(char const * FileName); void WriteSprFile(char const * Name); diff --git a/Utils/Libs/TexGrab/tpage.cpp b/Utils/Libs/TexGrab/tpage.cpp index 84921f5c6..739e3db8e 100644 --- a/Utils/Libs/TexGrab/tpage.cpp +++ b/Utils/Libs/TexGrab/tpage.cpp @@ -55,15 +55,25 @@ struct TPInfo /*---------------------------------------------------------------------- Vars ---- */ +// changed by dave to get the pixel border back static TPInfo const InfStruct[TP_NUM_OF_TP_TYPES]= { - {1,256,1,1}, /* TP_4 */ - {2,512,2,1}, /* TP_8 */ - {4,256,4,1}, /* TP_16 */ - {0,0,0,0}, /* TP_SCREEN */ - {16*4,1024*4,0,0}, /* TP_PAL */ + {1,256,0,0}, // TP_4 + {2,512,0,0}, // TP_8 + {4,256,0,0}, // TP_16 + {0,0,0,0}, // TP_SCREEN + {16*4,1024*4,0,0}, // TP_PAL }; - +/* +static TPInfo const InfStruct[TP_NUM_OF_TP_TYPES]= +{ + {1,256,1,1}, // TP_4 + {2,512,2,1}, // TP_8 + {4,256,4,1}, // TP_16 + {0,0,0,0}, // TP_SCREEN + {16*4,1024*4,0,0}, // TP_PAL +}; +*/ /*---------------------------------------------------------------------- Function Prototypes ------------------- */ diff --git a/Utils/MapEdit/Core.cpp b/Utils/MapEdit/Core.cpp index e62c0b6f9..d4ddfd075 100644 --- a/Utils/MapEdit/Core.cpp +++ b/Utils/MapEdit/Core.cpp @@ -73,10 +73,10 @@ int Width,Height; // Create Tile Layers // Type Width Height Scale 3d? Resizable? - if (Dlg.m_Back) Layer.push_back(new CLayerTile( CLayerTile::Back, 32, 32, 4.0f, FALSE, FALSE)); - if (Dlg.m_Mid) Layer.push_back(new CLayerTile( CLayerTile::Mid, Width, Height, 2.0f, FALSE, TRUE)); - Layer.push_back(new CLayerTile( CLayerTile::Action, Width, Height, 1.0f, TRUE, TRUE)); - if (Dlg.m_Fore) Layer.push_back(new CLayerTile( CLayerTile::Fore, Width, Height, 0.5f, FALSE, TRUE)); + if (Dlg.m_Back) Layer.push_back(new CLayerTile( LAYERTILE_BACK, 32, 32, 4.0f, FALSE, FALSE)); + if (Dlg.m_Mid) Layer.push_back(new CLayerTile( LAYERTILE_MID, Width, Height, 2.0f, FALSE, TRUE)); + Layer.push_back(new CLayerTile( LAYERTILE_ACTION, Width, Height, 1.0f, TRUE, TRUE)); + if (Dlg.m_Fore) Layer.push_back(new CLayerTile( LAYERTILE_FORE, Width, Height, 0.5f, FALSE, TRUE)); Vector3 CamOfs; CamOfs.Zero(); @@ -631,7 +631,7 @@ int ListSize=Layer.size(); /*****************************************************************************/ int CCore::FindActionLayer() { -int Idx=FindLayer(LAYER_TYPE_TILE,CLayerTile::Action); +int Idx=FindLayer(LAYER_TYPE_TILE,LAYERTILE_ACTION); return(Idx); } @@ -676,7 +676,8 @@ char ExportName[256]; SetFileExt(Filename,ExportName,"PME"); -CExportPSX Exp(ExportName); + LayerCount=1; +CExportPSX Exp(ExportName,LayerCount); /* for (int i=0;i #include "Map.h" +#include "LayerDef.h" /*****************************************************************************/ enum LAYER_ENUMS @@ -16,13 +17,6 @@ enum LAYER_ENUMS SELECT_BUFFER_SIZE=16, }; -/*****************************************************************************/ -enum LAYER_TYPE -{ - LAYER_TYPE_TILE=0, - LAYER_TYPE_MAX -}; - enum { SCREEN_WIDTH_TILE=30, diff --git a/Utils/MapEdit/LayerDef.h b/Utils/MapEdit/LayerDef.h new file mode 100644 index 000000000..2d2e81a76 --- /dev/null +++ b/Utils/MapEdit/LayerDef.h @@ -0,0 +1,31 @@ +/*** Layer Defs ***/ +/******************/ + +#ifndef __LAYER_DEFS_HEADER__ +#define __LAYER_DEFS_HEADER__ + +/*****************************************************************************/ +enum LAYER_TYPE +{ + LAYER_TYPE_TILE=0, + LAYER_TYPE_MAX +}; + +enum LAYER_SUBTYPE +{ + LAYERTILE_BACK=0, + LAYERTILE_MID, + LAYERTILE_ACTION, + LAYERTILE_FORE, +}; + +enum TILE_FLAG +{ + TILE_FLAG_MIRROR_X=1<<0, + TILE_FLAG_MIRROR_Y=1<<1, + TILE_FLAG_MIRROR_XY=TILE_FLAG_MIRROR_X|TILE_FLAG_MIRROR_Y, +}; + + +/*****************************************************************************/ +#endif \ No newline at end of file diff --git a/Utils/MapEdit/LayerTile.cpp b/Utils/MapEdit/LayerTile.cpp index c2952018c..95294d8e5 100644 --- a/Utils/MapEdit/LayerTile.cpp +++ b/Utils/MapEdit/LayerTile.cpp @@ -473,8 +473,8 @@ CTileBank &TileBank=Core->GetTileBank(); CMap &LBrush=TileBank.GetLBrush(); CMap &RBrush=TileBank.GetRBrush(); - LBrush.MirrorX(MouseFlagMirrorX); - RBrush.MirrorX(MouseFlagMirrorX); + LBrush.MirrorX(TILE_FLAG_MIRROR_X); + RBrush.MirrorX(TILE_FLAG_MIRROR_X); return(TRUE); } @@ -486,8 +486,8 @@ CTileBank &TileBank=Core->GetTileBank(); CMap &LBrush=TileBank.GetLBrush(); CMap &RBrush=TileBank.GetRBrush(); - LBrush.MirrorY(MouseFlagMirrorY); - RBrush.MirrorY(MouseFlagMirrorY); + LBrush.MirrorY(TILE_FLAG_MIRROR_Y); + RBrush.MirrorY(TILE_FLAG_MIRROR_Y); return(TRUE); } diff --git a/Utils/MapEdit/LayerTile.h b/Utils/MapEdit/LayerTile.h index 2b8a17de4..51c8856e5 100644 --- a/Utils/MapEdit/LayerTile.h +++ b/Utils/MapEdit/LayerTile.h @@ -26,19 +26,6 @@ public: MouseModePaint=0, MouseModeSelect, }; - enum MouseFlag - { - MouseFlagMirrorX=1<<0, - MouseFlagMirrorY=1<<1, - MouseFlagMirrorXY=MouseFlagMirrorX|MouseFlagMirrorY, - }; - enum SubType - { - Back=0, - Mid, - Action, - Fore, - }; CLayerTile(int SubType,int Width,int Height,float Scale,BOOL Is3d,BOOL Resizable); // New Layer CLayerTile(CFile *File,int Version); // Load Layer diff --git a/Utils/MapEdit/Map.h b/Utils/MapEdit/Map.h index 920a61977..78461aaf0 100644 --- a/Utils/MapEdit/Map.h +++ b/Utils/MapEdit/Map.h @@ -27,6 +27,8 @@ enum }; /*****************************************************************************/ +class CFile; +class CPoint; class CMap { public: diff --git a/Utils/MapEdit/MapEdit.clw b/Utils/MapEdit/MapEdit.clw index 71faf5fb0..d0cfcfe77 100644 --- a/Utils/MapEdit/MapEdit.clw +++ b/Utils/MapEdit/MapEdit.clw @@ -18,24 +18,24 @@ Class6=CMapEditDoc Class7=CMapEditView ResourceCount=11 -Resource1=IDD_MULTIBAR (English (U.S.)) -Resource2=IDD_NEWMAP -Resource3=IDD_LAYERTILE_GUI +Resource1=IDD_NEW_LAYER +Resource2=IDD_LAYER_LIST_DIALOG +Resource3=IDR_MAINFRAME (English (U.S.)) Resource4=IDD_DIALOGBAR (English (U.S.)) -Resource5=IDD_NEW_LAYER +Resource5=IDD_MULTIBAR (English (U.S.)) Class8=CMultiBar -Resource6=IDR_MAINFRAME (English (U.S.)) +Resource6=IDD_LAYERTILE_GUI Resource7=IDR_MAPEDITYPE (English (U.S.)) Class9=CLayerList Class10=CMapSizeDlg -Resource8=IDD_MAPSIZE +Resource8=IDD_ABOUTBOX (English (U.S.)) Class11=CGfxToolBar Class12=CLayerTileGUI -Resource9=IDD_LAYER_LIST_DIALOG -Resource10=IDR_TOOLBAR (English (U.S.)) +Resource9=IDD_NEWMAP +Resource10=IDD_MAPSIZE Class13=CNewMapGUI Class14=CProgressDlg -Resource11=IDD_ABOUTBOX (English (U.S.)) +Resource11=IDR_TOOLBAR (English (U.S.)) [CLS:CChildFrame] Type=0 @@ -218,7 +218,7 @@ ImplementationFile=LayerList.cpp BaseClass=CDialog Filter=D VirtualFilter=dWC -LastObject=IDC_LAYER_LIST +LastObject=CLayerList [CLS:CGfxToolBar] Type=0 diff --git a/Utils/MapEdit/MapEdit.dsp b/Utils/MapEdit/MapEdit.dsp index a18c86e63..f4b8adbab 100644 --- a/Utils/MapEdit/MapEdit.dsp +++ b/Utils/MapEdit/MapEdit.dsp @@ -69,7 +69,7 @@ LINK32=link.exe # PROP Ignore_Export_Lib 0 # PROP Target_Dir "" # ADD BASE CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_AFXDLL" /Yu"stdafx.h" /FD /GZ /c -# ADD CPP /nologo /MDd /W3 /Gm /Gi /GX /ZI /Od /I "..\libs\glib" /I "..\libs\maths" /I "..\libs\davelib" /I "..\libs\ginlib" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_AFXDLL" /D "_MBCS" /FR /Yu"stdafx.h" /FD /GZ /c +# ADD CPP /nologo /MDd /W3 /Gm /Gi /GX /ZI /Od /I "..\libs\glib" /I "..\libs\maths" /I "..\libs\davelib" /I "..\libs\ginlib" /I "..\libs\psxlib" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_AFXDLL" /D "_MBCS" /FR /Yu"stdafx.h" /FD /GZ /c # ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32 # ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32 # ADD BASE RSC /l 0x809 /d "_DEBUG" /d "_AFXDLL" @@ -103,6 +103,10 @@ SOURCE=.\Layer.h # End Source File # Begin Source File +SOURCE=.\LayerDef.h +# End Source File +# Begin Source File + SOURCE=.\LayerTile.cpp # End Source File # Begin Source File diff --git a/Utils/MapEdit/MapEdit.dsw b/Utils/MapEdit/MapEdit.dsw index afed98c2a..6c8264c00 100644 --- a/Utils/MapEdit/MapEdit.dsw +++ b/Utils/MapEdit/MapEdit.dsw @@ -3,6 +3,18 @@ Microsoft Developer Studio Workspace File, Format Version 6.00 ############################################################################### +Project: "DaveLib"=..\LIBS\DaveLib\DaveLib.dsp - Package Owner=<4> + +Package=<5> +{{{ +}}} + +Package=<4> +{{{ +}}} + +############################################################################### + Project: "GLib"=..\Libs\GLib\Glib.dsp - Package Owner=<4> Package=<5> @@ -68,6 +80,12 @@ Package=<4> Begin Project Dependency Project_Dep_Name TexGrab End Project Dependency + Begin Project Dependency + Project_Dep_Name maths + End Project Dependency + Begin Project Dependency + Project_Dep_Name DaveLib + End Project Dependency }}} ############################################################################### @@ -108,18 +126,6 @@ Package=<4> ############################################################################### -Project: "mem"=..\Libs\mem\mem.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ -}}} - -############################################################################### - Global: Package=<5> diff --git a/Utils/MapEdit/TileSet.cpp b/Utils/MapEdit/TileSet.cpp index 1100f8514..fb230b7fe 100644 --- a/Utils/MapEdit/TileSet.cpp +++ b/Utils/MapEdit/TileSet.cpp @@ -75,6 +75,7 @@ GString FilePath=RootPath.Dir(); File->Read(Filename,256+64); AddTileSet(Filename); + TRACE1("%s\n",Filename); } } else