-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathEngine3D_Globals.p
157 lines (124 loc) · 3.1 KB
/
Engine3D_Globals.p
1
unit Engine3D_Globals;{ Dimensione delle variabili globali: 3262 }interfaceuses quickdraw, types, fixmath, Dream3Display_Tipi; const PolyArrayN = 1000; PolyBaseLevelsN = 500; CiconArrayN = 100; BaseSqElement = 0; BaseObject = 1; BaseSqFrontal = 2; NPCType = 3; RoofPoly = 4; Border = 9; ZBufferMax = 319; LightValues = 3; StepValue = 5; NLightValues = 3; type Poly3DBase = record CIcon : longint; PoType : integer; { 0 : SqElement; 1 : Object; 2 : SqFrontal É 9 : Border} FullMask : boolean; Seen : boolean; Location : point; RealCorner : array [0..1] of DoublePoint; Next : integer; Light : integer; Height : integer; Height0 : integer; HeightU : integer; MustIBeShown : boolean; reserved : boolean; parameter : integer; end; PolyBaseArray = array [1..PolyArrayN] of Poly3DBase; PolyBaseArrayPtr = ^PolyBaseArray; PolyBaseLevelsArray = array [1..PolyBaseLevelsN] of Poly3DBase; PolyBaseLevelsPtr = ^PolyBaseLevelsArray; FixedPoint = record X, Z : longint; end; Poly3D = record CIcon : longint; ProjCorner0, ProjCorner1 : FixedPoint; YStart0, YEnd0, YStart1, YEnd1 : integer; MiddleZ : longint; Dir : integer; XDist : integer; ZDist : integer; DYStart, DYEnd : fixed; FullMask : boolean; LightSource : boolean; PoType : integer; Next : integer; Levels : integer; BaseRef : integer; Animated : boolean; Reserved0 : boolean; parameter : integer; reserved1 : integer; end; Poly3DPtr = ^Poly3D; PolyArray = array [1..PolyArrayN] of Poly3D; PolyArrayPtr = ^PolyArray; Div64Array = array [0..1023] of fixed; Div64Ptr = ^Div64Array; DstRowTopArray = array [0..199] of longint; DstRowTopPtr = ^DstRowTopArray; SaveData = record EnvironmentID : integer; BaseN : integer; BaseOfPoly : array [0..polyArrayN] of boolean; end; SaveDataPtr = ^SaveData; SaveDataHandle = ^SaveDataPtr; TCiconIdsArray = array [1..CIconArrayN] of integer; CIconIdsArrayPtr = ^TCiconIdsArray; TrRecord = record TheIcon : ptr; TheMask : ptr; end; var PolyN : integer; PolyNTr : integer; FloorN : integer; Polys : PolyArrayPtr; PolysTr : PolyArrayPtr; PolysFloor : PolyArrayPtr; DiscreteSin : array [0..NAngles - 1] of integer; DiscreteCos : array [0..NAngles - 1] of integer; CIconArray : array [1..LightValues, 1..CIconArrayN] of ptr; TrCIconArray : array [1..LightValues, 1..20] of TrRecord; CIconIdsArray : CIconIdsArrayPtr; TrCIconIdsArray : CIconIdsArrayPtr; LoadedCiconsN : integer; LoadedTrCIconsN : integer; Base : PolyBaseArrayPtr; BaseFloor : PolyBaseArrayPtr; BaseLevels : PolyBaseLevelsPtr; BaseN : integer; BaseLevelsN : integer; BaseFloorN : integer; ZBuffer : array [-161..+161] of longint; Div64 : Div64Ptr; DstRowTop : DstRowTopPtr; implementationend.