Home > corona sdk Archive

corona sdk Archive

[Corona SDK] 線に物理演算を適用する

前回作成したパズルゲーム「パズタス」はCocos2dというゲームライブラリを使って作りました。
(無料なのでDLよろしくお願いします。)
Puztas - Simple Addition Puzzle App

カテゴリ: ゲーム

価格: 無料

こちらはこちらでとても使いやすくて良いライブラリです。
次回のアプリはCorona SDKを使って、iPhoneとAndroid両方に対応したゲームを作りたいと思っています。
Corona SDKではLuaという言語で書くので覚えるのがちょっと面倒ですが、ActionScriptを使っていた人なら結構なじみやすいかもです。
Corona SDK

corona.pngそこで、Corona SDKだと物理エンジンを使うのが簡単なので、
物理エンジンを使ったサンプルを書いてみました。
画面上からボールが落ちてきます。
指で画面をなぞると線が描けます。
ボールと線に物理演算が適用されているので線にボールが当たると跳ね返ります。
80行程度でこれだけ動くものが作れるのですごいですね〜。
ただ、いまのところXcode4.4でまだビルドできないぽいですorz

SW = display.contentWidth;
SH = display.contentHeight;

local physics = require("physics")
physics.start()

display.setStatusBar(display.HiddenStatusBar)
local myLines = {}
local lineCount = 1
local tx; local ty;

--タッチイベント
function touchEventHandler(e)
if ((e.y >= display.contentHeight*0.05) ) then
local t = e.target
local phase = e.phase
if ( phase == "began" and e.y < display.contentHeight - 68 ) then
tx = e.x;
ty = e.y;
elseif("moved" == phase)then
--タッチして引っ張った
if( myLines[lineCount] ) then
myLines[lineCount].parent:remove(myLines[lineCount])
end

--最初にタッチした位置から現在位置まで
myLines[lineCount] = display.newLine( tx ,ty , e.x , e.y )
myLines[lineCount]:setColor(255,255,255,255)
myLines[lineCount].width = 4
elseif( "ended" == phase or "canceled" == phase)then
--タッチ終了
--ラインにphysicsをつける
dist_x = e.x - tx
dist_y = e.y - ty
physics.addBody(myLines[lineCount], "static",{ density=1.0, friction=1.0, bounce=0.6 ,shape = {0, 0, dist_x, dist_y, 0, 0}})
display.getCurrentStage ( ):setFocus(nil)
lineCount = lineCount + 1
end
return true
end
end

--Ballを作る
local function createBall()
local rnd = 10
local dx = SW/2
local ball = display.newCircle( dx, - rnd, rnd )
physics.addBody( ball , {density=1, friction=0.5, bounce=0.5, radius = rnd})
end

timer.performWithDelay ( 5000, createBall , -1)
createBall()

Runtime:addEventListener ( "touch" , touchEventHandler )



Index of all entries

Home > corona sdk Archive

Profile

iPhone/iPad開発 web制作:平野百貨店
iPhone/iPad開発・web制作・映像制作をしている平野百貨店の店長個人の覚書です。
ご意見・ご感想などお問合せはコチラからどうぞ。

※最近ツッコミをもらうので一応書いておきます。ブログのタイトル「袖触れ合うも多少の縁」はわざとです。正確には「袖振り合うも多生の縁」が正解です。

Search
iPhone Apps






RSS
リンク
のこぎりそうの日記

Return to page top