//************************************************************************** //** //** zspecials.acs //** //************************************************************************** special // 1:Polyobj_StartLine 2:Polyobj_RotateLeft(3), 3:Polyobj_RotateRight(3), 4:Polyobj_Move(4), // 5:Polyobj_ExplicitLine 6:Polyobj_MoveTimes8(4), 7:Polyobj_DoorSwing(4), 8:Polyobj_DoorSlide(5), 9:Line_Horizon(0), 10:Door_Close(2,3), 11:Door_Open(2,3), 12:Door_Raise(3,4), 13:Door_LockedRaise(4,5), 14:Door_Animated(3,4), 15:Autosave(0), // 16:Transfer_WallLight 17:Thing_Raise(1,2), 18:StartConversation(1,2), 19:Thing_Stop(1), 20:Floor_LowerByValue(3,4), 21:Floor_LowerToLowest(2,3), 22:Floor_LowerToNearest(2,3), 23:Floor_RaiseByValue(3,5), 24:Floor_RaiseToHighest(2,5), 25:Floor_RaiseToNearest(2,4), 26:Stairs_BuildDown(5), 27:Stairs_BuildUp(5), 28:Floor_RaiseAndCrush(3,4), 29:Pillar_Build(3), 30:Pillar_Open(4), 31:Stairs_BuildDownSync(4), 32:Stairs_BuildUpSync(4), 33:ForceField(0), 34:ClearForceField(1), 35:Floor_RaiseByValueTimes8(3,5), 36:Floor_LowerByValueTimes8(3,4), 37:Floor_MoveToValue(3,5), 38:Ceiling_Waggle(5), 39:Teleport_ZombieChanger(2), 40:Ceiling_LowerByValue(3,5), 41:Ceiling_RaiseByValue(3,4), 42:Ceiling_CrushAndRaise(3,4), 43:Ceiling_LowerAndCrush(3,4), 44:Ceiling_CrushStop(1,2), 45:Ceiling_CrushRaiseAndStay(3,4), 46:Floor_CrushStop(1), 47:Ceiling_MoveToValue(3,5), // 48:Sector_Attach3dMidtex 49:GlassBreak(0,2), // 50:ExtraFloor_LightOnly 51:Sector_SetLink(4), 52:Scroll_Wall(5), 53:Line_SetTextureOffset(5), 54:Sector_ChangeFlags(3), 55:Line_SetBlocking(3), 56:Line_SetTextureScale(5), // 57: Sector_SetPortal // 58: Sector_CopyScroller 59:Polyobj_OR_MoveToSpot(3), 60:Plat_PerpetualRaise(3), 61:Plat_Stop(1,2), 62:Plat_DownWaitUpStay(3), 63:Plat_DownByValue(4), 64:Plat_UpWaitDownStay(3), 65:Plat_UpByValue(4), 66:Floor_LowerInstant(3,4), 67:Floor_RaiseInstant(3,5), 68:Floor_MoveToValueTimes8(4,5), 69:Ceiling_MoveToValueTimes8(4,5), 70:Teleport(1,3), 71:Teleport_NoFog(1,4), 72:ThrustThing(2,4), 73:DamageThing(1,2), 74:Teleport_NewMap(2,3), 75:Teleport_EndGame(0), 76:TeleportOther(3), 77:TeleportGroup(5), 78:TeleportInSector(4,5), 79:Thing_SetConversation(2), 80:ACS_Execute(2,5), 81:ACS_Suspend(2), 82:ACS_Terminate(2), 83:ACS_LockedExecute(5), 84:ACS_ExecuteWithResult(1,5), 85:ACS_LockedExecuteDoor(5), 86:Polyobj_MoveToSpot(3), 87:Polyobj_Stop(1), 88:Polyobj_MoveTo(4), 89:Polyobj_OR_MoveTo(4), 90:Polyobj_OR_RotateLeft(3), 91:Polyobj_OR_RotateRight(3), 92:Polyobj_OR_Move(4), 93:Polyobj_OR_MoveTimes8(4), 94:Pillar_BuildAndCrush(4,5), 95:FloorAndCeiling_LowerByValue(3), 96:FloorAndCeiling_RaiseByValue(3), 97:Ceiling_LowerAndCrushDist(3,5), 98:Sector_SetTranslucent(3,4), 99:Floor_RaiseAndCrushDoom(3,4), // 100:Scroll_Texture_Left // 101:Scroll_Texture_Right // 102:Scroll_Texture_Up // 103:Scroll_Texture_Down 104:Ceiling_CrushAndRaiseSilentDist(4,5), 105:Door_WaitRaise(4,5), 106:Door_WaitClose(3,4), 107:Line_SetPortalTarget(2), 109:Light_ForceLightning(1), 110:Light_RaiseByValue(2), 111:Light_LowerByValue(2), 112:Light_ChangeToValue(2), 113:Light_Fade(3), 114:Light_Glow(4), 115:Light_Flicker(3), 116:Light_Strobe(5), 117:Light_Stop(1), // 118:Plane_Copy 119:Thing_Damage(2,3), 120:Radius_Quake(5), // 121:Line_SetIdentification 125:Thing_Move(2,3), 127:Thing_SetSpecial(5), 128:ThrustThingZ(4), 129:UsePuzzleItem(0), // only for setting it on a line. Cannot be called! 130:Thing_Activate(1), 131:Thing_Deactivate(1), 132:Thing_Remove(1), 133:Thing_Destroy(1,3), 134:Thing_Projectile(5), 135:Thing_Spawn(3,4), 136:Thing_ProjectileGravity(5), 137:Thing_SpawnNoFog(3,4), 138:Floor_Waggle(5), 139:Thing_SpawnFacing(2,4), 140:Sector_ChangeSound(2), 143:Player_RemoveItem(2), // Skulltag Functions 144:Player_GiveItem(2), // Skulltag Functions 145:Player_SetTeam(1), // Skulltag Functions 150:Line_SetHealth(2), 151:Sector_SetHealth(3), 152:Team_Score(2), // Skulltag Functions 153:Team_GivePoints(3), // Skulltag Functions 154:Teleport_NoStop(2, 3), 157:SetGlobalFogParameter(2), // GZDoom only! 158:FS_Execute(1,4), 159:Sector_SetPlaneReflection(3), // GZDoom only! // 160:Sector_Set3DFloor // 161:Sector_SetContents 168:Ceiling_CrushAndRaiseDist(3,5), 169:Generic_Crusher2(5), 170:Sector_SetCeilingScale2(3), 171:Sector_SetFloorScale2(3), 172:Plat_UpNearestWaitDownStay(3), 173:NoiseAlert(2), 174:SendToCommunicator(4), 175:Thing_ProjectileIntercept(5), 176:Thing_ChangeTID(2), 177:Thing_Hate(2,3), 178:Thing_ProjectileAimed(4,5), 179:ChangeSkill(1), 180:Thing_SetTranslation(2), // 181:Plane_Align, 182:Line_Mirror(0), 183:Line_AlignCeiling(2), 184:Line_AlignFloor(2), 185:Sector_SetRotation(3), 186:Sector_SetCeilingPanning(5), 187:Sector_SetFloorPanning(5), 188:Sector_SetCeilingScale(5), 189:Sector_SetFloorScale(5), 191:SetPlayerProperty(3), 192:Ceiling_LowerToHighestFloor(2,5), 193:Ceiling_LowerInstant(3,5), 194:Ceiling_RaiseInstant(3,4), 195:Ceiling_CrushRaiseAndStayA(4,5), 196:Ceiling_CrushAndRaiseA(4,5), 197:Ceiling_CrushAndRaiseSilentA(4,5), 198:Ceiling_RaiseByValueTimes8(3,4), 199:Ceiling_LowerByValueTimes8(3,5), 200:Generic_Floor(5), 201:Generic_Ceiling(5), 202:Generic_Door(5), 203:Generic_Lift(5), 204:Generic_Stairs(5), 205:Generic_Crusher(5), 206:Plat_DownWaitUpStayLip(4,5), 207:Plat_PerpetualRaiseLip(4), 208:TranslucentLine(2,3), // 209:Transfer_Heights, // 210:Transfer_FloorLight, // 211:Transfer_CeilingLight, 212:Sector_SetColor(4,5), 213:Sector_SetFade(4), 214:Sector_SetDamage(3,5), 215:Teleport_Line(2,3), 216:Sector_SetGravity(3), 217:Stairs_BuildUpDoom(5), 218:Sector_SetWind(4), 219:Sector_SetFriction(2), 220:Sector_SetCurrent(4), 221:Scroll_Texture_Both(5), // 222:Scroll_Texture_Model, 223:Scroll_Floor(4), 224:Scroll_Ceiling(4), // 225:Scroll_Texture_Offsets, 226:ACS_ExecuteAlways(2,5), // 227:PointPush_SetForce, 228:Plat_RaiseAndStayTx0(2,3), 229:Thing_SetGoal(3,4), 230:Plat_UpByValueStayTx(3), 231:Plat_ToggleCeiling(1), 232:Light_StrobeDoom(3), 233:Light_MinNeighbor(1), 234:Light_MaxNeighbor(1), 235:Floor_TransferTrigger(1), 236:Floor_TransferNumeric(1), 237:ChangeCamera(3), 238:Floor_RaiseToLowestCeiling(2,5), 239:Floor_RaiseByValueTxTy(3), 240:Floor_RaiseByTexture(2,4), 241:Floor_LowerToLowestTxTy(2), 242:Floor_LowerToHighest(3,4), 243:Exit_Normal(1), 244:Exit_Secret(1), 245:Elevator_RaiseToNearest(2), 246:Elevator_MoveToFloor(2), 247:Elevator_LowerToNearest(2), 248:HealThing(1,2), 249:Door_CloseWaitOpen(3, 4), 250:Floor_Donut(3), 251:FloorAndCeiling_LowerRaise(3,4), 252:Ceiling_RaiseToNearest(2,3), 253:Ceiling_LowerToLowest(2,4), 254:Ceiling_LowerToFloor(2,5), 255:Ceiling_CrushRaiseAndStaySilA(4,5), // These are specialized versions of the Generic_* specials which are defined for EE Extradata. 256:Floor_LowerToHighestEE(2, 3), 257:Floor_RaiseToLowest(2, 3), 258:Floor_LowerToLowestCeiling(2,3), 259:Floor_RaiseToCeiling(2, 5), 260:Floor_ToCeilingInstant(1, 4), 261:Floor_LowerByTexture(2, 3), 262:Ceiling_RaiseToHighest(2, 3), 263:Ceiling_ToHighestInstant(1, 3), 264:Ceiling_LowerToNearest(2, 4), 265:Ceiling_RaiseToLowest(2, 3), 266:Ceiling_RaiseToHighestFloor(2, 3), 267:Ceiling_ToFloorInstant(1, 4), 268:Ceiling_RaiseByTexture(2, 3), 269:Ceiling_LowerByTexture(2, 4), 270:Stairs_BuildDownDoom(5), 271:Stairs_BuildUpDoomSync(4), 272:Stairs_BuildDownDoomSync(4), // New additions can go above 255 now. 273:Stairs_BuildUpDoomCrush(5), 274:Door_AnimatedClose(2), 275:Floor_Stop(1), 276:Ceiling_Stop(1), 277:Sector_SetFloorGlow(5), 278:Sector_SetCeilingGlow(5), 279:Floor_MoveToValueAndCrush(4, 5), 280:Ceiling_MoveToValueAndCrush(4, 5), 281:Line_SetAutomapFlags(3), 282:Line_SetAutomapStyle(2), 283:Polyobj_StopSound(1), // new to Eternity // 300:Portal_Define(5), // 301:Line_QuickPortal(1), // internal functions have negative values -1:GetLineUDMFInt(2), -2:GetLineUDMFFixed(2), -3:GetThingUDMFInt(2), -4:GetThingUDMFFixed(2), -5:GetSectorUDMFInt(2), -6:GetSectorUDMFFixed(2), -7:GetSideUDMFInt(3), -8:GetSideUDMFFixed(3), -9:GetActorVelX(1), -10:GetActorVelY(1), -11:GetActorVelZ(1), -12:SetActivator(1,2), -13:SetActivatorToTarget(1), -14:GetActorViewHeight(1), -15:GetChar(2), -16:GetAirSupply(1), -17:SetAirSupply(2), -18:SetSkyScrollSpeed(2), -19:GetArmorType(2), -20:SpawnSpotForced(4), -21:SpawnSpotFacingForced(3), -22:CheckActorProperty(3), -23:SetActorVelocity(6), -24:SetUserVariable(3), -25:GetUserVariable(2), -26:Radius_Quake2(6), -27:CheckActorClass(2), -28:SetUserArray(4), -29:GetUserArray(3), -30:SoundSequenceOnActor(2), -31:SoundSequenceOnSector(3), -32:SoundSequenceOnPolyobj(2), -33:GetPolyobjX(1), -34:GetPolyobjY(1), -35:CheckSight(3), -36:SpawnForced(4,6), -37:AnnouncerSound(2), -38:SetPointer(2,4), -39:ACS_NamedExecute(2,5), -40:ACS_NamedSuspend(2), -41:ACS_NamedTerminate(2), -42:ACS_NamedLockedExecute(5), -43:ACS_NamedLockedExecuteDoor(5), -44:ACS_NamedExecuteWithResult(1,5), -45:ACS_NamedExecuteAlways(2,5), -46:UniqueTID(0,2), -47:IsTIDUsed(1), -48:Sqrt(1), -49:FixedSqrt(1), -50:VectorLength(2), -51:SetHUDClipRect(4,6), -52:SetHUDWrapWidth(1), -53:SetCVar(2), -54:GetUserCVar(2), -55:SetUserCVar(3), -56:GetCVarString(1), -57:SetCVarString(2), -58:GetUserCVarString(2), -59:SetUserCVarString(3), -60:LineAttack(4,9), -61:PlaySound(2,7), -62:StopSound(1,2), -63:strcmp(2,3), -64:stricmp(2,3), -64:strcasecmp(2,3), // an alias for stricmp -65:StrLeft(2), -66:StrRight(2), -67:StrMid(3), -68:GetActorClass(1), -69:GetWeapon(0), -70:SoundVolume(3), -71:PlayActorSound(2,6), -72:SpawnDecal(2,6), -73:CheckFont(1), -74:DropItem(2,4), -75:CheckFlag(2), -76:SetLineActivation(2, 3), -77:GetLineActivation(1), -78:GetActorPowerupTics(2), -79:ChangeActorAngle(2,3), -80:ChangeActorPitch(2,3), -81:GetArmorInfo(1), -82:DropInventory(2), -83:PickActor(5,8), -84:IsPointerEqual(2,4), -85:CanRaiseActor(1), -86:SetActorTeleFog(3), -87:SwapActorTeleFog(1), -88:SetActorRoll(2), -89:ChangeActorRoll(2,3), -90:GetActorRoll(1), -91:QuakeEx(8,16), -92:Warp(6,11), -93:GetMaxInventory(2), -94:SetSectorDamage(2,5), -95:SetSectorTerrain(3), -96:SpawnParticle(1,16), -97:SetMusicVolume(1), -98:CheckProximity(3, 6), -99:CheckActorState(2,3), // Zandronum's -100:ResetMap(0), -101:PlayerIsSpectator(1), -102:ConsolePlayerNumber(0), -103:GetTeamProperty(2), -104:GetPlayerLivesLeft(1), -105:SetPlayerLivesLeft(2), -106:KickFromGame(2), -107:GetGamemodeState(0), -108:SetDBEntry(3), -109:GetDBEntry(2), -110:SetDBEntryString(3), -111:GetDBEntryString(2), -112:IncrementDBEntry(3), -113:PlayerIsLoggedIn(1), -114:GetPlayerAccountName(1), -115:SortDBEntries(4), -116:CountDBResults(1), -117:FreeDBResults(1), -118:GetDBResultKeyString(2), -119:GetDBResultValueString(2), -120:GetDBResultValue(2), -121:GetDBEntryRank(3), -122:RequestScriptPuke(4), -123:BeginDBTransaction(0), -124:EndDBTransaction(0), -125:GetDBEntries(1), // -1xx are reserved for Zandronum -200:CheckClass(1), -201:DamageActor(6), // [arookas] -202:SetActorFlag(3), -203:SetTranslation(2), -204:GetActorFloorTexture(1), -205:GetActorFloorTerrain(1), -206:StrArg(1), -207:Floor(1), -208:Round(1), -209:Ceil(1), -210:ScriptCall(2, 100), // ACS does not know varargs so use something large as maximum. -211:StartSlideshow(1), -212:GetSectorHealth(2), -213:GetLineHealth(1), -214:SetSubtitleNumber(2), // Eternity's -300:GetLineX(3), -301:GetLineY(3), -302:SetAirFriction(1), // GZDoom OpenGL -400:SetSectorGlow(6), -401:SetFogDensity(2), // ZDaemon's -19620:GetTeamScore(1), -19621:SetTeamScore(2), -100000:__EndOfList__(10);