×

[PR]この広告は3ヶ月以上更新がないため表示されています。
ホームページを更新後24時間以内に表示されなくなります。

じゃんけんゲーム


ゲーム作りの初歩として、じゃんけんのゲームを作ってみましょう。

・プレイヤーは、「グー」「チョキ」「パー」の3つのボタンのうちどれかを押す。
・コンピュータ側は、ボタンが押されたら、「グー」「チョキ」「パー」のうちランダム表示。
・結果から、「プレイヤーの勝ち」「コンピュータ側の勝ち」「あいこ」のうちどれかを表示。
・どちらかが先に三回勝ったらゲーム終了とする。なので、プレイヤーとコンピュータ側の勝った回数も表示するようにしたい。

「グー」「チョキ」「パー」の3つのボタンを作るためには、ボタン生成用の、

Controls.AddButton(caption, left, top)

を使えば良いだけですが、コンピュータ側は単に文章で「グー」だのと出すだけではつまらない。
ということで、Shapeオブジェクトを使ってそれっぽい画像を作ろうと思います。
Shapeオブジェクトでは、以下で図形を作ることができます。

Shapes.AddRectangle(width, height)……四角形を作成
Shapes.AddEllipse(width, height)……楕円を作成
Shapes.AddTriangle(x1, y1, x2, y2, x3, y3)……三角形を作成
Shapes.AddLine(x1, y1, x2, y2)……直線を作成

更に作成した図形を回転させること(Shapes.Rotate(shapeName, angle))なども可能です。
とはいえ、これだけで手の形を作ると、かなり安っぽい感じになりそうな予感しかしません。w
あくまで、「Shapeオブジェクトで図形を作る練習」ということで。w

まずはパーを。
掌の部分は円、そこから指を楕円で5個くっつければよさそうです。
肌色は「BlanchedAlmond」を使ってみます。
Shapeオブジェクトで図形を作る時は、「GraphicsWindow.BrushColor」で図形の中、「GraphicsWindow.PenColor」で図形の縁取りの色を決めることができます。

GraphicsWindow.Title = "じゃんけんゲーム"
GraphicsWindow.Width = 600
GraphicsWindow.Height = 600
GraphicsWindow.BackgroundColor = "white"

GraphicsWindow.BrushColor = "BlanchedAlmond"
GraphicsWindow.PenColor = "BlanchedAlmond"

tenohira = Shapes.AddEllipse(200, 200)
oyap = Shapes.AddEllipse(55, 180)
hitop = Shapes.AddEllipse(45, 200)
nakap = Shapes.AddEllipse(45, 220)
kusurip = Shapes.AddEllipse(40, 200)
kop = Shapes.AddEllipse(40, 180)

Shapes.Move(tenohira, 200, 300)
Shapes.Move(oyap, 160, 280)
Shapes.Move(hitop, 220, 170)
Shapes.Move(nakap, 275, 140)
Shapes.Move(kusurip, 330, 170)
Shapes.Move(kop, 380, 220)

Shapes.Rotate(oyap, 330)
Shapes.Rotate(hitop, 350)
Shapes.Rotate(kusurip, 5)
Shapes.Rotate(kop, 10)

じゃんけん

一応、パーに見える……よね。w
掌(tenohira)は円、指(oyap〜kop)は楕円にして、それぞれをShapes.Moveで移動後に、親指、人差し指、薬指、小指をShapes.Rotateで適当に回転させています。
これで「パー」ワンセットです。

次は「チョキ」。

GraphicsWindow.BrushColor = "BlanchedAlmond"
GraphicsWindow.PenColor = "BlanchedAlmond"

tenohira = Shapes.AddEllipse(200, 200)

hitoc = Shapes.AddEllipse(45, 200)
nakac = Shapes.AddEllipse(45, 220)

Shapes.Move(tenohira, 200, 300)
Shapes.Move(hitoc, 220, 170)
Shapes.Move(nakac, 275, 140)

Shapes.Rotate(hitoc, 350)

じゃんけん

……試してみてわかりました。
下手に親指とか薬指とか入れると訳がわからない図になります。これでいい。w

最後はグーですが、さすがにこれは、円だけって訳にはいかないですよね……。

GraphicsWindow.BrushColor = "BlanchedAlmond"
GraphicsWindow.PenColor = "BlanchedAlmond"

tenohirag = Shapes.AddEllipse(200, 180)
oyag = Shapes.AddEllipse(55, 100)

Shapes.Move(tenohirag, 200, 300)
Shapes.Move(oyag, 200, 390)

Shapes.Rotate(oyag, 330)

じゃんけん

グーに見える! 見える!……w
そういうことにします!w

これでコンピュータ側の画像が作れましたので、根本的な、「じゃんけん」のプログラムを考えましょう。
「コンピュータの出す手をランダムで決める」方法ですが、「Math.GetRandomNumber(maxNumber)」を使います。
Math.GetRandomNumber(maxNumber)」では、1 から maxNumber の間の乱数(maxNumber を含む)を取得することができます。
Math.GetRandomNumber(3)」なら、1から3までのランダムな数を返します。
1ならグー、2ならチョキ、3ならパー、とすれば、コンピュータの出す手をランダムに決めることができます。

後は、

プレイヤーが「グー」のボタンを押した時……
 コンピュータが「グー」「チョキ」「パー」を出した時に分けてメッセージを出す
プレイヤーが「チョキ」のボタンを押した時……
 コンピュータが「グー」「チョキ」「パー」を出した時に分けてメッセージを出す
プレイヤーが「パー」のボタンを押した時……
 コンピュータが「グー」「チョキ」「パー」を出した時に分けてメッセージを出す

というプログラムを、If構文を使いながらひたすら書いていくだけです。
つまり、ボタンクリック時のサブルーチンは、

Math.GetRandomNumber(3)でコンピュータの手を決める
If (プレイヤーが「グー」のボタンを押した) Then
  If (コンピュータが「グー」) Then
    「あいこです。」と表示
  EndIf
  If (コンピュータが「チョキ」) Then
    「あなたの勝ち!」と表示
  EndIf
  If (コンピュータが「パー」) Then
    「あなたの負け!」と表示
  EndIf
EndIf
If (プレイヤーが「チョキ」のボタンを押した) Then
  If (コンピュータが「グー」) Then
    「あなたの負け!」と表示
  EndIf
  If (コンピュータが「チョキ」) Then
    「あいこです。」と表示
  EndIf
  If (コンピュータが「パー」) Then
    「あなたの勝ち!」と表示
  EndIf
EndIf
If (プレイヤーが「パー」のボタンを押した) Then
  If (コンピュータが「グー」) Then
    「あなたの勝ち!」と表示
  EndIf
  If (コンピュータが「チョキ」) Then
    「あなたの負け!」と表示
  EndIf
  If (コンピュータが「パー」) Then
    「あいこです。」と表示
  EndIf
EndIf

これが大まかな流れになります。
「文字を出す座標の位置」を決めてから書いていくと良いでしょう。
また、これまでと同じく、「文字を書く時は、前に書かれた文字を背景色で塗って消してから」を忘れないように。

GraphicsWindow.Title = "じゃんけんゲーム"
GraphicsWindow.Width = 600
GraphicsWindow.Height = 600
backcolor = "white"
GraphicsWindow.BackgroundColor = backcolor

'肌色を指定
GraphicsWindow.BrushColor = "BlanchedAlmond"
GraphicsWindow.PenColor = "BlanchedAlmond"

'パーを描く
tenohira = Shapes.AddEllipse(200, 200)
oyap = Shapes.AddEllipse(55, 180)
hitop = Shapes.AddEllipse(45, 200)
nakap = Shapes.AddEllipse(45, 220)
kusurip = Shapes.AddEllipse(40, 200)
kop = Shapes.AddEllipse(40, 180)

Shapes.Move(tenohira, 200, 300)
Shapes.Move(oyap, 160, 280)
Shapes.Move(hitop, 220, 170)
Shapes.Move(nakap, 275, 140)
Shapes.Move(kusurip, 330, 170)
Shapes.Move(kop, 380, 220)

Shapes.Rotate(oyap, 330)
Shapes.Rotate(hitop, 350)
Shapes.Rotate(kusurip, 5)
Shapes.Rotate(kop, 10)

'チョキを描く
hitoc = Shapes.AddEllipse(45, 200)
nakac = Shapes.AddEllipse(45, 220)

Shapes.Move(hitoc, 220, 170)
Shapes.Move(nakac, 275, 140)
Shapes.Rotate(hitoc, 350)

tenohirag = Shapes.AddEllipse(200, 180)
oyag = Shapes.AddEllipse(55, 100)

'グーを描く
Shapes.Move(tenohirag, 200, 300)
Shapes.Move(oyag, 200, 390)

Shapes.Rotate(oyag, 330)

'描いたグー、チョキ、パーを一度非表示にする
Shapes.HideShape(tenohira)
Shapes.HideShape(oyap)
Shapes.HideShape(hitop)
Shapes.HideShape(nakap)
Shapes.HideShape(kusurip)
Shapes.HideShape(kop)

Shapes.HideShape(hitoc)
Shapes.HideShape(nakac)

Shapes.HideShape(tenohirag)
Shapes.HideShape(oyag)

'プレイヤー用のグー、チョキ、パーのボタン
GraphicsWindow.BrushColor = "black"
GraphicsWindow.FontSize = 30
gu = Controls.AddButton("グー", 70, 20)
choki = Controls.AddButton("チョキ", 250, 20)
pa = Controls.AddButton("パー", 450, 20)

'ボタンを押した時のサブルーチンを「Onclick」という名前にする
Controls.ButtonClicked = Onclick

GraphicsWindow.FontSize = 30

'ボタンを押した時のサブルーチン「Onclick」
Sub Onclick
'2度目以降のじゃんけん用に、まず、グー、チョキ、パーを非表示にする
  Shapes.HideShape(tenohira)
  Shapes.HideShape(oyap)
  Shapes.HideShape(hitop)
  Shapes.HideShape(nakap)
  Shapes.HideShape(kusurip)
  Shapes.HideShape(kop)

  Shapes.HideShape(hitoc)
  Shapes.HideShape(nakac)

  Shapes.HideShape(tenohirag)
  Shapes.HideShape(oyag)
  
'コンピュータ用の乱数
  com = Math.GetRandomNumber(3)

'共通部分の描画。backcolorで白い四角形を描き前のじゃんけん消去
  GraphicsWindow.BrushColor = backcolor
  GraphicsWindow.FillRectangle(0, 100, 600, 500)
  '共通部分の台詞描画
  GraphicsWindow.BrushColor = "black"
  GraphicsWindow.DrawText(50, 100, "あなたが出したのは")
  GraphicsWindow.DrawText(450, 300, "相手は")
  
'グーのボタンを押した時
  If Controls.LastClickedButton = gu Then
    GraphicsWindow.BrushColor = "red"
    GraphicsWindow.DrawText(300, 100, "グー")
    If com = 1 Then
      Shapes.ShowShape(tenohirag)
      Shapes.ShowShape(oyag)
      GraphicsWindow.BrushColor = "black"
      GraphicsWindow.DrawText(450, 350, "グー")
      GraphicsWindow.DrawText(100, 500, "あいこです。")
    EndIf
    If com = 2 Then
      Shapes.ShowShape(tenohira)
      Shapes.ShowShape(hitoc)
      Shapes.ShowShape(nakac)
      GraphicsWindow.BrushColor = "black"
      GraphicsWindow.DrawText(450, 350, "チョキ")
      GraphicsWindow.DrawText(100, 500, "あなたの勝ち!")
    EndIf
    If com = 3 Then
      Shapes.ShowShape(tenohira)
      Shapes.ShowShape(oyap)
      Shapes.ShowShape(hitop)
      Shapes.ShowShape(nakap)
      Shapes.ShowShape(kusurip)
      Shapes.ShowShape(kop)
      GraphicsWindow.BrushColor = "black"
      GraphicsWindow.DrawText(450, 350, "パー")
      GraphicsWindow.DrawText(100, 500, "あなたの負け!")
    EndIf
  EndIf

'チョキのボタンを押した時
If Controls.LastClickedButton = choki Then
    GraphicsWindow.BrushColor = "red"
    GraphicsWindow.DrawText(300, 100, "チョキ")
    If com = 1 Then
      Shapes.ShowShape(tenohirag)
      Shapes.ShowShape(oyag)
      GraphicsWindow.BrushColor = "black"
      GraphicsWindow.DrawText(450, 350, "グー")
      GraphicsWindow.DrawText(100, 500, "あなたの負け!")
    EndIf
    If com = 2 Then
      Shapes.ShowShape(tenohira)
      Shapes.ShowShape(hitoc)
      Shapes.ShowShape(nakac)
      GraphicsWindow.BrushColor = "black"
      GraphicsWindow.DrawText(450, 350, "チョキ")
      GraphicsWindow.DrawText(100, 500, "あいこです。")
    EndIf
    If com = 3 Then
      Shapes.ShowShape(tenohira)
      Shapes.ShowShape(oyap)
      Shapes.ShowShape(hitop)
      Shapes.ShowShape(nakap)
      Shapes.ShowShape(kusurip)
      Shapes.ShowShape(kop)
      GraphicsWindow.BrushColor = "black"
      GraphicsWindow.DrawText(450, 350, "パー")
      GraphicsWindow.DrawText(100, 500, "あなたの勝ち!")
    EndIf
  EndIf

'パーのボタンを押した時
If Controls.LastClickedButton = pa Then
    GraphicsWindow.BrushColor = "red"
    GraphicsWindow.DrawText(300, 100, "パー")
    If com = 1 Then
      Shapes.ShowShape(tenohirag)
      Shapes.ShowShape(oyag)
      GraphicsWindow.BrushColor = "black"
      GraphicsWindow.DrawText(450, 350, "グー")
      GraphicsWindow.DrawText(100, 500, "あなたの勝ち!")
    EndIf
    If com = 2 Then
      Shapes.ShowShape(tenohira)
      Shapes.ShowShape(hitoc)
      Shapes.ShowShape(nakac)
      GraphicsWindow.BrushColor = "black"
      GraphicsWindow.DrawText(450, 350, "チョキ")
      GraphicsWindow.DrawText(100, 500, "あなたの負け!")
    EndIf
    If com = 3 Then
      Shapes.ShowShape(tenohira)
      Shapes.ShowShape(oyap)
      Shapes.ShowShape(hitop)
      Shapes.ShowShape(nakap)
      Shapes.ShowShape(kusurip)
      Shapes.ShowShape(kop)
      GraphicsWindow.BrushColor = "black"
      GraphicsWindow.DrawText(450, 350, "パー")
      GraphicsWindow.DrawText(100, 500, "あいこです。")
    EndIf
  EndIf
EndSub

じゃんけん

じゃんけん

予想はしていましたが、やはり安っぽい絵柄になりました。w
ですがプログラム自体は、ちゃんと動きます。
ここに、「勝った回数」を表示していきたいですね。

最初に、
playerwin = 0
comwin = 0
と、プレイヤー・コンピュータ共々勝った回数を指定しておきます。
そして、プレイヤーが勝った時は、

playerwin = playerwin + 1

とします。これは、「playerwinに1を足したものを新しいplayerwinとする」の意味です。
で、playerwin = 3か、comwin = 3になったらどちらかが3回先勝したということで、プログラムを終了、という流れにすれば良さそう。


GraphicsWindow.Title = "じゃんけんゲーム"
GraphicsWindow.Width = 600
GraphicsWindow.Height = 600
backcolor = "white"
GraphicsWindow.BackgroundColor = backcolor

'肌色を指定
GraphicsWindow.BrushColor = "BlanchedAlmond"
GraphicsWindow.PenColor = "BlanchedAlmond"

'パーを描く
tenohira = Shapes.AddEllipse(200, 200)
oyap = Shapes.AddEllipse(55, 180)
hitop = Shapes.AddEllipse(45, 200)
nakap = Shapes.AddEllipse(45, 220)
kusurip = Shapes.AddEllipse(40, 200)
kop = Shapes.AddEllipse(40, 180)

Shapes.Move(tenohira, 200, 300)
Shapes.Move(oyap, 160, 280)
Shapes.Move(hitop, 220, 170)
Shapes.Move(nakap, 275, 140)
Shapes.Move(kusurip, 330, 170)
Shapes.Move(kop, 380, 220)

Shapes.Rotate(oyap, 330)
Shapes.Rotate(hitop, 350)
Shapes.Rotate(kusurip, 5)
Shapes.Rotate(kop, 10)

'チョキを描く
hitoc = Shapes.AddEllipse(45, 200)
nakac = Shapes.AddEllipse(45, 220)

Shapes.Move(hitoc, 220, 170)
Shapes.Move(nakac, 275, 140)
Shapes.Rotate(hitoc, 350)

tenohirag = Shapes.AddEllipse(200, 180)
oyag = Shapes.AddEllipse(55, 100)

'グーを描く
Shapes.Move(tenohirag, 200, 300)
Shapes.Move(oyag, 200, 390)

Shapes.Rotate(oyag, 330)

'描いたグー、チョキ、パーを一度非表示にする
Shapes.HideShape(tenohira)
Shapes.HideShape(oyap)
Shapes.HideShape(hitop)
Shapes.HideShape(nakap)
Shapes.HideShape(kusurip)
Shapes.HideShape(kop)

Shapes.HideShape(hitoc)
Shapes.HideShape(nakac)

Shapes.HideShape(tenohirag)
Shapes.HideShape(oyag)

'プレイヤー用のグー、チョキ、パーのボタン
GraphicsWindow.BrushColor = "black"
GraphicsWindow.FontSize = 30
gu = Controls.AddButton("グー", 70, 20)
choki = Controls.AddButton("チョキ", 250, 20)
pa = Controls.AddButton("パー", 450, 20)

'プレイヤー、コンピュータが勝った時の数
playerwin = 0
comwin = 0

'ボタンを押した時のサブルーチンを「Onclick」という名前にする
Controls.ButtonClicked = Onclick

GraphicsWindow.FontSize = 30

GraphicsWindow.DrawText(50, 150, "あなた 勝")
GraphicsWindow.DrawText(135, 150, playerwin)
GraphicsWindow.DrawText(450, 400, "COM 勝")
GraphicsWindow.DrawText(530, 400, comwin)

'ボタンを押した時のサブルーチン「Onclick」
Sub Onclick
'2度目以降のじゃんけん用に、まず、グー、チョキ、パーを非表示にする
  Shapes.HideShape(tenohira)
  Shapes.HideShape(oyap)
  Shapes.HideShape(hitop)
  Shapes.HideShape(nakap)
  Shapes.HideShape(kusurip)
  Shapes.HideShape(kop)

  Shapes.HideShape(hitoc)
  Shapes.HideShape(nakac)

  Shapes.HideShape(tenohirag)
  Shapes.HideShape(oyag)
  
'コンピュータ用の乱数
  com = Math.GetRandomNumber(3)

'共通部分の描画。backcolorで白い四角形を描き前のじゃんけん消去
  GraphicsWindow.BrushColor = backcolor
  GraphicsWindow.FillRectangle(0, 100, 600, 500)
  '共通部分の台詞描画
  GraphicsWindow.BrushColor = "black"
  GraphicsWindow.DrawText(50, 100, "あなたが出したのは")
  GraphicsWindow.DrawText(450, 300, "相手は")
      
'グーのボタンを押した時
  If Controls.LastClickedButton = gu Then
    GraphicsWindow.BrushColor = "red"
    GraphicsWindow.DrawText(300, 100, "グー")
    If com = 1 Then
      Shapes.ShowShape(tenohirag) 'Shapes.ShowShapeで、消した図形を再表示
      Shapes.ShowShape(oyag)
      GraphicsWindow.BrushColor = "black"
      GraphicsWindow.DrawText(450, 350, "グー")
      GraphicsWindow.DrawText(100, 500, "あいこです。")
      GraphicsWindow.DrawText(50, 150, "あなた 勝")
      GraphicsWindow.DrawText(135, 150, playerwin)
      GraphicsWindow.DrawText(450, 400, "COM 勝")
      GraphicsWindow.DrawText(530, 400, comwin)
    EndIf
    If com = 2 Then
      Shapes.ShowShape(tenohira)
      Shapes.ShowShape(hitoc)
      Shapes.ShowShape(nakac)
      GraphicsWindow.BrushColor = "black"
      GraphicsWindow.DrawText(450, 350, "チョキ")
      GraphicsWindow.DrawText(100, 500, "あなたの勝ち!")
      playerwin = playerwin + 1 'プレイヤーが勝った時に、playerwinを1足す
      GraphicsWindow.DrawText(50, 150, "あなた 勝")
      GraphicsWindow.DrawText(135, 150, playerwin)
      GraphicsWindow.DrawText(450, 400, "COM 勝")
      GraphicsWindow.DrawText(530, 400, comwin)
    EndIf
    If com = 3 Then
      Shapes.ShowShape(tenohira)
      Shapes.ShowShape(oyap)
      Shapes.ShowShape(hitop)
      Shapes.ShowShape(nakap)
      Shapes.ShowShape(kusurip)
      Shapes.ShowShape(kop)
      GraphicsWindow.BrushColor = "black"
      GraphicsWindow.DrawText(450, 350, "パー")
      GraphicsWindow.DrawText(100, 500, "あなたの負け!")
      comwin = comwin + 1 'コンピュータが勝った時に、comwinを1足す
      GraphicsWindow.DrawText(50, 150, "あなた 勝")
      GraphicsWindow.DrawText(135, 150, playerwin)
      GraphicsWindow.DrawText(450, 400, "COM 勝")
      GraphicsWindow.DrawText(530, 400, comwin)
    EndIf
  EndIf

'チョキのボタンを押した時
If Controls.LastClickedButton = choki Then
    GraphicsWindow.BrushColor = "red"
    GraphicsWindow.DrawText(300, 100, "チョキ")
    If com = 1 Then
      Shapes.ShowShape(tenohirag)
      Shapes.ShowShape(oyag)
      GraphicsWindow.BrushColor = "black"
      GraphicsWindow.DrawText(450, 350, "グー")
      GraphicsWindow.DrawText(100, 500, "あなたの負け!")
      comwin = comwin + 1
      GraphicsWindow.DrawText(50, 150, "あなた 勝")
      GraphicsWindow.DrawText(135, 150, playerwin)
      GraphicsWindow.DrawText(450, 400, "COM 勝")
      GraphicsWindow.DrawText(530, 400, comwin)
    EndIf
    If com = 2 Then
      Shapes.ShowShape(tenohira)
      Shapes.ShowShape(hitoc)
      Shapes.ShowShape(nakac)
      GraphicsWindow.BrushColor = "black"
      GraphicsWindow.DrawText(450, 350, "チョキ")
      GraphicsWindow.DrawText(100, 500, "あいこです。")
      GraphicsWindow.DrawText(50, 150, "あなた 勝")
      GraphicsWindow.DrawText(135, 150, playerwin)
      GraphicsWindow.DrawText(450, 400, "COM 勝")
      GraphicsWindow.DrawText(530, 400, comwin)
    EndIf
    If com = 3 Then
      Shapes.ShowShape(tenohira)
      Shapes.ShowShape(oyap)
      Shapes.ShowShape(hitop)
      Shapes.ShowShape(nakap)
      Shapes.ShowShape(kusurip)
      Shapes.ShowShape(kop)
      GraphicsWindow.BrushColor = "black"
      GraphicsWindow.DrawText(450, 350, "パー")
      GraphicsWindow.DrawText(100, 500, "あなたの勝ち!")
      playerwin = playerwin + 1
      GraphicsWindow.DrawText(50, 150, "あなた 勝")
      GraphicsWindow.DrawText(135, 150, playerwin)
      GraphicsWindow.DrawText(450, 400, "COM 勝")
      GraphicsWindow.DrawText(530, 400, comwin)
    EndIf
  EndIf

'パーのボタンを押した時
  If Controls.LastClickedButton = pa Then
    GraphicsWindow.BrushColor = "red"
    GraphicsWindow.DrawText(300, 100, "パー")
    If com = 1 Then
      Shapes.ShowShape(tenohirag)
      Shapes.ShowShape(oyag)
      GraphicsWindow.BrushColor = "black"
      GraphicsWindow.DrawText(450, 350, "グー")
      GraphicsWindow.DrawText(100, 500, "あなたの勝ち!")
      playerwin = playerwin + 1
      GraphicsWindow.DrawText(50, 150, "あなた 勝")
      GraphicsWindow.DrawText(135, 150, playerwin)
      GraphicsWindow.DrawText(450, 400, "COM 勝")
      GraphicsWindow.DrawText(530, 400, comwin)
    EndIf
    If com = 2 Then
      Shapes.ShowShape(tenohira)
      Shapes.ShowShape(hitoc)
      Shapes.ShowShape(nakac)
      GraphicsWindow.BrushColor = "black"
      GraphicsWindow.DrawText(450, 350, "チョキ")
      GraphicsWindow.DrawText(100, 500, "あなたの負け!")
      comwin = comwin + 1
      GraphicsWindow.DrawText(50, 150, "あなた 勝")
      GraphicsWindow.DrawText(135, 150, playerwin)
      GraphicsWindow.DrawText(450, 400, "COM 勝")
      GraphicsWindow.DrawText(530, 400, comwin)
    EndIf
    If com = 3 Then
      Shapes.ShowShape(tenohira)
      Shapes.ShowShape(oyap)
      Shapes.ShowShape(hitop)
      Shapes.ShowShape(nakap)
      Shapes.ShowShape(kusurip)
      Shapes.ShowShape(kop)
      GraphicsWindow.BrushColor = "black"
      GraphicsWindow.DrawText(450, 350, "パー")
      GraphicsWindow.DrawText(100, 500, "あいこです。")
      GraphicsWindow.DrawText(50, 150, "あなた 勝")
      GraphicsWindow.DrawText(135, 150, playerwin)
      GraphicsWindow.DrawText(450, 400, "COM 勝")
      GraphicsWindow.DrawText(530, 400, comwin)
    EndIf
  EndIf

'playerwinが3になった時に3勝としてゲーム終了
  If playerwin = 3 Then
    GraphicsWindow.Clear()
    GraphicsWindow.BrushColor = "black"
    GraphicsWindow.DrawText(100, 100, "あなたが3勝! ゲーム終了です。")
  EndIf

'comwinが3になった時に3敗としてゲーム終了
  If comwin = 3 Then
    GraphicsWindow.Clear()
    GraphicsWindow.BrushColor = "black"
    GraphicsWindow.DrawText(100, 100, "あなたが3敗! ゲーム終了です。")
  EndIf
EndSub

じゃんけん

これでボタンクリックのたびに、勝敗数が足されていきます。
しかし3勝だとあっという間に勝負が付いてしまったりしますので、勝利数を増やした方がわかりやすいかも。
また、見た目自体もイマイチですのでw、もっと色々と手を加えてみるのも良いかと思います。



▲TOPへ戻る