プログラム編集フォーム


ゲームなどで実際に使用するデータをここで作成します。

"変換"は、入力画面のプログラム内容を変換し、出力画面に表示します。変換できなかった内容は赤色でエラー表示されます。
"中止"は、プログラムの変換を中止します。
"保存"は、入力画面の内容を別ファイルに保存します。
"読込"は、プログラム内容をファイルから読み込み、入力画面に表示します。
"結果保存"は、出力画面の出力結果を別ファイルに保存します。
"検索↑"は、上方向へエラー箇所を検索します。
"検索↓"は、下方向へエラー箇所を検索します。
"入力画面"は、変換したいプログラム内容をここに記述します。
"出力画面"は、入力画面で入力したプログラムを元に変換した結果がここに表示されます。


プログラムについて

C++風にプログラムを記述することができます。
#〜#まで囲まれた部分がプログラムとして認識され、それ以外は単なる文字列として出力画面に表示されます。

変数

  1. 変数には、i,j,n,ii,jj,nn,iii,jjj,nnn,value,value0〜value16,on_off,off_on があり初期値はon_offが1でそれ以外は0です。
  2. 変数に値を代入しています。代入式は出力画面には表示されません。
  3. 代入式は変数に他の変数を代入することもできます。
  4. on_off,off_onの変数は偶数なら0、奇数なら1が代入されます。0か1しか代入できない変数です。
  5. 先頭に(int)を付けると小数を整数に変換します。

計算

  1. 先頭に $ を付けることによって、#〜#の内容を計算式として計算し、結果を出力します。
  2. 変数を使用し、$を付けないときの結果と、$を付けたときの結果を出力しています。
  3. 変数は、 i++ や i+=2 のように演算可能です。
    可能な演算子は、 ++  --  +=  -=  *=  /= です。

マクロ

  1. マクロデータフォームで作成したマクロを出力しています。
    画面には現在の画像の幅、ユーザーが作成した攻撃力、速さの値が出力されています。
  2. 各図形の要素を出力しています。
    図形の出力形式は、 図形の名前[色ID][レイヤーID][ID].要素 で
    画面には上から順に

    1. 点の色0番のレイヤー256番のID1番のX座標
    2. 線の色2番のレイヤー513番のID0番の終点Z座標
    3. ボックスの色7番のレイヤー771番のID4番の幅

    を出力しています。
  3. 色IDの部分は、数値の他に文字列で指定することもできます。
    画面には、色0番が"攻撃"という設定をしているので、2で説明した点の座標と同じ値が出力されています。
    またボックスに関しては、ボックスの各頂点の座標を取得する際に、要素名を VertexPPPX のような形式にする事で出力させる事ができます。
    画面には上から順に

    1. ボックスの色7番のレイヤー771番のID4番の、(中心X+幅、中心Y+高さ、中心Z+深さ)の頂点のX座標
    2. ボックスの色7番のレイヤー771番のID4番の、(中心X−幅、中心Y−高さ、中心Z−深さ)の頂点のY座標
    3. ボックスの色7番のレイヤー771番のID4番の、(中心X+幅、中心Y−高さ、中心Z+深さ)の頂点のZ座標

    を出力しています。

    ※"Vertex"は頂点、"P"はプラス、"M"はマイナス、という意味です。
  4. ユーザーが作成した要素を出力しています。
    出力形式は User[色ID][ID].要素 となっており、独自の要素Powerを出力しています。
    色IDは図形と同じく、数値または文字列で指定可能です。
  5. ユーザーが作成したリストの中身を出力しています。
    出力形式は List[タイプID][ID] となっており、タイプIDには図形と同じく、数値または文字列で指定可能です。
  6. レイヤー情報を出力しています。
    出力形式は Layer[レイヤー0のID][レイヤー1のID][レイヤー2のID].要素 となっており、
    このときのレイヤー情報は以下のようになっています。

    レイヤー0レイヤー1レイヤー2
    主人公 立ち 立ちアニメ1
    立ちアニメ2
    立ちアニメ3
    しゃがみ しゃがみアニメ1
    しゃがみアニメ2
    ジャンプ ジャンプアニメ1
    ジャンプアニメ2
    ジャンプアニメ3
    ジャンプアニメ4
    敵1 パンチ パンチアニメ1
    キック キックアニメ1
    キックアニメ2

    上記表と照らし合わせて、画面の説明をすると、上から順に

    1. レイヤー0の識別用の名前
    2. レイヤー0-1の識別用の名前
    3. レイヤー0-2-1の識別用の名前

    を出力しています。
  7. 識別用の名前のほかに、レイヤーの数、表示用の名前を出力しています。
    このときのレイヤー情報は、識別用と表示用の名前は同じなので、出力結果も6と同じ結果になっています。
  8. レイヤーの指定には、数値のほかに文字列での指定も可能です。

条件分岐

  1. 三項演算式による条件分岐が可能です。
    出力形式は、 (Left < Right ? True : False) で、"Left""Right"には数値を、"True""False"には文字列を記述してください。
    使用可能な比較演算子は、 ==  !=  <=  >=  <  > です。
  2. 変数も使用可能です。

繰り返し処理

  1. 出力形式はC++とほぼ同じで、#for#〜#next#までの内容を繰り返し出力します。
    画面では、変数iの値を5回繰り返し出力しています。
  2. 変数を利用して繰り返し処理を行っています。
  3. 2重ループの基本的な例です。