じゃんけん


プログラムの 中身 なかみ くわ しくみてみよう

1、2、3キーの入力でPCとじゃんけんするゲームのスクリプトについてスプライトごとに 解説 かいせつ します。

プレイヤー

主な うご

  • Startがクリックされたら「じゃん」と2秒言った後、 「キー入力!グー(1)、チョキ(2)、パー(3)」と考える。
  • 変数 へんすう inkeyが0でなくなる (つまり1、2、3いずれかが入力される)まで待つ。入力されたキーに おう じて 「グー!」、「チョキ!」、「パー!」と言う。
  • CPUの手( 変数 へんすう cpu)とPlayerの手( 変数 へんすう inkey)を比べ、 勝敗 しょうはい おう じて 「勝った!」、「負けた~」、「あいこか~」と言う。
  • 1~3のキーが されたら、 変数 へんすう inkeyにその数字をセットする。

Startを受け取ったとき

    • 説明 せつめい
    • キー入力を待つ。 1:グー、2:チョキ、3:パー、として 勝敗 しょうはい 判定 はんてい する。
    • 必要な 処理 しょり
    • セリフの 表示 ひょうじ
      入力された手の 判別 はんべつ
      勝敗 しょうはい 判定 はんてい
    • コードの 詳細 しょうさい
    • 「じゃん」と2秒言います。(1秒 おく れてCPUが「けん」と言います。)

      プレイヤーにキー入力をうながすため「キー入力!グー(1)、チョキ(2)、パー(3)」と考えます。

      inkey数値 すうち が入るのを待ちます。 どれかのキーが されたとき のコードで1~3のキーが入力されるとinkey=0ではなくなります。

      inkey あたい を調べて、 Playerの手を 判別 はんべつ し言います。

      cpu -inkeyを計算し flag格納 かくのう します。 これによりこの後の 勝敗 しょうはい 判別 はんべつ 簡単 かんたん にしています。

      以下 いか のAのコードで 勝敗 しょうはい 判別 はんべつ をします。

    • A :

      flag=1または flag=-2のときはPlayerの勝ちです。
      [CPU:チョキ(2)]-[Player:グー(1)]=1
      [CPU:パー(3)]-[Player:チョキ(2)]=1
      [CPU:グー(1)]-[Player:パー(3)]=-2
      「勝った!」と言い、ゲームは終了します。
      条件 じょうけん に当てはまらなければ 以下 いか のBのコードでさらにあいこを 判別 はんべつ します。

    • B :

      flag=0のときはあいこです。
      [CPU:グー(1)]-[Player:グー(1)]=0
      [CPU:チョキ(2)]-[Player:チョキ(2)]=0
      [CPU:パー(3)]-[Player:パー(3)]=0
      「あいこか~」と言い、ゲームは終了します。
      条件 じょうけん に当てはまらなければPlayerの負けです。「負けた~」と言い、ゲームは終了します。

キー入力されたとき

    • 説明 せつめい
    • 1から3のキーが入力されたらinkey にその 数値 すうち をセットします。
    • コードの 詳細 しょうさい
    • どのキーが されたのか調べます。
      1キーならinkey=1にします。
      2キーならinkey=2にします
      3キーならinkey=3にします。
      それ以外のキーならば何もしません。

CPU

主な うご

  • Startがクリックされたら1秒まってから「けん!」と1秒言う。「Hmm...」と考える。
  • 変数 へんすう cpu乱数 らんすう (1~3)をセットする。
  • 変数 へんすう inkeyが0でなくなる (つまり1、2、3いずれかが入力がされる)まで待つ。 変数 へんすう cpu数値 すうち おう じて「グー!」、 「チョキ!」、「パー!」と言う。
  • 2秒待ち、CPUの手( 変数 へんすう cpu)とPlayerの手( 変数 へんすう inkey)を比べ、 勝敗 しょうはい おう じて 「勝った!」、「負けた~」、「あいこか...」と言う。

Startを受け取ったとき

    • 説明 せつめい
    • 初期状態 しょきじょうたい 設定 せってい しキー入力を待つ。 1:グー、2:チョキ、3:パー、として 勝敗 しょうはい 判定 はんてい する。
    • 必要な 処理 しょり
    • 変数 へんすう 初期化 しょきか
      セリフの 表示 ひょうじ
      乱数 らんすう で手を決定
      勝敗 しょうはい 判定 はんてい
    • コードの 詳細 しょうさい
    • 1秒待ってから「けん」と1秒言います。(先にPlayerが「じゃん」と言います) キー入力待ちの間「Hmm...」と考えます。

      cpuに1~3の 乱数 らんすう (でたらめな数)をセットします。

      inkey数値 すうち が入るのを待ちます。 どれかのキーが されたとき のコードで1~3のキーが入力されると inkey=0ではなくなります。

      cpu あたい を調べて、CPUの手を 判別 はんべつ し言います 。

      2秒待ちます。(この間にPlayerスプライト がわ flag勝敗 しょうはい 判別 はんべつ 用の あたい を計算し 格納 かくのう します。)

      以下 いか のAのコードで 勝敗 しょうはい 判別 はんべつ をします。

    • A :

      flag=-1または flag=2のときはCPUの勝ちです。
      [CPU:グー(1)]-[Player:チョキ(2)]=-1
      [CPU:チョキ(2)]-[Player:パー(3)]=-
      [CPU:パー(3)]-[Player:グー(1)]=2
      「勝った!」と言い、ゲームは終了します。
      条件 じょうけん に当てはまらなければBのコードでさらにあいこを 判別 はんべつ します。

    • B :

      flag=0のときはあいこです。
      [CPU:グー(1)]-[Player:グー(1)]=0
      [CPU:チョキ(2)]-[Player:チョキ(2)]=0
      [CPU:パー(3)]-[Player:パー(3)]=0
      「あいこか...」と言い、ゲームは終了します。
      条件 じょうけん に当てはまらなければPlayerの負けです。「負けた~」と言い、ゲームは終了します。

Start

主な うご

  • がクリックされたら 変数 へんすう cpuinkeyflag を0にし( 初期化 しょきか )、コスチュームをStartにして 表示 ひょうじ する。
  • クリックされたら かく スプライトへStartを送り、 非表示 ひひょうじ にする( かく スプライト Startを受け取ってゲーム開始)。

緑の はた がクリックされたとき

    • 説明 せつめい
    • ゲームスタートの 準備 じゅんび をする。
    • 必要な 処理 しょり
    • 変数 へんすう 初期化 しょきか
      Startの 表示 ひょうじ
      マウスポインターが上に乗ったとき色を える
    • コードの 詳細 しょうさい
    • 変数 へんすう cpuinkeyflag 初期化 しょきか するため0にします。

      x 座標 ざひょう (横の 表示 ひょうじ 位置 いち )を0、 y 座標 ざひょう ( たて 表示 ひょうじ 位置 いち )を0にします。

      コスチュームをStartにして 表示 ひょうじ します。 (ゲーム終了時は 非表示 ひひょうじ になっているため)

      マウスポインターがこのスプライトに れているときは色を え、 はな れたら元の色に もど します。

このスプライトがクリックされたとき

    • コードの 詳細 しょうさい
    • コード「 緑の はた がクリックされたとき」が動作しているので、止めます。

      かく スプライトにStartを送りゲームを開始します。

^