diff --git a/polymer/eduke32/source/lunatic/con_lang.lua b/polymer/eduke32/source/lunatic/con_lang.lua index ca3f8489a..d2a24c891 100644 --- a/polymer/eduke32/source/lunatic/con_lang.lua +++ b/polymer/eduke32/source/lunatic/con_lang.lua @@ -1140,6 +1140,7 @@ lpeg.P(false) + "ifgapzl" + "iffloordistl" + "ifdead" + +"ifcutscene" + "ifcount" + "ifclient" + "ifceilingdistl" + @@ -1257,6 +1258,7 @@ lpeg.P(false) + "default" + "debug" + "debris" + +"cutscene" + "cstator" + "cstat" + "count" + diff --git a/polymer/eduke32/source/lunatic/doc/lunacon.txt b/polymer/eduke32/source/lunatic/doc/lunacon.txt index e5db65e01..a5e2261a9 100644 --- a/polymer/eduke32/source/lunatic/doc/lunacon.txt +++ b/polymer/eduke32/source/lunatic/doc/lunacon.txt @@ -354,8 +354,8 @@ Directives Run-time commands ^^^^^^^^^^^^^^^^^ -*`activatecheat`*, *`clearmapstate`*, `save`, `savenn`, *`lineintersect`*, - *`rayintersect`*, *`sectorofwall`*. +*`activatecheat`*, *`clearmapstate`*, *`cutscene`*, *`ifcutscene`*, `save`, +`savenn`, *`lineintersect`*, *`rayintersect`*, *`sectorofwall`*. Additionally, various multiplayer-related commands either unconditionally return results as if no multiplayer game is in progress, or are non-functional diff --git a/polymer/eduke32/source/lunatic/lunacon.lua b/polymer/eduke32/source/lunatic/lunacon.lua index 96284399c..8ca6dfef3 100644 --- a/polymer/eduke32/source/lunatic/lunacon.lua +++ b/polymer/eduke32/source/lunatic/lunacon.lua @@ -2951,6 +2951,8 @@ local Cinner = { starttrackvar = cmd(R) / "_con._starttrack(%1)", + cutscene = cmd(R) + / handle.NYI, getmusicposition = cmd(W) / "%1=_con._getmusicposition()", setmusicposition = cmd(R) @@ -3083,6 +3085,11 @@ local Cif = { ifactorsound = cmd(R,R) / "_con._soundplaying(%1,%2)", + ifcutscene = cmd(R) + / function (cs) + handle.NYI() + return "false" + end, ifp = (sp1 * tok.define)^1 / function (...) return format("_con._ifp(%d,_pli,_aci)", bit.bor(...)) end,