Difference between revisions of "World:setCallbacks"

(add note about crashing bug, link to page with workaround)
m (included link to other languages)
Line 26: Line 26:
 
{{#set:Description=Set functions to be called when shapes collide.  
 
{{#set:Description=Set functions to be called when shapes collide.  
 
}}
 
}}
 +
== Other Languages ==
 +
{{i18n|World:setCallbacks}}

Revision as of 12:12, 22 January 2011

Set functions to be called when shapes collide.

Four Lua functions can be given as arguments. The value nil can be given for events that are uninteresting.


When called, each function will be passed three arguments. The first two arguments (one for each shape) will pass data that has been set with Shape:setData (or nil). The third argument passes the Contact between the two shapes.

Note: Using Shape:destroy when there is an active remove callback can lead to a crash. It is possible to work around this issue by only destroying object that are not in active contact with anything.

Function

Synopsis

World:setCallbacks( add, persist, remove, result )

Arguments

function add
Called when two shapes first collide.
function persist
Called each frame, if collision lasts more than 1 frame.
function remove
Called when two shapes finish colliding.
function result
No idea. Never seems to be called...

Returns

Nothing.

See Also

Other Languages