oc2016

このページでは、当日資料では紹介していない命令・変数などを紹介しています。

プログラムの構成

//クラス定義
class クラス名 extends 親クラス名 {
    *main() {
        //動作
    }
}
//(クラス定義は複数可能)
setMain(最初に実行するクラス名);

クラス Actor

フィールド(変数)

フィールドは、それぞれのクラスの中でthis.xxx というように、 頭にthis. を付けて使います

メソッド(命令)

yield
yield; を実行するとその時点でそのオブジェクトの動作を停止し、他のオブジェクトに動作を譲ります。yield n; のように後ろに数値をつけると、指定されたフレーム数待機します

以下の命令は、それぞれのクラスの中でthis.xxxx( ) のように使います。 ( )の中には引数を指定する場合があります。

getkey(n)
nで指定した名前のキーが押されていなければ0を、押されていれば1以上を返します 押された瞬間は1が返され、それ以上押し続けていると1より大きい値が返されます
die()
オブジェクトを消滅させます
isDead()
オブジェクトが消滅しているかどうかを判定します
crashTo(obj)
指定されたオブジェクトobjと衝突しているかを調べます。 衝突していればtrue、していなければfalseを返します
crashTo(Class)
指定されたクラスClassのオブジェクトのうちどれか衝突しているかを調べます。 衝突していれば衝突したオブジェクトのうちどれかを返し、衝突していなければnullを返します
allCrash(Class)
指定されたクラスClassのオブジェクトのうち、衝突しているものをすべて配列で返します
all(Class)
指定されたクラスClassのオブジェクトをすべて配列で返します
within(obj,d)
このオブジェクトとobjとの距離がd以下であればtrue,そうでなければfalseを返します.
crashTo(Class,d)
このオブジェクトがClassで指定されるクラスのオブジェクトのうちどれかとの距離がd以下であれば,そのうちどれか1つのオブジェクトを返します.そうでなければnullを返します
allWithin(Class,d)
Classで指定されたクラスのオブジェクトのうち,自分との距離がd以下のすべてのオブジェクトをあらわすTQueryオブジェクトを返します.
print(msg)
画面に文字を表示します。デバッグ用です
color(r,g,b)
指定したRGB値に対応する色を表す文字列を返します
loadPage(Class)
指定したクラスで新しいページ(場面)を作成します
screenOut()
このオブジェクトが画面外に出ている場合、はみ出したピクセル数を返します。画面内にいる場合は0を返します
rnd()
0から1までの実数乱数を返します
rnd(n)
0以上n未満の整数乱数を返します
sin(d), cos(d)
角度d(度数法)の正弦,余弦を返します
rad(d)
角度d(度数法)をラジアンに変換します
deg(r)
角度r(ラジアン)を度数法に変換します
atan2(y,x)
線分(0,0)-(x,y)とx軸のなす角を度数法で返します ※yが先,xが後です.
atanxy(x,y)
線分(0,0)-(x,y)とx軸のなす角を度数法で返します ※xが先,yが後です.
abs(v)
絶対値 |v| を返します
sqrt(t)
平方根 √t を返します
dist(dx,dy)
線分(0,0)-(dx,dy)の長さを返します
dist(obj)
オブジェクト obj とこのオブジェクト間の距離を返します
angleDiff(a,b)
角度a-b と同じ向きを持つ、-180 から 179 までの角度を返します.angleDiff(a,b)の値が正のとき、a から b に 至るには 左回り(aを減らす)が近く、負のときは右回り(aを増やす) のほうが近くなります.
floor(x)
xを超えない最大の整数を返します
ceil(f)
f以上の最小の整数を返します.
trunc(f)
fの小数点を除いた値を返します. fが正の値の場合、floorと同じ値を返し、fが負の値の場合、ceilと同じ値を返します.
clamp(v,a,b)
vの値がa~bの範囲内に収まっていればv自身を返します。 vの値がa~bの範囲をはみ出していれば、aまたはbのうちvに近いほうの値を返します。 a<=b、a>=b いずれでも可
clamped(v,a,b)
clamp(v,a,b)-v と等価です。(はみ出した分の差を返す)

クラス BodyActor?

物理運動するオブジェクトはこのクラスを継承してください。

フィールド(変数)

Actorのフィールドの他に、次のフィールドはそれぞれ特別な意味をもちます。

※ width,height,radiusがいずれも指定されていない場合、フィールドpの値によって指定される画像の大きさ、およびscaleX,scaleYにより物体の衝突判定を決定します。

メソッド(命令)

contactTo(obj)
指定したオブジェクトにぶつかっていればtrue、そうでなければfalseを返します
contactTo(Class)
指定したクラスのオブジェクトのうちどれかぶつかっていればそのオブジェクトのうちの1つを、そうでなければnullを返します

グローバル変数

グローバル変数は、すべてのクラスから読み書きすることができます。

$mouseX, $mouseY
マウスカーソルの座標(横の位置と縦の位置)を表します
$touches[n].x, $touches[n].y
n番目の指のタッチされている座標(n=0,1,2,3)
$touches[n].touched
n番目の指がタッチされていれば1以上、そうでなければ0
$screenWidth,$screenHeight
画面の幅と高さ
$Screen.resize(w,h)
画面の幅と高さを変更します

グローバル変数を自分で定義する

グローバル変数を自分で定義するときは、 window.$score=0; のように、頭にwindow.をつけてください。 一度定義したグローバル変数は $name のようにwindow.をつけなくても使えるようになります


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS