Difference between revisions of "Lua API:Simulation"
(Begin document) |
(More spec for Simulation API) |
||
Line 7: | Line 7: | ||
Returns a list of particles indexes that neighbour the given coordinates that matches the given type (if it is specified) | Returns a list of particles indexes that neighbour the given coordinates that matches the given type (if it is specified) | ||
The resulting list does not contain the "origin particle" | The resulting list does not contain the "origin particle" | ||
+ | |||
+ | === simulation.partChangeType === | ||
+ | nil sim.partChangeType(number index, number type) | ||
+ | Reliably change the type of a particle, this method avoids the side effects created by changing the type directly with the "partProperty" method. | ||
+ | |||
+ | === simulation.partCreate === | ||
+ | nil sim.partKill(number index) | ||
+ | nil sim.partKill(number x, number y) | ||
+ | Reliably delete a particle at a specified index or location, this method avoids the side effects created by changing the type to 0/DEFAULT_PT_NONE with the "partProperty" method | ||
+ | |||
+ | === simulation.partProperty === | ||
+ | nil sim.partProperty(number index, object field, object value) | ||
+ | Set the property value on a particle specified by index | ||
+ | |||
+ | object sim.partProperty(number index, object field) | ||
+ | Get the property value on a particle specified by the index | ||
+ | |||
+ | The "field" may be a field name or field ID, see [bottom of page] for more information | ||
+ | |||
+ | === simulation.partID === | ||
+ | number sim.partID(number x, number y) | ||
+ | Get the index of a particle at the specified position | ||
+ | |||
+ | === simulation.partPosition === | ||
+ | number x, number y sim.partPosition(number index) | ||
+ | Get the location of the particle at the specified index | ||
+ | |||
+ | === simulation.ambientHeat === | ||
+ | |||
+ | === simulation.pressure === | ||
+ | |||
+ | === simulation.velocityX === | ||
+ | |||
+ | === simulation.velocityY === | ||
+ | |||
+ | === simulation.gravMap === |
Revision as of 14:37, 22 February 2013
The Simulation API allows for modifying the state and properties of particles, air and gravity
Contents
Methods
simulation.partNeighbours
number ... sim.partNeighbours(number x, number y, number radius, [number type])
Returns a list of particles indexes that neighbour the given coordinates that matches the given type (if it is specified) The resulting list does not contain the "origin particle"
simulation.partChangeType
nil sim.partChangeType(number index, number type)
Reliably change the type of a particle, this method avoids the side effects created by changing the type directly with the "partProperty" method.
simulation.partCreate
nil sim.partKill(number index) nil sim.partKill(number x, number y)
Reliably delete a particle at a specified index or location, this method avoids the side effects created by changing the type to 0/DEFAULT_PT_NONE with the "partProperty" method
simulation.partProperty
nil sim.partProperty(number index, object field, object value)
Set the property value on a particle specified by index
object sim.partProperty(number index, object field)
Get the property value on a particle specified by the index
The "field" may be a field name or field ID, see [bottom of page] for more information
simulation.partID
number sim.partID(number x, number y)
Get the index of a particle at the specified position
simulation.partPosition
number x, number y sim.partPosition(number index)
Get the location of the particle at the specified index