enable ANIMATE feature for default sky and SKYDEFS (#2236)

This commit is contained in:
Roman Fomin 2025-04-05 23:11:35 +07:00 committed by GitHub
parent 4b8e9f7cd2
commit 4a057a6deb
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 11 additions and 11 deletions

View File

@ -416,9 +416,9 @@ static void DrawSkyFire(visplane_t *pl, fire_t *fire)
static void DrawSkyTex(visplane_t *pl, skytex_t *skytex)
{
int texture = R_TextureNumForName(skytex->name);
int texture = texturetranslation[skytex->texture];
dc_texturemid = skytex->mid * FRACUNIT;
dc_texturemid = skytex->mid;
dc_texheight = textureheight[texture] >> FRACBITS;
dc_iscale = FixedMul(skyiscale, skytex->scaley);
@ -551,7 +551,7 @@ static void do_draw_mbf_sky(visplane_t *pl)
else // Normal Doom sky, only one allowed per level
{
dc_texturemid = skytexturemid; // Default y-offset
texture = skytexture; // Default texture
texture = texturetranslation[skytexture]; // Default texture
flip = 0; // Doom flips it
}

View File

@ -162,7 +162,7 @@ static void InitSky(void)
array_foreach(sky, skydefs->skies)
{
if (skytexture == R_CheckTextureNumForName(sky->skytex.name))
if (skytexture == sky->skytex.texture)
{
if (sky->type == SkyType_Fire)
{

View File

@ -20,6 +20,7 @@
#include "m_fixed.h"
#include "m_json.h"
#include "m_misc.h"
#include "r_data.h"
static boolean ParseFire(json_t *json, fire_t *out)
{
@ -47,13 +48,12 @@ static boolean ParseFire(json_t *json, fire_t *out)
static boolean ParseSkyTex(json_t *json, skytex_t *out)
{
json_t *name = JS_GetObject(json, "name");
if (!JS_IsString(name))
const char *name = JS_GetStringValue(json, "name");
if (!name)
{
out->name = "-"; // no texture
return false;
}
out->name = M_StringDuplicate(JS_GetString(name));
out->texture = R_TextureNumForName(name);
json_t *mid = JS_GetObject(json, "mid");
json_t *scrollx = JS_GetObject(json, "scrollx");
@ -66,7 +66,7 @@ static boolean ParseSkyTex(json_t *json, skytex_t *out)
{
return false;
}
out->mid = JS_GetNumber(mid);
out->mid = JS_GetNumber(mid) * FRACUNIT;
const double ticratescale = 1.0 / TICRATE;
out->scrollx = (JS_GetNumber(scrollx) * ticratescale) * FRACUNIT;
out->scrolly = (JS_GetNumber(scrolly) * ticratescale) * FRACUNIT;

View File

@ -33,8 +33,8 @@ typedef struct fire_s
typedef struct
{
const char *name;
double mid;
int texture;
fixed_t mid;
fixed_t scrollx;
fixed_t currx;
fixed_t prevx;