HU/IsInSlot: Difference between revisions
Jump to navigation
Jump to search
(4 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=" | <section name="Kliens" class="client" show="true"> | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
local x,y = guiGetScreenSize() | local x,y = guiGetScreenSize() | ||
function isInSlot(dX, dY, dSZ, dM) -- | function isInSlot(dX, dY, dSZ, dM) --Létre hozzuk az isInSlot funkciót (Amit később majd meghívunk). | ||
if isCursorShowing() then -- | if isCursorShowing() then --Ha látszódik a kurzor. | ||
local cX ,cY = getCursorPosition() -- | local cX ,cY = getCursorPosition() --Lekéri a kurzor pozícióját. | ||
cX,cY = cX*x , cY*y -- | 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 -- | 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 -- | return true, cX, cY --Ha a dobozban van akkor adja vissza, hogy igaz. | ||
else | else | ||
return false -- | return false --Ha nincs a dobozban akkor adja vissza, hogy hamis. | ||
end | end | ||
end | 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> | </syntaxhighlight> | ||
</section> | </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 [-]
Klienslocal 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éldalocal 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.