mirror of
https://github.com/ZDoom/qzdoom.git
synced 2024-11-28 15:02:01 +00:00
- added far stronger restrictions for when the Boom-Texture-Y-offset compatibility flag may trigger.
This had absolutely no sanity checks and unconditionally picked the source texture if one existed. It should only be done for wall textures, only for those defined in TEXTUREx and only for those where the scale is identical with the underlying texture.
This commit is contained in:
parent
c5153ca095
commit
b79622bcba
2 changed files with 4 additions and 4 deletions
|
@ -234,7 +234,7 @@ FMultiPatchTexture::FMultiPatchTexture (const void *texdef, FPatchLookup *patchl
|
|||
int i;
|
||||
|
||||
mtexture.d = (const maptexture_t *)texdef;
|
||||
bMultiPatch = true;
|
||||
bMultiPatch = 1;
|
||||
|
||||
if (strife)
|
||||
{
|
||||
|
@ -713,7 +713,7 @@ FTexture *FMultiPatchTexture::GetRedirect()
|
|||
|
||||
FTexture *FMultiPatchTexture::GetRawTexture()
|
||||
{
|
||||
return NumParts == 1 ? Parts->Texture : this;
|
||||
return NumParts == 1 && UseType == ETextureType::Wall && bMultiPatch == 1 && Scale == Parts->Texture->Scale ? Parts->Texture : this;
|
||||
}
|
||||
|
||||
//==========================================================================
|
||||
|
@ -1071,7 +1071,7 @@ FMultiPatchTexture::FMultiPatchTexture (FScanner &sc, ETextureType usetype)
|
|||
TArray<TexInit> inits;
|
||||
bool bSilent = false;
|
||||
|
||||
bMultiPatch = true;
|
||||
bMultiPatch = 2;
|
||||
sc.SetCMode(true);
|
||||
sc.MustGetString();
|
||||
const char* textureName = NULL;
|
||||
|
|
|
@ -263,7 +263,7 @@ public:
|
|||
uint8_t bComplex:1; // Will be used to mark extended MultipatchTextures that have to be
|
||||
// fully composited before subjected to any kind of postprocessing instead of
|
||||
// doing it per patch.
|
||||
uint8_t bMultiPatch:1; // This is a multipatch texture (we really could use real type info for textures...)
|
||||
uint8_t bMultiPatch:2; // This is a multipatch texture (we really could use real type info for textures...)
|
||||
uint8_t bKeepAround:1; // This texture was used as part of a multi-patch texture. Do not free it.
|
||||
uint8_t bFullNameTexture : 1;
|
||||
uint8_t bBrightmapChecked : 1; // Set to 1 if brightmap has been checked
|
||||
|
|
Loading…
Reference in a new issue