Difference between revisions of "love.wheelmoved (日本語)"

(Created page with "{{newin (日本語)|0.10.0|100|type=関数}} マウスホィールが動かされる時に発生するコールバック関数です。 == 関数 == === 概要 === <source...")
 
m (Updated sample code (from Rev.16984 / 25 August 2016, at 05:48))
Line 47: Line 47:
 
     -- スムース・スクロール効果を発生させるために徐々に減速します。
 
     -- スムース・スクロール効果を発生させるために徐々に減速します。
 
     velx = velx - velx * math.min(dt * 10, 1)
 
     velx = velx - velx * math.min(dt * 10, 1)
     vely = vely - velx * math.min(dt * 10, 1)
+
     vely = vely - vely * math.min(dt * 10, 1)
 
end
 
end
  

Revision as of 22:28, 24 August 2016

LÖVE 0.10.0 から使用可能
この関数は以前のバージョンでは非対応です。

マウスホィールが動かされる時に発生するコールバック関数です。

関数

概要

love.wheelmoved( x, y )

引数

number x
マウスホイールの横方向への移動量。正値は右側への移動を意味します。
number y
マウスホイールの縦方向への移動量。正値は上側への移動を意味します。

返値

ありません。

用例

local text = ""

function love.wheelmoved(x, y)
    if y > 0 then
        text = "Mouse wheel moved up"
    elseif y < 0 then
        text = "Mouse wheel moved down"
    end
end

function love.draw()
    love.graphics.print(text, 10, 10)
end


スムース・スクロール

function love.load()
    posx, posy = love.graphics.getWidth() * 0.5, love.graphics.getHeight() * 0.5
    velx, vely = 0, 0 -- スクロール速度
end

function love.draw()
    love.graphics.rectangle( 'line', posx, posy, 50, 50 )
end

function love.update( dt )
    posx = posx + velx * dt
    posy = posy + vely * dt

    -- スムース・スクロール効果を発生させるために徐々に減速します。
    velx = velx - velx * math.min(dt * 10, 1)
    vely = vely - vely * math.min(dt * 10, 1)
end

function love.wheelmoved( dx, dy )
    velx = velx + dx * 20
    vely = vely + dy * 20
end

関連



そのほかの言語