CreateWater

From Multi Theft Auto: Wiki
Revision as of 00:04, 14 February 2009 by Arc (talk | contribs)
Jump to navigation Jump to search

Creates an area of water. Be careful with this function. San Andreas is very picky about the positioning of water vertices and will crash if it doesn't like what you throw at it.

Syntax

water createWater ( float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, float x4, float y4, float z4, [bool shallow = false] )
water createWater ( float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, [bool shallow = false] )
Example of water quadrant.

Required Arguments

For creating a water quadrant:

  • x1, y1, z1: position of bottom left corner. (south-west)
  • x2, y2, z2: position of bottom right corner. (south-east)
  • x3, y3, z3: position of top left corner. (north-west)
  • x4, y4, z4: position of top right corner. (north-east)

For creating a water triangle:

  • x1, y1, z1: position of bottom/top left corner.
  • x2, y2, z2: position of bottom/top right corner.
  • x3, y3, z3: position of top/bottom corner.

The largest possible size of a water area is 2998×2998. Also be aware that the function will change all x and y coordinates you specify into even integer numbers if necessary: this is because of a limitation of San Andreas.

Optional Arguments

  • shallow: makes the water shallow if true. Practically speaking there is no visible water surface in this case, only the splashes when someone walks through it.

Returns

Returns a water element if successful, false otherwise. The water element can be repositioned with setElementPosition and destroyed with destroyElement.

Example

Click to collapse [-]
Client

Example code for creating a water area to cover the entire San Andreas Map. (Flood the cities)

-- Setting water properties.
height = 40
SizeVal = 2998
-- Defining variables.
southWest_X = -SizeVal
southWest_Y = -SizeVal
southEast_X = SizeVal
southEast_Y = -SizeVal
northWest_X = -SizeVal
northWest_Y = SizeVal
northEast_X = SizeVal
northEast_Y = SizeVal

-- OnClientResourceStart function that creates the water.
function thaResourceStarting( )
outputChatBox("water stuffz created - " .. southEast_X .. "x" .. southEast_X .. " - Height: " .. height .. " - Shallow: False")
water = createWater ( southWest_X, southWest_Y, height, southEast_X, southEast_Y, height, northWest_X, northWest_Y, height, northEast_X, northEast_Y, height )
end
addEventHandler("onClientResourceStart", getResourceRootElement(getThisResource()), thaResourceStarting)

See Also