From ba2b9430f8e91e87d79046dee7ed8d5811690c71 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Thu, 29 Nov 2018 19:00:25 +0100 Subject: [PATCH] ChangeStatNum must not be virtual Overriding this would make the engine vulnerable to badly behaving mods. Intercepting this and altering the behavior can render the entire game inoperable, especially if more internal code gets scriptified later. So even at the risk of breaking some carelsss mods this must be blocked. --- wadsrc/static/zscript/base.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wadsrc/static/zscript/base.txt b/wadsrc/static/zscript/base.txt index cc7c3abbb..98aa33e7e 100644 --- a/wadsrc/static/zscript/base.txt +++ b/wadsrc/static/zscript/base.txt @@ -452,7 +452,7 @@ class Thinker : Object native play virtual native void Tick(); virtual native void PostBeginPlay(); - virtual native void ChangeStatNum(int stat); + virtual void ChangeStatNum(int stat); static clearscope int Tics2Seconds(int tics) {