Skip to content
Mtax edited this page Jul 25, 2023 · 1 revision

Description

Constructs a Buffer, which is a region of memory. Primarly used while moving data between places, such as through network or into files.

It contains data without consistent structure, where bytes of separate data pieces are lined up after another. To write or read them individually, the amount of bytes for each piece of data needs to be expressed by {constant:buffer_[dataType]}. These constants can be known on the reading end or expected to be included inside the Buffer itself, to be read and then used to read data with that type.

The size of a data piece marks its end and the start usually does not need to be known, as each Buffer keeps track of its seek position when writing and reading data. That position is automatically advanced by the size of data that has been passed through, to be ready to work with the next piece of data. That position can be read and changed using respective methods, getSeekPosition() and setSeekPosition() methods, respectively. To set that position, {constant:buffer_seek_*} is used to set it either to the start of the data, the end or relative to current position. This position is set to start by default. If data was placed in the Buffer by means not requiring data types to be specified, that position will not be changed. Otherwise, writing data in such way will modify the seek position and it will need to be set before data when reading it.

Creating a Buffer is done by specifying {constant:buffer_[bufferType]}, which can put a limit to its size in physical memory and how it can be used. Grow type is universal, as it does have a limit of size and data types. This information can be obtained using getSize() and getType().
Alignment of the data can also be declared upon creation, obtained with getAlignment(). This is the amount of bytes the seek position travels through while writing and reading data, allowing space to be left in between of data pieces. This is generally not required within GameMaker Language itself and is used mostly while working with external systems. If not needed, it can remain at the default of 1.

Specification

Destruction
Elements
Buffer.destroy()
None

Properties

Name
Type
Modifiable
ID
{int:buffer}
No

Construction types

Name
Arguments
New constructor
size {int}
type {constant:buffer_[bufferType]}
aligment? {int}
Wrapper
other {int:buffer}
Empty
Constructor copy
other {Buffer}
Contents

Constructors
Container
Angle
Management
isFunctional()
Getters
equals()
difference()
Setters
set()
modify()
Conversion
toString()
Color2
Management
isFunctional()
Setters
reverse()
set()
setAll()
Conversion
toString()
toArray()
Color3
Management
isFunctional()
Setters
reverse()
set()
setAll()
Conversion
toString()
toArray()
Color4
Management
isFunctional()
Setters
reverse()
set()
setAll()
Conversion
toString()
toArray()
split()
DateTime
Management
isFunctional()
Getters
compareDateTime()
compareDate()
compareTime()
spanOfYears()
spanOfMonths()
spanOfWeeks()
spanOfDays()
spanOfHours()
spanOfMinutes()
spanOfSeconds()
getDate()
getTime()
getDaysInYear()
getDaysInMonth()
getWeekOfYear()
getDayOfYear()
getHourOfYear()
getMinuteOfYear()
getSecondOfYear()
getWeekday()
isToday()
isLeapYear()
Setters
modify()
modifyYears()
modifyMonths()
modifyWeeks()
modifyDays()
modifyHours()
modifyMinutes()
modifySeconds()
setCurrent()
setDateTime()
Conversion
toString()
toStringDate()
toStringTime()
toArray()
toArrayDate()
toArrayTime()
Range
Management
isFunctional()
Getters
clampTo()
interpolate()
percent()
randomReal()
randomInt()
getMiddle()
isBetween()
isBoundary()
Conversion
toString()
toArray()
RangedValue
Management
isFunctional()
Getters
equals()
percent()
isBoundary()
isMinimum()
isMaximum()
Setters
modify()
modifyWrap()
modifyBounce()
interpolate()
set()
setMinimum()
setMaximum()
setOriginal()
setMiddle()
Conversion
toString()
Scale
Management
isFunctional()
Getters
contains()
equals()
getMinimum()
getMaximum()
Setters
approach()
grow()
shrink()
mirror()
mirrorX()
mirrorY()
setAll()
setAll()
Conversion
toString()
toArray()
TextAlign
Management
isFunctional()
Setters
mirror()
mirrorX()
mirrorY()
setXLeft()
setXCenter()
setXRight()
setYTop()
setYMiddle()
setYBottom()
Execution
setActive()
Conversion
toString()
toArray()
Vector2
Management
isFunctional()
Getters
contains()
equals()
sum()
difference()
product()
quotient()
dotProduct()
getAngle()
getDistance()
getMinimum()
getMaximum()
getMagnitude()
getNormalized()
getSign()
Setters
add()
substract()
multiply()
divide()
approach()
grow()
shrink()
clampTo()
flip()
mirror()
set()
setAll()
setFloor()
setRound()
setCeil()
setCursor()
Conversion
toString()
toArray()
Vector4
Management
isFunctional()
Getters
contains()
equals()
sum()
difference()
product()
quotient()
dotProduct()
interpolate()
percent()
getAngle()
getDistance()
getClosest()
getMinimum()
getMaximum()
getMiddle()
getMagnitude()
getNormalized()
getSign()
isBetween()
Setters
add()
substract()
multiply()
divide()
approach()
clampTo()
grow()
shrink()
flip()
mirror()
mirrorX()
mirrorY()
sort()
set()
setAll()
setFloor()
setRound()
setCeil()
setCursor()
Conversion
toString()
toArray()
split()
combine()
Data Structure
Grid
Management
isFunctional()
destroy()
clear()
copy()
Getters
contains()
containsRegion()
containsDisk()
count()
getValue()
getCellNumber()
getRow()
getColumn()
getMinimum()
getMinimumDisk()
getMaximum()
getMaximumDisk()
getMean()
getMeanDisk()
getSum()
getSumDisk()
getValueLocation()
getValueLocationDisk()
Setters
setSize()
Execution
forEach()
set()
setRegion()
setDisk()
setRegionCopied()
add()
addRegion()
addDisk()
addRegionCopied()
multiply()
multiplyRegion()
multiplyDisk()
multiplyRegionCopied()
mirrorX()
mirrorY()
transpose()
sort()
shuffle()
Conversion
toString()
toArray()
fromArray()
toEncodedString()
fromEncodedString()
List
Management
isFunctional()
destroy()
clear()
copy()
Getters
contains()
count()
getValue()
getFirst()
getLast()
getFirstPosition()
getPositions()
getSize()
isEmpty()
Execution
forEach()
add()
set()
replace()
removePosition()
removeValue()
insert()
sort()
shuffle()
Conversion
toString()
toArray()
fromArray()
toEncodedString()
fromEncodedString()
Map
Management
isFunctional()
destroy()
clear()
copy()
Getters
contains()
count()
getValue()
getAllValues()
getAllKeys()
getFirst()
getLast()
getPrevious()
getNext()
keyExists()
valueIsBoundList()
valueIsBoundMap()
getSize()
isEmpty()
Execution
forEach()
add()
addBoundList()
addBoundMap()
set()
replace()
remove()
Conversion
toString()
toArray()
fromArray()
toStruct()
fromStruct()
toEncodedString()
fromEncodedString()
secureToFile()
secureFromFile()
secureFromBuffer()
PriorityQueue
Management
isFunctional()
destroy()
clear()
copy()
Getters
contains()
count()
getFirst()
getLast()
getPriority()
getSize()
isEmpty()
Execution
forEach()
add()
setPriority()
remove()
removeFirst()
removeLast()
Conversion
toString()
toArray()
fromArray()
toEncodedString()
fromEncodedString()
Queue
Management
isFunctional()
destroy()
clear()
copy()
Getters
contains()
count()
getFirst()
getLast()
getSize()
isEmpty()
Execution
forEach()
add()
remove()
Conversion
toString()
toArray()
fromArray()
toEncodedString()
fromEncodedString()
Stack
Management
isFunctional()
destroy()
clear()
copy()
Getters
contains()
count()
getFirst()
getLast()
getSize()
isEmpty()
Execution
forEach()
add()
remove()
Conversion
toString()
toArray()
fromArray()
toEncodedString()
fromEncodedString()
Debug
ErrorReport
Management
isFunctional()
Execution
report()
Conversion
toString()

ErrorReport.ReportData
Management
isFunctional()
Getters
equals()
formatLocation()
formatDetail()
formatCallstack()
formatTime()
Conversion
toString()
Handler
ArrayParser
Management
isFunctional()
setParser()
create()
clear()
copy()
merge()
Getters
contains()
containsAll()
containsCondition()
equals()
getValue()
getUniqueValues()
getSharedValues()
getFirst()
getLast()
getFirstPosition()
getLastPosition()
getPositions()
getPositionsCondition()
getReduction()
getColumn()
getSize()
isEmpty()
Setters
setSize()
Execution
forEach()
add()
set()
insert()
removePosition()
removeValue()
sort()
Conversion
toString()
SpriteRenderer
Management
isFunctional()
Execution
render()
Conversion
toString()
toArray()
StringParser
Management
isFunctional()
setParser()
Getters
contains()
containsAll()
startsWith()
endsWith()
charEquals()
charIsWhitespace()
split()
getFirst()
getLast()
getBetween()
getByte()
getByteLength()
getChar()
getOrd()
getPart()
getSubstringCount()
getLetters()
getDigits()
getLettersAndDigits()
getSubstringPosition()
getSize()
getPixelSize()
Setters
remove()
formatNumber()
insert()
duplicate()
replace()
reverse()
trim()
setByte()
setLowercase()
setUppercase()
Execution
forEach()
displayOutput()
displayMessageBox()
Conversion
toString()
toNumber()
toArray()
fromArray()
SurfaceRenderer
Management
isFunctional()
Execution
render()
Conversion
toString()
TextRenderer
Management
isFunctional()
Getters
getBoundaryOffset()
Execution
render()
Conversion
toString()
Resource
Buffer
Management
isFunctional()
destroy()
copy()
Getters
getSeekPosition()
getType()
getAlignment()
getPointer()
getSize()
Setters
setSeekPosition()
Execution
write()
fill()
read()
compress()
decompress()
getValue()
Conversion
toString()
toHashMD5()
toHashSHA1()
toHashCRC32()
toEncodedString()
fromEncodedString()
secureFromMap()
fromSurface()
toFile()
fromFile()
fromFilePart()
Font
Management
isFunctional()
destroy()
Getters
getTexture()
getTexel()
getUV()
isActive()
Execution
setActive()
Conversion
toString()
Layer
Management
isFunctional()
destroy()
Getters
hasInstance()
getElements()
Setters
setLocation()
setSpeed()
setVisible()
setDepth()
setShader()
setFunctionDrawBegin()
setFunctionDrawEnd()
Execution
createBackground()
createInstance()
createTilemap()
createSprite()
createParticleSystem()
destroyInstance()
setInstancePause()
Conversion
toString()

Layer.SpriteElement
Management
isFunctional()
changeParent()
destroy()
Setters
setSprite()
setScale()
setColor()
setAlpha()
setFrame()
setSpeed()
Conversion
toString()
Layer.BackgroundElement
Management
isFunctional()
changeParent()
destroy()
Setters
setSprite()
setScale()
setColor()
setAlpha()
setFrame()
setSpeed()
setStretch()
setTiled()
setVisible()
Conversion
toString()
Layer.TilemapElement
Management
isFunctional()
destroy()
clear()
changeParent()
Getters
getFrame()
getMask()
getTileInCell()
getTileAtPoint()
getCellAtPoint()
Setters
setMask()
setTileset()
setSize()
Execution
render()
setTileInCell()
setTileAtPoint()
Conversion
toString()

Layer.TilemapElement.TileData
Management
isFunctional()
clear()
Getters
getTilesetIndex()
isEmpty()
isMirroredX()
isMirroredY()
isRotated()
Setters
setTilesetIndex()
setMirrorX()
setMirrorY()
setRotate()
Execution
render()
Conversion
toString()
Layer.ParticleSystem
Management
isFunctional()
destroy()
clear()
changeParent()
Getters
getParticleCount()
Setters
setLocation()
setDrawOrder()
setAutomaticUpdate()
setAutomaticRender()
Execution
createEmitter()
render()
update()
Conversion
toString()

Layer.ParticleSystem.ParticleEmitter
Management
isFunctional()
destroy()
clear()
Setters
setRegion()
setStreamEnabled()
setStreamCount()
Execution
burst()
stream()
Conversion
toString()
ParticleType
Management
isFunctional()
destroy()
clear()
Setters
setShape()
setSprite()
setScale()
setSize()
setSpeed()
setDirection()
setAngle()
setGravity()
setLife()
setColor()
setColorMix()
setColorRGB()
setColorHSV()
setBlend()
setAlpha()
setStep()
setDeath()
Execution
create()
createShape()
Conversion
toString()
Room
Management
isFunctional()
copy()
Getters
isActive()
Setters
setSize()
setPersistent()
Execution
createInstance()
setActive()
Conversion
toString()

Room.AddedInstance
Management
isFunctional()
Conversion
toString()
Shader
Management
isFunctional()
Getters
getSampler()
isActive()
Setters
setUniformFloat()
setUniformInt()
setUniformMatrix()
updateUniforms()
Execution
setActive()
Conversion
toString()
Sprite
Management
isFunctional()
destroy()
replace()
merge()
Getters
getNineslice()
getTexture()
getTexel()
getUV()
Setters
setNineslice()
setOrigin()
setSpeed()
setCollisionMask()
Execution
render()
renderTiled()
renderPerspective()
load()
generateAlphaMap()
Conversion
toString()
toFile()
Surface
Management
isFunctional()
create()
destroy()
clear()
copy()
Getters
getPixel()
getTexture()
getTexel()
isActive()
Setters
setSize()
Execution
render()
renderTiled()
setActive()
Conversion
toString()
toFile()
fromBuffer()
Shape
Arrow
Management
isFunctional()
Execution
render()
Conversion
toString()
Circle
Management
isFunctional()
Getters
collision()
containsPoint()
cursorOver()
cursorHold()
cursorPressed()
cursorReleased()
Execution
render()
Conversion
toString()
Ellipse
Management
isFunctional()
Getters
collision()
Execution
render()
Conversion
toString()
Line
Management
isFunctional()
Getters
collision()
Execution
render()
__createPixelSprite()
Conversion
toString()
Point
Management
isFunctional()
Getters
collision()
cursorOver()
cursorHold()
cursorPressed()
cursorReleased()
Execution
render()
__createPixelSprite()
Conversion
toString()
Rectangle
Management
isFunctional()
Getters
collision()
containsPoint()
cursorOver()
cursorHold()
cursorPressed()
cursorReleased()
Execution
render()
__createPixelSprite()
Conversion
toString()
RoundRectangle
Management
isFunctional()
Getters
collision()
containsPoint()
cursorOver()
cursorHold()
cursorPressed()
cursorReleased()
Execution
render()
Conversion
toString()
Triangle
Management
isFunctional()
Getters
containsPoint()
cursorOver()
cursorHold()
cursorPressed()
cursorReleased()
Execution
render()
Conversion
toString()
Clone this wiki locally