Skip to content

BaseActor

hoge1e3 edited this page Dec 20, 2021 · 22 revisions
Clone this wiki locally

api

BaseActor

画面に表示されるオブジェクトの基本クラスです.実際にはActorを継承してクラスを作成してください. 使用例は用途別リファレンスなどを参照してください.

コンストラクタ(オブジェクトの生成方法)

\new(params)

paramsにはオブジェクトを指定します.paramsの値をフィールドに書き込みます

例:

Main

a=new MyActor{x:50,y:30, power:20, hp:50};
// a.x=50  a.y=30 a.power=20  a.hp=50 となる

MyActor

// デフォルトのプロジェクト設定では,MyActorはBaseActorの子クラスになる
print(x, y, power, hp);

コンストラクタ(2)

\new(x,y,p)

x,y,pの値をフィールドに書き込みます

例:

Main

new MyActor(100,200,$pat_neko);
// x=100  y=200 p=$pat_nekoとなる

フィールドと表示モード

表示モードは,「画像」「文字」「図形」「カスタム」のいずれかです.

  • textに値がセットされている場合,表示モードは「文字」です
  • textに値がセットされておらず,fillStyleに値がセットされている場合,表示モードは「図形」です
  • textにもfillStyleにも値がセットされていない場合,表示モードは「画像」です
  • pにdrawメソッドをもつオブジェクトを指定した場合,表示モードは「カスタム」です

「画像」におけるフィールド

  • p : 表示する画像の番号をあらわします。 使用例
    • pにdrawメソッドをもつオブジェクト(Panelなど)を代入すると、そのオブジェクトのdrawメソッドを用いて描画します。

「文字」におけるフィールド

  • text : 表示される文字
  • size : 文字の大きさ
  • fillStyle : 文字の色を表す文字列(JavascriptのCanvasにおけるfillStyleと同じ書式).またはColorオブジェクト.

「図形」におけるフィールド

  • radius: 値をセットすると円を表示し,その半径を表します
  • width: radiusがセットされていない場合,四角形を表示し,その幅を表します
  • height: radiusがセットされていない場合,四角形を表示し,その高さを表します
  • fillStyle : 図形の色を表す文字列(JavascriptのCanvasにおけるfillStyleと同じ書式).またはColorオブジェクト.

「カスタム」におけるフィールド

  • p : 「すべてのモードで共通のフィールド」で指定された変換操作(移動・伸縮・回転)を施した後,p.drawメソッドを用いて描画します.

すべてのモードで共通のフィールド

  • x : オブジェクトのx座標をあらわします使用例
  • y : オブジェクトのy座標をあらわします使用例
  • zOrder : オブジェクト同士が重なった場合、この値が小さい方が手前に表示されます。使用例
  • alpha : 表示する画像の透明度を指定します(255-0)。使用例
  • scaleX : オブジェクトの横方向の拡大率を指定します.scaleYが未定義の場合は縦方向にもscaleXの拡大率が適用されます。使用例
  • scaleY : オブジェクトの縦方向の拡大率を指定します
  • rotation : オブジェクトの回転を指定します.右回りで指定した値の角度回転します。使用例
  • crashScale: 当たり判定の大きさの比率を設定します.初期値は1です
  • useObjectPool: この値をtrueにすると、このオブジェクトが消滅した後、オブジェクトプールに保存されるようになります。
  • lifeKeeper: この値に他のActorを設定すると,そのActorがdieメソッドで消滅したときに,このオブジェクトも自動的に消滅します.
  • position: x,y を操作可能なVec3Viewオブジェクトです.
    • position に他の値を代入すると,それ以降はx,y を操作できません
  • layer: このオブジェクトを配置するレイヤー を指定します.
    • layer に他のActorを指定すると,そのActor(親)からの相対座標を用いて表示を行います.また,親が消滅するとこのオブジェクトも消滅します.crashToなどの当たり判定は使えなくなります(親にしか当たり判定はありません).また,allなどのオブジェクトの列挙からこのオブジェクトは除外されます.
  • align: (x,y)の基準点を決めます。
    • 例えば、次のような値を代入できます
      • "left": xが画像の左端になるように表示
      • "right": xが画像の右端になるように表示
      • "center": xが画像の中央になるように表示(デフォルト)
      • "center top": yが画像の上端になるように表示
      • "center bottom": yが画像の下端になるように表示
      • "center middle": yが画像の中央になるように表示(デフォルト)
      • "center baseline": 「文字」においては、CanvasコンテキストのtextBaselineに代入できるものも指定できます。
      • "10 10" 画像中心から(10, 10) ずれた場所が(x,y)になるように表示
      • "left bottom 10 -20" 画像左下から(10,-20)ずれた場所が(x,y)になるように表示
    • 詳しくはAlign2Dオブジェクトを参照してください。
  • width, height: 「図形」以外の表示において、直前に描画を行った際の画像や文字の大きさが代入されています。

その他のフィールド

上記以外のフィールドには値を自由に設定できます(表示には影響しません)

メソッド

Backlink