HU/IsInSlot

From Multi Theft Auto: Wiki
Jump to navigation Jump to search

Szintaxis

isInSlot(x, y, width, height)

Vissza térési értékek

Ha a cursor a dobozban van akkor a visszatérési érték 'igaz' különben pedig 'hamis'

írta Petrik

Kód

Click to collapse [-]
Kliens
    local x,y = guiGetScreenSize()
    function isInSlot(dX, dY, dSZ, dM) --Létre hozzuk az isInSlot funkciót (Amit később majd meghívunk).
        if isCursorShowing() then --Ha látszódik a kurzor.
            local cX ,cY = getCursorPosition() --Lekéri a kurzor pozícióját.
            cX,cY = cX*x , cY*y --Lekéri a kurzor pozícióját az adott felbontáson.
            if(cX >= dX and cX <= dX+dSZ and cY >= dY and cY <= dY+dM) then --Ha ott van a kurzor ahol megadtuk akkor.
                return true, cX, cY --Ha a dobozban van akkor adja vissza, hogy igaz.
            else
                return false --Ha nincs a dobozban akkor adja vissza, hogy hamis.
            end
        end
    end

Példa

Click to collapse [-]
Kliens-oldali példa
    local x,y = guiGetScreenSize()
    ox, oy = 1600, 900
    function mainRender()
        local rectangleColor = tocolor(0, 0, 0, 180) --A doboz színe amit majd később változtatunk.
        if isInSlot(600/ox*x, 350/oy*y, 400/ox*x, 200/oy*y) then --Ha a dobozban van (A pozíción ahol megadtuk) akkor.
            rectangleColor = tocolor(0, 0, 0, 255) --A négyzet színe legyen.
        else --Különben (Ha nincs benne)
            rectangleColor = tocolor(0, 0, 0, 180) --A négyzet színe legyen.
        end
        dxDrawRectangle(600/ox*x, 350/oy*y, 400/ox*x, 200/oy*y, rectangleColor) --Kirajzoljuk a négyzetet.
    end
    addEventHandler("onClientRender", root, mainRender) --Az event ami minden képkocka generálásakor kirajzolja a négyzetet.