diff --git a/src/p_spec.cpp b/src/p_spec.cpp index e287ef047..0bd3d9fdb 100644 --- a/src/p_spec.cpp +++ b/src/p_spec.cpp @@ -248,18 +248,20 @@ DEFINE_ACTION_FUNCTION(_Line, Activate) PARAM_POINTER(mo, AActor); PARAM_INT(side); PARAM_INT(activationType); - PARAM_FLOAT_DEF(optx); - PARAM_FLOAT_DEF(opty); - PARAM_FLOAT_DEF(optz); - if ( optx == opty == optz == NAN ) - { - ACTION_RETURN_BOOL(P_ActivateLine(self, mo, side, activationType, NULL)); - } - else - { - DVector3 optpos = DVector3(optx, opty, optz); - ACTION_RETURN_BOOL(P_ActivateLine(self, mo, side, activationType, &optpos)); - } + ACTION_RETURN_BOOL(P_ActivateLine(self, mo, side, activationType, NULL)); +} + +DEFINE_ACTION_FUNCTION(_Line, RemoteActivate) +{ + PARAM_SELF_PROLOGUE(line_t); + PARAM_POINTER(mo, AActor); + PARAM_INT(side); + PARAM_INT(activationType); + PARAM_FLOAT(optx); + PARAM_FLOAT(opty); + PARAM_FLOAT(optz); + DVector3 optpos = DVector3(optx, opty, optz); + ACTION_RETURN_BOOL(P_ActivateLine(self, mo, side, activationType, &optpos)); } //============================================================================ diff --git a/wadsrc/static/zscript/mapdata.txt b/wadsrc/static/zscript/mapdata.txt index d7373d766..4267b7b05 100644 --- a/wadsrc/static/zscript/mapdata.txt +++ b/wadsrc/static/zscript/mapdata.txt @@ -156,7 +156,8 @@ struct Line native play native Line getPortalDestination(); native int getPortalAlignment(); native int Index(); - native bool Activate(Actor activator, int side, int type, Vector3 pos = (double.nan, double.nan, double.nan)); + native bool Activate(Actor activator, int side, int type); + native bool RemoteActivate(Actor activator, int side, int type, Vector3 pos); int GetUDMFInt(Name nm) {