diff --git a/polymer/eduke32/source/actors.c b/polymer/eduke32/source/actors.c index c2dda4c62..a538f3f5d 100644 --- a/polymer/eduke32/source/actors.c +++ b/polymer/eduke32/source/actors.c @@ -745,7 +745,7 @@ static int32_t move_rotfixed_sprite(int32_t j, int32_t pivotspr, int32_t daang) return 1; } -static void A_MoveSector(int i) +void A_MoveSector(int i) { // T1,T2 and T3 are used for all the sector moving stuff!!! diff --git a/polymer/eduke32/source/actors.h b/polymer/eduke32/source/actors.h index 12e6d07fe..9c54b5da7 100644 --- a/polymer/eduke32/source/actors.h +++ b/polymer/eduke32/source/actors.h @@ -307,6 +307,7 @@ void A_DoGutsDir(int32_t sp,int32_t gtype,int32_t n); int32_t A_IncurDamage(int32_t sn); void A_MoveCyclers(void); void A_MoveDummyPlayers(void); +void A_MoveSector(int i); void A_PlayAlertSound(int32_t i); void A_RadiusDamage(int32_t i,int32_t r,int32_t hp1,int32_t hp2,int32_t hp3,int32_t hp4); void A_SpawnMultiple(int32_t sp,int32_t pic,int32_t n); diff --git a/polymer/eduke32/source/gamedef.c b/polymer/eduke32/source/gamedef.c index ee2bf0af7..1a0b9edf7 100644 --- a/polymer/eduke32/source/gamedef.c +++ b/polymer/eduke32/source/gamedef.c @@ -574,6 +574,7 @@ const char *keyw[] = "ifvarle", // 392 "ifvarge", // 393 "ifvarboth", // 394 + "movesector", // 395 "" }; #endif @@ -4012,6 +4013,7 @@ DO_DEFSTATE: case CON_SETMUSICPOSITION: case CON_STARTCUTSCENE: case CON_RESETPLAYERFLAGS: + case CON_MOVESECTOR: C_GetNextVar(); continue; diff --git a/polymer/eduke32/source/gamedef.h b/polymer/eduke32/source/gamedef.h index 23dc8cde8..f17b3d942 100644 --- a/polymer/eduke32/source/gamedef.h +++ b/polymer/eduke32/source/gamedef.h @@ -1069,6 +1069,7 @@ enum ScriptKeywords_t CON_IFVARLE, // 392 CON_IFVARGE, // 393 CON_IFVARBOTH, // 394 + CON_MOVESECTOR, // 395 CON_END }; // KEEPINSYNC with the keyword list in lunatic/con_lang.lua diff --git a/polymer/eduke32/source/gameexec.c b/polymer/eduke32/source/gameexec.c index abb675e41..269f557d9 100644 --- a/polymer/eduke32/source/gameexec.c +++ b/polymer/eduke32/source/gameexec.c @@ -2554,6 +2554,11 @@ nullquote: G_InitTimer(Gv_GetVarX(*insptr++)); continue; + case CON_MOVESECTOR: + insptr++; + A_MoveSector(Gv_GetVarX(*insptr++)); + continue; + case CON_TIME: insptr += 2; continue;