HU/IsInSlot: Difference between revisions
Jump to navigation
Jump to search
(→Syntax) |
|||
| (5 intermediate revisions by the same user not shown) | |||
| Line 2: | Line 2: | ||
<syntaxhighlight lang="lua">isInSlot(x, y, width, height)</syntaxhighlight> | <syntaxhighlight lang="lua">isInSlot(x, y, width, height)</syntaxhighlight> | ||
=== | ===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' | Ha a cursor a dobozban van akkor a visszatérési érték 'igaz' különben pedig 'hamis' | ||
írta '''Petrik''' | írta '''Petrik''' | ||
==Kód== | |||
<section name="Kliens" class="client" show="true"> | |||
<syntaxhighlight lang="lua"> | |||
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 | |||
</syntaxhighlight> | |||
</section> | |||
==Példa== | |||
<section name="Kliens-oldali példa" class="client" show="true"> | |||
<syntaxhighlight lang="lua"> | |||
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. | |||
</syntaxhighlight> | |||
</section> | |||
Latest revision as of 20:06, 3 November 2019
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.