CreateColRectangle: Difference between revisions
Jump to navigation
Jump to search
m (CreateColSquare moved to CreateColRectangle) |
No edit summary |
||
| Line 8: | Line 8: | ||
===Required Arguments=== | ===Required Arguments=== | ||
*'''fX:''' The collision rectangle's | *'''fX:''' The collision rectangle's origin X axis position | ||
*'''fY:''' The collision rectangle's | *'''fY:''' The collision rectangle's origin Y axis position | ||
*'''fZ:''' The collision rectangle's | *'''fZ:''' The collision rectangle's origin Z axis position | ||
*'''fWidth:''' The collision rectangle's width | *'''fWidth:''' The collision rectangle's width | ||
*'''fDepth:''' The collision rectangle's depth | *'''fDepth:''' The collision rectangle's depth | ||
Note: The origin specified by ''fX'', ''fY'' and ''fZ'' is the south left corner of the rectangle. | |||
===Returns=== | ===Returns=== | ||
Revision as of 00:06, 15 September 2006
This function creates a collision rectangle. This is a shape that has a position and a width and a depth. See Rectangle for a definition of a rectangle.
Syntax
colshape createColRectangle ( float fX, float fY, float fZ, float fWidth, float fDepth )
Required Arguments
- fX: The collision rectangle's origin X axis position
- fY: The collision rectangle's origin Y axis position
- fZ: The collision rectangle's origin Z axis position
- fWidth: The collision rectangle's width
- fDepth: The collision rectangle's depth
Note: The origin specified by fX, fY and fZ is the south left corner of the rectangle.
Returns
Returns a colshape element if successful, false if invalid arguments were passed to the function.
Example
This example displays a chat message when a player enters the colshape and allows the colshape to be created using a console function set_zone.
theZone = false
addCommandHandler ( "set_zone", "setZone" ) -- add a console function called set_zone that will trigger the function setZone
function setZone ( playerSource, commandName, fX, fY, fZ )
if ( fZ and fY and fX ) then -- check we've got all 3 args we need
local tempCol = createColRectangle ( fX, fY, fZ, 10.0, 10.0 ) -- create a col
if ( tempCol == false ) then -- did the col get created successfully?
outputConsole ( "Syntax is: set_zone <X> <Y> <Z>" ) -- inform the user what the valid syntax is
else
if ( theZone ~= false ) then -- did we already have a zone?
destroyElement ( theZone ) -- if so, destroy it
end
theZone = tempCol -- and store the new zone we've made
outputChatBox ( "Zone has moved!" ) -- and tell everyone
end
end
end
addEventHandler ( "onColShapeHit", getRootElement(), "shapeHit" ) -- add a handler for the onColShapeHit event
function shapeHit ( thePlayer )
outputChatBox ( getClientName ( thePlayer ) .. " is in the zone!" ) -- display a message in everyone's chat box
end
See Also
- addColPolygonPoint
- createColCircle
- createColCuboid
- createColPolygon
- createColRectangle
- createColSphere
- createColTube
- getColPolygonHeight
- getColPolygonPoints
- getColPolygonPointPosition
- getColShapeType
- getColShapeRadius
- getColShapeSize
- getElementColShape
- getElementsWithinColShape
- isElementWithinColShape
- isInsideColShape
- removeColPolygonPoint
- setColPolygonHeight
- setColPolygonPointPosition
- setColShapeRadius
- setColShapeSize