Vector
Type Aliases
Section titled “Type Aliases”SerializedVector
Section titled “SerializedVector”SerializedVector =
Readonly<LuaMap<string,unknown>> &object
Defined in: packages/isaacscript-common/src/functions/vector.ts:18
Type Declaration
Section titled “Type Declaration”__serializedVectorBrand
Section titled “__serializedVectorBrand”
readonly__serializedVectorBrand:symbol
__kind
Section titled “__kind”
readonly__kind:CopyableIsaacAPIClassType.VECTOR
Functions
Section titled “Functions”copyVector()
Section titled “copyVector()”copyVector(
vector):Vector
Defined in: packages/isaacscript-common/src/functions/vector.ts:27
Helper function to copy a Vector Isaac API class.
Parameters
Section titled “Parameters”vector
Section titled “vector”Vector
Returns
Section titled “Returns”Vector
deserializeVector()
Section titled “deserializeVector()”deserializeVector(
vector):Vector
Defined in: packages/isaacscript-common/src/functions/vector.ts:41
Helper function to convert a SerializedVector object to a normal RNG object. (This is used by
the save data manager when reading data from the “save#.dat” file.)
Parameters
Section titled “Parameters”vector
Section titled “vector”Returns
Section titled “Returns”Vector
doesVectorHaveLength()
Section titled “doesVectorHaveLength()”doesVectorHaveLength(
vector,threshold?):boolean
Defined in: packages/isaacscript-common/src/functions/vector.ts:73
Helper function to measure a vector to see if it has a non-zero length using a threshold to ignore extremely small values.
Use this function instead of explicitly checking if the length is 0 because vectors in the game are unlikely to ever be exactly set to 0. Instead, they will always have some miniscule length.
Parameters
Section titled “Parameters”vector
Section titled “vector”Vector
The vector to measure.
threshold?
Section titled “threshold?”number = 0.01
Optional. The threshold from 0 to consider to be a non-zero vector. Default is 0.01.
Returns
Section titled “Returns”boolean
getClosestVectorTo()
Section titled “getClosestVectorTo()”getClosestVectorTo(
referenceVector,vectors):Vector|undefined
Defined in: packages/isaacscript-common/src/functions/vector.ts:87
Given an array of vectors, this helper function returns the closest one to a provided reference vector.
Parameters
Section titled “Parameters”referenceVector
Section titled “referenceVector”Vector
The vector to compare against.
vectors
Section titled “vectors”readonly Vector[]
The array of vectors to look through.
Returns
Section titled “Returns”Vector | undefined
getRandomVector()
Section titled “getRandomVector()”getRandomVector(
seedOrRNG):Readonly<Vector>
Defined in: packages/isaacscript-common/src/functions/vector.ts:119
Helper function to get a random vector between (-1, -1) and (1, 1).
To get random vectors with a bigger length, multiply this with a number.
Use this over the RandomVector function when you need the vector to be seeded.
If you want to generate an unseeded vector, you must explicitly pass undefined to the
seedOrRNG parameter.
Parameters
Section titled “Parameters”seedOrRNG
Section titled “seedOrRNG”RNG | Seed | undefined
The Seed or RNG object to use. If an RNG object is provided, the
RNG.Next method will be called. If undefined is provided, it will default to
a random seed.
Returns
Section titled “Returns”Readonly<Vector>
isSerializedVector()
Section titled “isSerializedVector()”isSerializedVector(
object):object is SerializedVector
Defined in: packages/isaacscript-common/src/functions/vector.ts:134
Used to determine is the given table is a serialized Vector object created by the deepCopy
function.
Parameters
Section titled “Parameters”object
Section titled “object”unknown
Returns
Section titled “Returns”object is SerializedVector
isVector()
Section titled “isVector()”isVector(
object):object is Vector
Defined in: packages/isaacscript-common/src/functions/vector.ts:145
Helper function to check if something is an instantiated Vector object.
Parameters
Section titled “Parameters”object
Section titled “object”unknown
Returns
Section titled “Returns”object is Vector
serializeVector()
Section titled “serializeVector()”serializeVector(
vector):SerializedVector
Defined in: packages/isaacscript-common/src/functions/vector.ts:153
Helper function to convert a Vector object to a SerializedVector object. (This is used by the
save data manager when writing data from the “save#.dat” file.)
Parameters
Section titled “Parameters”vector
Section titled “vector”Vector
Returns
Section titled “Returns”vectorEquals()
Section titled “vectorEquals()”vectorEquals(
vector1,vector2):boolean
Defined in: packages/isaacscript-common/src/functions/vector.ts:172
Helper function to compare two vectors for equality.
This function is useful because vectors are not directly comparable. In other words, Vector(1.2) === Vector(1.2) will be equal to false.
Parameters
Section titled “Parameters”vector1
Section titled “vector1”Vector
vector2
Section titled “vector2”Vector
Returns
Section titled “Returns”boolean
vectorToDirection()
Section titled “vectorToDirection()”vectorToDirection(
vector):Direction
Defined in: packages/isaacscript-common/src/functions/vector.ts:177
Helper function for finding out which way a vector is pointing.
Parameters
Section titled “Parameters”vector
Section titled “vector”Vector
Returns
Section titled “Returns”Direction
vectorToString()
Section titled “vectorToString()”vectorToString(
vector,round?):string
Defined in: packages/isaacscript-common/src/functions/vector.ts:189
Helper function to convert a vector to a string.
Parameters
Section titled “Parameters”vector
Section titled “vector”Vector
The vector to convert.
round?
Section titled “round?”boolean = false
Optional. If true, will round the vector values to the nearest integer. Default is false.
Returns
Section titled “Returns”string
