mirror of
https://github.com/XProger/OpenLara.git
synced 2025-02-22 22:42:49 +01:00
Merge branch 'master' of https://github.com/XProger/OpenLara
This commit is contained in:
commit
eccadd7cd3
14
src/format.h
14
src/format.h
@ -3168,7 +3168,7 @@ namespace TR {
|
||||
|
||||
id = TR::getLevelID(stream.size, stream.name, version, isDemoLevel);
|
||||
|
||||
if (version == VER_UNKNOWN || version == VER_TR1_PSX || version == VER_TR3_PSX) {
|
||||
if (version == VER_UNKNOWN || version == VER_TR1_PSX || version == VER_TR1_SAT || version == VER_TR3_PSX) {
|
||||
stream.read(magic);
|
||||
|
||||
if (magic != MAGIC_TR1_PC &&
|
||||
@ -4068,12 +4068,16 @@ namespace TR {
|
||||
LOG("! unknown face type: %d\n", type);
|
||||
ASSERT(false);
|
||||
}
|
||||
ASSERT(f.flags.value % 16 == 0);
|
||||
ASSERT(f.flags.value / 16 < roomTexturesCount);
|
||||
f.flags.value /= 16;
|
||||
|
||||
if (type == TYPE_R_TRANSP)
|
||||
if (type != TYPE_SPRITE) {
|
||||
ASSERT(f.flags.value % 16 == 0);
|
||||
ASSERT(f.flags.value / 16 < roomTexturesCount);
|
||||
f.flags.value /= 16;
|
||||
}
|
||||
|
||||
if (type == TYPE_R_TRANSP) {
|
||||
roomTextures[f.flags.texture].attribute = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
data.fCount = fIndex;
|
||||
|
@ -1371,10 +1371,12 @@ namespace TR {
|
||||
CHECK_FILE("DELDATA/AMERTIT.RAW"); // PSX
|
||||
CHECK_FILE("DELDATA/JAPTIT.RAW"); // PSX JAP
|
||||
CHECK_FILE("BINDATA/USATIT.BIN"); // SEGA
|
||||
CHECK_FILE("BINDATA/TITLE1.BIN"); // SEGA
|
||||
return "level/1/AMERTIT.PNG"; // WEB
|
||||
case LVL_TR1_GYM :
|
||||
CHECK_FILE("DELDATA/GYMLOAD.RAW");
|
||||
CHECK_FILE("BINDATA/GYM224.BIN");
|
||||
CHECK_FILE("BINDATA/GYM.BIN");
|
||||
return "level/1/GYMLOAD.PNG";
|
||||
case LVL_TR1_1 :
|
||||
case LVL_TR1_2 :
|
||||
@ -1382,6 +1384,7 @@ namespace TR {
|
||||
case LVL_TR1_3B :
|
||||
CHECK_FILE("DELDATA/AZTECLOA.RAW");
|
||||
CHECK_FILE("BINDATA/AZTEC224.BIN");
|
||||
CHECK_FILE("BINDATA/AZTEC.BIN");
|
||||
return "level/1/AZTECLOA.PNG";
|
||||
case LVL_TR1_4 :
|
||||
case LVL_TR1_5 :
|
||||
@ -1390,18 +1393,21 @@ namespace TR {
|
||||
case LVL_TR1_7B :
|
||||
CHECK_FILE("DELDATA/GREEKLOA.RAW");
|
||||
CHECK_FILE("BINDATA/GREEK224.BIN");
|
||||
CHECK_FILE("BINDATA/GREEK.BIN");
|
||||
return "level/1/GREEKLOA.PNG";
|
||||
case LVL_TR1_8A :
|
||||
case LVL_TR1_8B :
|
||||
case LVL_TR1_8C :
|
||||
CHECK_FILE("DELDATA/EGYPTLOA.RAW");
|
||||
CHECK_FILE("BINDATA/EGYPT224.BIN");
|
||||
CHECK_FILE("BINDATA/EGYPT.BIN");
|
||||
return "level/1/EGYPTLOA.PNG";
|
||||
case LVL_TR1_10A :
|
||||
case LVL_TR1_10B :
|
||||
case LVL_TR1_10C :
|
||||
CHECK_FILE("DELDATA/ATLANLOA.RAW");
|
||||
CHECK_FILE("BINDATA/ATLAN224.BIN");
|
||||
CHECK_FILE("BINDATA/ATLAN.BIN");
|
||||
return "level/1/ATLANLOA.PNG";
|
||||
// TR2
|
||||
case LVL_TR2_TITLE :
|
||||
|
@ -638,8 +638,12 @@ struct Texture : GAPI::Texture {
|
||||
}
|
||||
|
||||
static uint8* LoadBIN(Stream &stream, uint32 &width, uint32 &height) {
|
||||
height = 224;
|
||||
width = stream.size / height / 2;
|
||||
if (strstr(stream.name, "224.")) {
|
||||
height = 224;
|
||||
} else {
|
||||
height = 256;
|
||||
}
|
||||
width = stream.size / height / 2;
|
||||
|
||||
uint8 *data = new uint8[stream.size];
|
||||
stream.raw(data, stream.size);
|
||||
|
Loading…
x
Reference in New Issue
Block a user