Lua メモ

セグメントを回転させる

ハンドへルド・ビュー: local w = platform.window:width() local h = platform.window:height() local center = {x = w/2, y = h/2} -- 回転中心 local length = 0.9 * h/2 -- 針長さ local time = math.pi/2 -- 0 時(90度)からスタート local timeStrin…

(10.3)積み上げる

コンピューター・ビュー: -- 10.3 積み上げる local w = platform.window.width() local h = platform.window.height() local marginLeft = 20 local marginTop = math.floor(h/200) local yokoCount = 5 local tateCount = 7 local dansa = math.floor(h/t…

(10.2)メモリをかたまりで使う、(10.2.3)全てのマス目がどうなっているか覚える

ハンドへルド・ビュー: -- 10.2 メモリをかたまりで使う -- 10.2.3 全てのマス目がどうなっているか覚える local w = platform.window.width() -- 画面の幅 local h = platform.window.height() -- 画面の高さ local lineCount = 20 -- 縦の段数(外側の段…

(10.1)当たるということ、(10.1.1)底に当たるとはどういうことか、(10.1.2)壁にも当ててみる

ハンドへルド・ビュー: -- 10.1 当たるということ -- 10.1.1 底に当たるとはどういうことか -- 10.1.2 壁にも当ててみる x = 150; y = 95 -- 四角の描画始点の初期値 function on.paint(gc) gc:drawRect(70, 50, 180, 100) -- 境界線 gc:fillRect(x, y, 10,…

(8.4)落ちてくる四角が動かせるようにする

ハンドへルド・ビュー: -- 8.4 落ちてくる四角を動かせるようにする local w = platform.window.width() -- 画面の幅 local h = platform.window.height() -- 画面の高さ local lineCount = 20 -- 縦の段数(外側の段数) local colCount = 10 -- 横の段数…

(8.3.6)上下左右に動けるようにする

ハンドへルド・ビュー: -- 8.3.6 上下左右に動けるようにする local x = 130; local y = 100; local step = 10 function on.construction() timer.start(0.01) end function on.timer() platform.window:invalidate() end -- 矢印キーで動かす function on.…

(6.4)ここまでを組み合わせる

ハンドへルド・ビュー: -- 6.4 ここまでを組み合わせる -- 壁や底を描いた状態で四角が落ちてくるようにする。 local w = platform.window.width() -- 画面の幅 local h = platform.window.height() -- 画面の高さ local lineCount = 20 -- 縦の段数(外側…

(6.2.2)四角を落としてみる

-- 6.2.2 四角を落としてみる local dropLen = 0 function on.paint(gc) timer.start(0.1) gc:fillRect(0, dropLen, 30, 30) -- 現在の描画始点の位置に四角を描く gc:drawString(dropLen,100, 0, "top") -- 確認用として描画始点の現在値を表示する if drop…

(5.4)もっとわかりやすく

-- 5.4 もっとわかりやすく local w = platform.window.width() -- 画面の幅 local h = platform.window.height() -- 画面の高さ local lineCount = 20 -- 縦の段数(外側の段数) local colCount = 10 -- 横の段数(内側の段数) local sideLen = math.floo…

(5.3)部分プログラムを使って壁と底を描く

-- 5.3 部分プログラムを使って壁と底を描く ---部分プログラム(どこから, 1 辺いくつの正方形を, どの方向で, 何個描く, gc) ----- function drawBlocks(x, y, sideLen, direction, number, gc) local a; local b if direction == "tate" then a = 0; b = 1…

(4.1.3)この調子で右の壁や底も描く

-- 4.1.3 この調子で右の壁や底も描く local w = platform.window.width() -- 画面の幅を取得して w に代入 local h = platform.window.height() -- 画面の高さを取得して h に代入 local sideLen = math.floor(h/25) -- 四角の 1 辺の長さを指定して sideLe…

(4.1)くり返しで壁を描く

-- くり返しで壁を描く local w = platform.window.width() -- 画面の幅を取得して w に代入 local h = platform.window.height() -- 画面の高さを取得して h に代入 local sideLen = math.floor(h/25) -- 四角の 1 辺の長さを指定して sideLen に代入 local…

(2.3.1)画面の真ん中に赤い四角を描く

-- 画面の真ん中に赤い四角を描く local w = platform.window.width() -- 画面の幅を取得して w に代入 local h = platform.window.height() -- 画面の高さを取得して h に代入 local sideLen = h/25 -- 四角の 1 辺の長さを指定して sideLen に代入 functio…

(2.2)四角を描く

-- 四角を描く function on.paint(gc) gc:fillRect(10, 30, 50, 100) -- 四角の左上隅の xy 座標, 幅, 高さ end 参考文献:プログラムはこうして作られるプログラマの頭の中をのぞいてみよう作者: 平山尚(株式会社セガ)出版社/メーカー: 秀和システム発売日:…