remove ability to write map file format 9
didn't work properly anymore anyway
This commit is contained in:
@@ -85,7 +85,7 @@ mapstats *loadmapstats(const char *filename, bool getlayout)
|
||||
lilswap(&s.hdr.version, 4);
|
||||
s.hdr.headersize = fixmapheadersize(s.hdr.version, s.hdr.headersize);
|
||||
int restofhead = min(s.hdr.headersize, sizeof_header) - sizeof_baseheader;
|
||||
if(s.hdr.version > MAXMAPVERSION || s.hdr.numents > MAXENTITIES ||
|
||||
if(s.hdr.version > MAPVERSION || s.hdr.numents > MAXENTITIES ||
|
||||
f->read(&s.hdr.waterlevel, restofhead) != restofhead ||
|
||||
!f->seek(clamp(s.hdr.headersize - sizeof_header, 0, MAXHEADEREXTRA), SEEK_CUR)) { delete f; return NULL; }
|
||||
if(s.hdr.version>=4)
|
||||
|
||||
+1
-2
@@ -42,8 +42,7 @@ enum // stuff encoded in sqr.tag
|
||||
|
||||
enum { MHF_AUTOMAPCONFIG = 1<<0 };
|
||||
|
||||
#define MAXMAPVERSION 10 // defines the highest readable format
|
||||
#define MAPVERSION 9 // default map format version to be written (bump if map format changes, see worldio.cpp)
|
||||
#define MAPVERSION 10 // default map format version to be written (bump if map format changes, see worldio.cpp)
|
||||
|
||||
struct header // map file format header
|
||||
{
|
||||
|
||||
+2
-14
@@ -552,8 +552,6 @@ void save_world(char *mname, bool skipoptimise, bool addcomfort)
|
||||
ucharbuf hx = packheaderextras(addcomfort ? 0 : (1 << HX_EDITUNDO)); // if addcomfort -> add undos/redos
|
||||
int writeextra = 0;
|
||||
if(hx.maxlen) tmp.headersize += writeextra = clamp(hx.maxlen, 0, MAXHEADEREXTRA);
|
||||
if(writeextra || skipoptimise || true) tmp.version = 10; // use format 10, if required
|
||||
bool oldentityformat = tmp.version < 10;
|
||||
tmp.maprevision += advancemaprevision;
|
||||
DEBUG("version " << tmp.version << " headersize " << tmp.headersize << " entities " << tmp.numents << " factor " << tmp.sfactor << " revision " << tmp.maprevision);
|
||||
lilswap(&tmp.version, 4); // version, headersize, sfactor, numents
|
||||
@@ -569,19 +567,9 @@ void save_world(char *mname, bool skipoptimise, bool addcomfort)
|
||||
{
|
||||
if(!ne--) break;
|
||||
persistent_entity tmp = ents[i];
|
||||
if(oldentityformat && tmp.type < MAXENTTYPES)
|
||||
{
|
||||
tmp.attr1 = tmp.attr1 / entscale[tmp.type][0];
|
||||
tmp.attr2 = tmp.attr2 / entscale[tmp.type][1];
|
||||
tmp.attr3 = tmp.attr3 / entscale[tmp.type][2];
|
||||
tmp.attr4 = tmp.attr4 / entscale[tmp.type][3];
|
||||
tmp.attr5 = tmp.attr5 / entscale[tmp.type][4];
|
||||
tmp.attr6 = tmp.attr6 / entscale[tmp.type][5];
|
||||
tmp.attr7 = tmp.attr7 / entscale[tmp.type][6];
|
||||
}
|
||||
lilswap((short *)&tmp, 4);
|
||||
lilswap(&tmp.attr5, 1);
|
||||
f->write(&tmp, oldentityformat ? 12 : sizeof(persistent_entity));
|
||||
f->write(&tmp, sizeof(persistent_entity));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -663,7 +651,7 @@ bool load_world(char *mname) // still supports all map formats that have
|
||||
if(f->read(&tmp, sizeof_baseheader) != sizeof_baseheader ||
|
||||
(strncmp(tmp.head, "CUBE", 4)!=0 && strncmp(tmp.head, "ACMP",4)!=0)) { conoutf("\f3while reading map: header malformatted (1)"); delete f; return false; }
|
||||
lilswap(&tmp.version, 4); // version, headersize, sfactor, numents
|
||||
if(tmp.version > MAXMAPVERSION) { conoutf("\f3this map requires a newer version of AssaultCube"); delete f; return false; }
|
||||
if(tmp.version > MAPVERSION) { conoutf("\f3this map requires a newer version of AssaultCube"); delete f; return false; }
|
||||
if(tmp.sfactor<SMALLEST_FACTOR || tmp.sfactor>LARGEST_FACTOR || tmp.numents > MAXENTITIES) { conoutf("\f3illegal map size"); delete f; return false; }
|
||||
tmp.headersize = fixmapheadersize(tmp.version, tmp.headersize);
|
||||
int restofhead = min(tmp.headersize, sizeof_header) - sizeof_baseheader;
|
||||
|
||||
Reference in New Issue
Block a user