So-S スクアニ特化型プログラミング言語 「リストで管理する」というシステムを用いた画期的(?)なスクアニ製作用定義です。そーえすって呼んでね。 質問、追加してほしい機能、バグ等あったら(というかバグはあるけど)教えてください。 実際のプログラム例は下にあります。 理論の説明 最初の一文字 動きの種類を表します。 一覧はこんな感じ。 a:表示 b:音を流す c:コスチュームを変える d:隠す f:音などを止める l:層を動かす m:動かす n:変数をいじる s:しゃべる w:待つ 三文字目 動作の対象を表します。初期状態の場合、nが猫、Gがゴボを示しています。 (){}[] ボタンの「書く」から記入する際は気にしなくていいです。 直接リストに入れる場合は、ややこしいのですが、基本的には数字を入れるやつが()、変数名とかしゃべりとか、名前を入れるやつが{}、それでもかっこが足りない時が[]です。 最後の「,」 コードの最後にコンマをつけると、次の動きに即座に移行します。コンマをつけなければその動作が終わってから次のブロックに移動します。このコンマで同じ種類の動き(発言と発言、制動と制動など)を同時に行わせることはできません。直接記入でしか使えません。 しゃべる {}の中に漢字バージョンを入れて、[]の中にひらがなバージョンを入れます。ひらがなバージョンは漢字一文字ずつでコンマを入れます。例えば{この定義}は[こ,の,てい,ぎ]となります。猫なら口は動きますが、ゴボは動きません。 制動 ()の中に六つの値を入れ込みます。左から、(フレーム数,値の種類,初期値(打ち込まなくてもいい),変更後の値,イージングの強度,イージングの種類)です。後ろ二つについては中のスプライト「制動の初期値とか」を参照。 表示・隠す 左から(x座標,y座標,向き,大きさ)です。 コスチューム {}内に部位、()内に変更先のコスチューム名を打ち込みます。 待つ ()内にフレーム数を入れます。一般的には30フレームで1秒ほど。←だと思うんですが・・・ 層を動かす ()内に動かす層を入れます。このとき、最前面に動かしたいときは最前面もしくはfront、最背面に動かしたいときは最背面もしくはbackと入力します。また、(1)だとスクラッチ上の「一層手前に出す」とは異なり、クローンを統合した一つのものの前に出ることを意味します。つまり、いくつものクローンでできた猫は「一層」とみなされるわけです。現状は最前面と最背面以外の機能はしっかり動くかわかりません。 音 {}内に音の名前を入れます。後ろに,がついてるときはリピート再生、そうでないときは一回流れ終わったら音は止まります。どちらの場合も音が流れ始めてすぐ次のプログラムに移ります。 変数 {}内に変数名、()に変更後の値です。 {}内にallを入れれば一括で変更できます。 「画面外削除復帰」は、画面外にキャラクターが入ったときにクローンが削除されるのを防ぐための変数です。基本は0にしておき(重くなるため)、体が一部でも画面外に出ている状態から動かすときは1にしましょう。 「喋る速さ」は名前の通りです。デフォルトの0がおすすめです。 コスチューム名 パーツごとに区切っています。一人のコスチュームの上に空コスチュームを置いとかないとバグるので注意です。(中参照)最初の一文字は対象に入れる文字、次の二文字が部位名、そこからが詳細です。「口」など一文字の部位では「口、」のようにすると口のコスチュームを動かせます。別に「口@」とかでもいいんですが「口、」が一番確実です。また、セリフを言わせたいコスチュームには「顔」という文字が入るようにしておかないと喋りません。 入力時 半角と全角は勝手に修正されます。また、数字だけを入力するとその番号のコードが複製されます。 パソコンを使ってる場合は中からリストの中身をクリックすれば直接いじれます。 プログラム例 s:n{時間だよ}[じ,かん,だ,よ] sは動作「話す」を意味します。nは対象「猫」を示しています。つまり「猫が話す」というプログラムです。この場合だと「時間だよ」と猫が話します。[]内は口を動かすためのプログラムです。「時,間,だ,よ」をすべてひらがなにしたものが入ると考えればいいでしょう。 m:n(60,x,0,120,1,out) mは「動く」なので、この場合は猫が動きます。最初の「60」は、60フレームで移動することを示します。「x」はx座標を動かすことを示します。次の「0」は初期値です。x座標を最初に0にして動き出すことを示します。何も入力しない場合今いる場所から動き始めます。その次の「250」は移動後にx座標が250になることを示しています。最後の「1」と「out」については中の「@taichi0802様からの借り物」で詳しく説明されています。 t:G(n,x,t,-100) 「Gのx座標がnのx座標にともなって動く」というコードです。「x」はyなどに置き換えられます。そのあとは「t」なら、「Gのx座標とnのx座標の差が等しくなる」ように動きます。例えばこのコードだと「-100」なので、nのx座標が200ならGのx座標は100というようになります。nが左に50動くとGも左に50動きます。「t,-100」を「f,-100」に置き換えると、-100を対象の軸として反対向きに動くということを示すようになります。 t:G/ Gが何かに伴って動くことをやめることを示します。 n:{画面外削除復帰}(1) 変数「画面外削除復帰」を1(ON)にすることを示します。クローンの仕様上画面外に体の一部が出てしまうと次に画面に戻ってくる場合にクローンが一部消えてしまうので、必要に応じて1にしましょう。 コスチュームの詳細な話 「本体」に新しいものを入れれば使えるようになります。ただ、次の規則を守ってください。 ・「大きくするコスチューム」より前に設置する ・一文字目はそのまま対象(nやGなどの部分に当てはまるもの)になるので気を付ける。重複すると多分バグる。 ・必ず上に空コスチュームを載せる。 ・例えばコスチュームが一つのみのキャラクターの場合、「A」→「A顔」のような名前のコスチュームを順に追加する。「A」は空コスチューム。 ・表情を変えたい場合は、「A」→「A体」→「A顔、通常」→「A顔、大笑い」のような順にコスチュームを入れる。基本的に先に来るコスチュームの方が背面に表示される。
借りる場合はこの下のクレジットをコピーしてください。 イージング@taichi0802様 口動かしなど@hirotenx様 その他参考@fcmania様 @harukingsun様 製作:次代のデスゲームスクアニ製作委員会 次代のデスゲームスクアニ製作委員会は会員を募集しています! https://scratch.mit.edu/projects/1207594806