HU/createColTube

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Ez a function létrehoz egy collision csővet. Ez egy forma, amelynek van pozíciója, van 2D-s (X/Y) sugara és magassága. Lásd Cylinder a cső meghatározásához. A cső hasonlít a colcircle-re, kivéve, hogy van egy korlátozott magassága, this means you can limit the distance above the position defined by (fX, fY, fZ) that the collision is detected.

[[{{{image}}}|link=|]] Tipp: A szkriptek írása közben egy colshape megjelenítéséhez használja a showcol parancsot

Szintaxis

colshape createColTube ( float fX, float fY, float fZ, float fRadius, float fHeight )

OOP Syntax Help! I don't understand this!

Method: ColShape.Tube(...)


Kötelező paraméterek

  • fX: A cső középpontjának alapja az X tengelyen
  • fY: A cső középpontjának alapja az Y tengelyen
  • fZ: A cső középpontjának alapja az Z tengelyen
  • fRadius: A collision cső sugara
  • fHeight: A collision cső magassága

Visszatérési érték

Visszaad egy colshape elemet, ha sikeres, false, ha érvénytelen paraméterek lettek megadva a funkcióhoz.

Példa

Click to collapse [-]
Server

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

function shapeHit ( thePlayer ) 
    outputChatBox ( getPlayerName ( thePlayer ) .. " is in the zone!" ) -- display a message in everyone's chat box
end

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 = createColTube ( 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
            else
                   addEventHandler ( "onColShapeHit", theZone, shapeHit ) -- add a handler for the onColShapeHit event
            end
            theZone = tempCol -- and store the new zone we've made
            outputChatBox ( "Zone has moved!" ) -- and tell everyone
        end
    end
end
addCommandHandler ( "set_zone", setZone ) -- add a console function called set_zone that will trigger the function setZone

Lásd még

Fordította