Hello,
I have generated a list of classes, methods, and functions that would be nice to have re-exposed or added back. I have made care to not request something that already exists but was moved (e.g. Math.SignFloat is now float.Sign).
Each class is separated into bold headers. Each bullet point starts off with the name of the function to be implemented within that class. If necessary further information will be provided in the same line such as the original source of the function name and its class.
typename
- SetVariableValue: Class method EnScript.SetClassVar. No such method existed in typename but did in the class EnScript which has been removed.
EnumTools: Just a helper class, functionality already exists through typename
- EnumToString
- StringToEnum
- GetEnumSize
- GetLastEnumValue
array<Class T>
- Reserve
- InsertArray
- Invert
- MoveIndex
- ShuffleArray
map<Class TKey,Class TValue>
- GetKeyArray
- GetValueArray
- GetKeyByValueChecked
string
- HexToInt
- SubstringInverted
- Set
- Parse: Creates a ParseHandle for the string. Was class method string.ParseString[Ex].
ParseHandle: Merges BeginParse/ParseLine/EndParse and string.ParseString[Ex] from DayZ
- ParseToken: Return a bool if it is the end of the string or file. Has out parameters for token and type
vector
- RandomDir
- RandomDirXZ: Class method vector.RandomDir2D
- RotateAroundZeroDeg
- RotateAroundZeroRad
- RotateAroundZero
- RotateAroundPoint
- ArrayToVec
System
- GetTickCount: Global function TickCount. Unlike Reforger it returns the number of CPU ticks which is more beneficial. GetTickCount should instead be renamed to GetMSCount
Physics
- ApplyTorqueImpulse: Global function dBodyApplyTorqueImpulse, was exposed directly from Bullet API
- GetInvInertiaDiagLocal: Global function dBodyGetInvInertiaDiagLocal, was exposed directly from Bullet API
- ComputeImpulseDenominator: Global function dBodyComputeImpulseDenominator, was exposed directly from Bullet API
- ComputeAngularImpulseDenominator: Global function dBodyComputeAngularImpulseDenominator, was exposed directly from Bullet API
- GetLocalInertia: Global function dBodyGetLocalInertia, was exposed directly from Bullet API
- GetInvInertiaTensorWorld: Global function dBodyGetInvInertiaTensorWorld, was exposed directly from Bullet API
PhysicsWorld
- RayCast: Class method DayZPhyics.RayCastBullet. Not properly working in DayZ but still has its uses (https://feedback.bistudio.com/T150488)
- SphereCast: Class method DayZPhyics.SphereCastBullet. Not properly working in DayZ but still has its uses (https://feedback.bistudio.com/T150488)
Math
- GetNumberOfSetBits
- GetNthBitSet
- NormalizeAngle
- DiffAngle
- ModFloat
- RemainderFloat
- SqrFloat
- SqrInt
- Atan
- WrapFloat
- WrapFloatInclusive
- WrapFloat0X
- WrapFloat0XInclusive
- WrapInt
- WrapInt0X
- IsInRange
- IsInRangeInt
- AreaOfRightTriangle
- HypotenuseOfRightTriangle
Math2D
- IsPointInCircle: Class method Math.IsPointInCircle
- IsPointInRectangle: Class method Math.IsPointInRectangle
Math3D
- ClipLine
- IntersectCylinderOBB
- IntersectRayCylinder
- IntersectSphereBox
- NearestPoint
- AngleFromPosition
Debug
- DumpStackString: Global function DumpStackString
Shape
- SetDirection
- SetPosition
- CreateFrustum
- CreateArrow
- CreateMatrix
BaseWorld
- GetWaterDepth: Class method CGame.GetWaterDepth, was originally CGame.IsPointUnderWater
Tuple7: Class Param7
Tuple8: Class Param8
BaseAnimPhysComponent: There may be additional work after this with animations and network synchronization
- LinkToLocalSpaceOf: Class method Human.LinkToLocalSpaceOf.
- UnlinkFromLocalSpace: Class method Human.UnlinkFromLocalSpace.
AnimationControllerComponent
- CallCommand: Class method DayZPlayer.AnimCallCommand
- SetFloat: Class method DayZPlayer.AnimSetFloat
- SetInt: Class method DayZPlayer.AnimSetInt
- SetBool: : Class method DayZPlayer.AnimSetBool
- IsEvent: Doesn't exist in DayZ
- IsTag: Doesn't exist in DayZ