zscript-doc/api/level/Sector.md

197 lines
5.2 KiB
Markdown
Raw Permalink Normal View History

2018-12-29 16:05:19 -08:00
# Sector
TODO
```
struct Sector play
{
2019-08-14 03:32:51 -07:00
readonly color[5] AdditiveColors;
readonly FColormap ColorMap;
readonly color[5] SpecialColors;
2018-12-29 16:05:19 -08:00
2019-08-14 03:32:51 -07:00
Actor SoundTarget;
2018-12-29 16:05:19 -08:00
2019-08-14 03:32:51 -07:00
int16 LightLevel;
int16 SeqType;
int16 Special;
name SeqName;
int Sky;
readonly vector2 CenterSpot;
Actor ThingList;
int ValidCount;
double Friction;
double MoveFactor;
int TerrainNum[2];
SectorEffect CeilingData;
SectorEffect FloorData;
SectorEffect LightingData;
int NextSec;
int PrevSec;
uint8 SoundTraversed;
int8 StairLock;
readonly array<Line> Lines;
readonly SecPlane CeilingPlane;
readonly SecPlane FloorPlane;
readonly Sector HeightSec;
uint BottomMap;
uint MidMap;
uint TopMap;
int DamageAmount;
int16 DamageInterval;
name DamageType;
double Gravity;
int16 LeakyDamage;
readonly uint16 ZoneNumber;
readonly int HealthCeiling;
readonly int HealthCeilingGroup;
readonly int HealthFloor;
readonly int HealthFloorGroup;
uint Flags;
uint16 MoreFlags;
SectorAction SecActTarget;
readonly int PortalGroup;
internal uint[2] Portals;
readonly int SectorNum;
int Index();
double, Sector, F3DFloor NextHighestCeilingAt(double x, double y, double bottomz, double topz, int flags = 0);
double, Sector, F3DFloor NextLowestFloorAt(double x, double y, double z, int flags = 0, double steph = 0);
void RemoveForceField();
static clearscope Sector PointInSector(vector2 pt);
void CheckPortalPlane(int plane);
int GetCeilingLight();
int GetFloorLight();
Sector GetHeightSec();
void GetSpecial(out SecSpecial spec);
int GetTerrain(int pos);
bool PlaneMoving(int pos);
void SetSpecial(SecSpecial spec);
void TransferSpecial(Sector model);
double, double GetFriction(int plane);
double, Sector HighestCeilingAt(vector2 a);
double, Sector LowestFloorAt(vector2 a);
void AddXOffset(int pos, double o);
void AddYOffset(int pos, double o);
void ChangeFlags(int pos, int and, int or);
double GetAlpha(int pos);
double GetAngle(int pos, bool addbase = true);
int GetFlags(int pos);
color GetGlowColor(int pos);
double GetGlowHeight(int pos);
int GetPlaneLight(int pos);
int GetVisFlags(int pos);
double GetXOffset(int pos);
double GetXScale(int pos);
double GetYOffset(int pos, bool addbase = true);
double GetYScale(int pos);
void SetAdditiveColor(int pos, color cr);
void SetAlpha(int pos, double o);
void SetAngle(int pos, double o);
void SetBase(int pos, double y, double o);
void SetColor(color c, int desat = 0);
void SetFade(color c);
void SetFogDensity(int dens);
void SetGlowColor(int pos, color color);
void SetGlowHeight(int pos, double height);
void SetPlaneLight(int pos, int level);
void SetSpecialColor(int pos, color color);
void SetXOffset(int pos, double o);
void SetXScale(int pos, double o);
void SetYOffset(int pos, double o);
void SetYScale(int pos, double o);
void AdjustFloorClip();
void ChangeLightLevel(int newval);
int GetLightLevel();
double GetPlaneTexZ(int pos);
textureid GetTexture(int pos);
bool IsLinked(Sector other, bool ceiling);
void SetLightLevel(int newval);
void SetPlaneTexZ(int pos, double val, bool dirtify = false);
void SetTexture(int pos, textureid tex, bool floorclip = true);
double CenterCeiling();
double CenterFloor();
void ClearPortal(int plane);
int GetOppositePortalGroup(int plane);
vector2 GetPortalDisplacement(int plane);
double GetPortalPlaneZ(int plane);
int GetPortalType(int plane);
bool PortalBlocksMovement(int plane);
bool PortalBlocksSight(int plane);
bool PortalBlocksSound(int plane);
bool PortalBlocksView(int plane);
bool PortalIsLinked(int plane);
bool TriggerSectorActions(Actor thing, int activation);
int MoveCeiling(double speed, double dest, int crush, int direction, bool hexencrush);
int MoveFloor(double speed, double dest, int crush, int direction, bool hexencrush, bool instant = false);
Sector NextSpecialSector(int type, Sector prev);
double, Vertex FindHighestCeilingSurrounding();
double, Vertex FindHighestFloorPoint();
double, Vertex FindHighestFloorSurrounding();
double, Vertex FindLowestCeilingPoint();
double, Vertex FindLowestCeilingSurrounding();
double, Vertex FindLowestFloorSurrounding();
double, Vertex FindNextHighestCeiling();
double, Vertex FindNextHighestFloor();
double, Vertex FindNextLowestCeiling();
double, Vertex FindNextLowestFloor();
int FindMinSurroundingLight(int max);
Sector FindModelCeilingSector(double floordestheight);
Sector FindModelFloorSector(double floordestheight);
double FindShortestTextureAround();
double FindShortestUpperAround();
void SetEnvironment(string env);
void SetEnvironmentID(int envnum);
SeqNode CheckSoundSequence(int chan);
bool IsMakingLoopingSound();
SeqNode StartSoundSequence(int chan, name seqname, int modenum);
SeqNode StartSoundSequenceID(int chan, int sequence, int type, int modenum, bool nostop = false);
void StopSoundSequence(int chan);
void ClearSecret();
bool IsSecret();
bool WasSecret();
clearscope int GetHealth(SectorPart part);
void SetHealth(SectorPart part, int newhealth);
double GetUdmfFloat(name nm);
int GetUdmfInt(name nm);
string GetUdmfString(name nm);
2018-12-29 16:05:19 -08:00
}
```
2018-12-29 20:04:32 -08:00
TODO
2018-12-29 16:05:19 -08:00
<!-- EOF -->