じゃんけんぽい

プレイヤー入力に対する反応

プレイヤーに選択させる

プレイヤーに選択させる

入力に対する反応

入力に対する反応

このように、プレイヤーに選択されたぐーちょきぱーに対して反応してみましょう。

処理例1 – クソゲー

【起動条件:呼び出し】

相手の手を見て、かならず勝つ手を出してきます。ゲーム性が一切無く、間違いなくクソゲーです。
文字列で分岐しているために汎用性もほとんどありません。

処理例2 – ランダム + 分岐

【起動条件:呼び出し】

変数を使い、自分をCSelf10、相手をCSelf11として、1:ぐー、2:ちょき、3:ぱー と定義し、選択によって文字列に入力します。
相手は0~2をランダムで決定し(16行)、同様に出した手を文字列に入力。自分 – 相手を計算し、3で割った余りを求めます。(28-30行)
余りは以下の通り。

自分ぐー 自分ちょき 自分ぱー
相手ぐー
相手ちょき
相手ぱー

見比べると、勝敗と数字の関係が見えてきます。0ならあいこ、1なら自分の負け、2なら自分の勝ちですね。よって、それぞれで分岐すると勝敗が分かります。

【NOTE:演算子】

X 【=】 Y+Z(XにはY+Zの結果が入る)
X 【+=】 Y+Z(XにはX+Y+Zの結果が入る)
のように、【=】と【+=】の違いはしっかり理解しておく必要があります。
また、ここで使った演算子【%】は割った余りを求めるものです(100分率の%ではない事に注意)。 使い方によっては、処理時間やコマンドの行数を大幅に短縮したりできますので、しっかり把握しておきましょう。

【切り上げ】【切り下げ】は、分岐を使わずに比較やソートが出来たりするので割と便利です(が、あまり使いません)。

物理ゲームや弾幕STGを作るのでなければ、Sin・Cos・角度などはめったに使わないと思います。 右辺の真ん中にある【~】はランダム処理を作るのに必須です。 この例でも相手の出す手をランダムで決定するために(16行)に使用しています。

【ビット積】は、ビット積自体使わなくてもゲームが作れることと、条件分岐やイベント起動条件に【のビットを満たす】があるのでほぼ使わないでしょう。

処理例3 – ゲームっぽく

リザルト表示

リザルト表示

このように、さっきのイベントに付け足し。
イベントの最初にCSelf14[試合数]に+1、勝ち負け引き分けの分岐内でそれぞれCSelf[15-17]に+1します。
勝ち×100÷試合数で勝率が出るので、表示してやればゲームっぽくなりますね。
勝ち÷試合数を先に計算すると、小数点を切り捨てるウディタの仕様では0になってしまうので気をつけましょう。

はじめにお読みください

ここはWOLF RPGエディター(通称ウディタ)のイベント作成において、 ひとつのお題に対していくつかの考え方を示すページです。正解や不正解ではなく、色々な考え方を示していけたらいいなと思っています。詳しくは以下をお読みください。

続きを読む