diff --git a/src/g_shared/a_dynlight.cpp b/src/g_shared/a_dynlight.cpp index 73ca554d1f..4d26df1868 100644 --- a/src/g_shared/a_dynlight.cpp +++ b/src/g_shared/a_dynlight.cpp @@ -780,10 +780,10 @@ CCMD(listlights) walls=0; sectors=0; subsecs = 0; - Printf("%s at (%f, %f, %f), color = 0x%02x%02x%02x, radius = %f ", + Printf("%s at (%f, %f, %f), color = 0x%02x%02x%02x, radius = %f %s", dl->target? dl->target->GetClass()->TypeName.GetChars() : dl->GetClass()->TypeName.GetChars(), dl->X(), dl->Y(), dl->Z(), dl->args[LIGHT_RED], - dl->args[LIGHT_GREEN], dl->args[LIGHT_BLUE], dl->radius); + dl->args[LIGHT_GREEN], dl->args[LIGHT_BLUE], dl->radius, (dl->flags4 & MF4_ATTENUATE)? "attenuated" : ""); i++; if (dl->target) diff --git a/src/scripting/backend/codegen.cpp b/src/scripting/backend/codegen.cpp index 9c32e9f0f8..5c495ee20f 100644 --- a/src/scripting/backend/codegen.cpp +++ b/src/scripting/backend/codegen.cpp @@ -10528,8 +10528,12 @@ FxExpression *FxClassTypeCast::Resolve(FCompileContext &ctx) ScriptPosition.Message(MSG_OPTERROR, "Unknown class name '%s' of type '%s'", clsname.GetChars(), desttype->TypeName.GetChars()); - delete this; - return nullptr; + // When originating from DECORATE this must pass, when in ZScript it's an error that must abort the code generation here. + if (!ctx.FromDecorate) + { + delete this; + return nullptr; + } } else {