じゃんけん


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

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を送りゲームを開始します。

^