Power Automate Desktopでババ抜きを作ってみた!

  • URLをコピーしました!

Power Automate Desktopで、トランプゲーム「ババ抜き」を自動化してみましょう!初心者の方でも作れるように、ひとつひとつの手順を丁寧に解説していきます。このプロジェクトを通じて、楽しくPower Automate Desktopの基本操作を学べますよ!


目次

ゲームのルール

  1. カードの準備
    • 使用するカードは1~13の数字(4枚ずつ)とジョーカー1枚です。
    • カードをシャッフルして、プレイヤーとコンピューターに配ります。
  2. ゲームの進行
    • 順番にカードを引き、手札にペア(同じ数字)があれば捨てます。
    • 最後にジョーカー(ババ)を持っていた人が負けです。

作成手順

以下の手順をひとつずつ進めていきます。

  1. フローを作成
  2. カードを準備
  3. カードを配布
  4. ペアを消す処理
  5. プレイヤーのターン
  6. コンピューターのターン
  7. 勝敗を判定
  8. テストして完成

1. フローを作成

  1. Power Automate Desktopを起動
    Power Automate Desktopを開きます。
  2. 新しいフローを作成
    • 右上の「新しいフロー」をクリックします。
    • フロー名を「ババ抜きゲーム」と入力し、「作成」をクリックします。

2. カードを準備

カードのデータをリストとして作成します。

  1. カードの山を準備
    • 左のアクションライブラリから「リストを作成」を検索し、フローに追加します。
    • リストの名前: Deck
    • 値を入力: 1, 2, 3, ..., 13(各数字を4回繰り返す)+ 99(ジョーカー)。
    Deck = [1, 1, 1, 1, 2, 2, 2, 2, ..., 13, 13, 13, 13, 99]
  2. カードをシャッフル
    • 「リストをシャッフル」アクションを追加します。
    • 入力リスト: Deck
    • シャッフル後のリスト: 上書き保存されます。

3. カードを配布

プレイヤーとコンピューターの手札を準備し、カードを配ります。

  1. 手札を初期化
    • 「リストを作成」アクションを2回追加します。
    • リストの名前: PlayerHandComputerHand(プレイヤーとコンピューターの手札)。
  2. カードを交互に配る
    • 「リストからアイテムを取得」アクションを使用して、山から順番にカードを引きます。
    • 交互に PlayerHandComputerHand にカードを追加します。

4. ペアを消す処理

手札内でペアがあれば削除します。

  1. リストをループ
    • 「リスト内の各項目に対して」アクションを追加します。
    • 対象リスト: PlayerHand または ComputerHand
  2. 同じ数字を探して削除
    • 「条件を追加」アクションを使って、手札内に同じ数字が2枚ある場合を判定します。
    • 「リストからアイテムを削除」アクションでペアを削除します。

5. プレイヤーのターン

  1. カードを引く
    • 「リストからランダムにアイテムを取得」アクションを使って、ComputerHand から1枚カードを引きます。
    • 引いたカードを PlayerHand に追加します。
  2. ペアを確認して削除
    プレイヤーの手札にペアがあれば削除します。
  3. ターン終了メッセージ
    • 「メッセージを表示」アクションで、「あなたがカードを引きました」と表示します。

6. コンピューターのターン

  1. カードを引く
    • 同様に、「リストからランダムにアイテムを取得」アクションで、PlayerHand からカードを引きます。
    • 引いたカードを ComputerHand に追加します。
  2. ペアを確認して削除
    コンピューターの手札にペアがあれば削除します。
  3. ターン終了メッセージ
    • 「メッセージを表示」アクションで、「コンピューターがカードを引きました」と表示します。

7. 勝敗を判定

  1. 手札が空か確認
    • 「条件を追加」アクションで、PlayerHand または ComputerHand が空か確認します。
  2. ジョーカーの確認
    • 最後に残ったカードが「99」(ジョーカー)かどうかを判定します。
  3. 結果を表示
    • 「メッセージを表示」アクションで結果を出力します:
      例: 「ゲーム終了!ジョーカーを持っていたのはプレイヤーです!」。

8. テストして完成

  1. フローを実行
    フローを実行して、以下を確認します:
    • カードがシャッフルされているか?
    • プレイヤーとコンピューターが順番にカードを引けるか?
    • 正しくペアが削除されるか?
    • 勝敗が正確に判定されるか?
  2. エラー修正
    エラーがあればフローを確認して修正します。

完成したゲームの動作

  1. ゲーム開始
    カードがシャッフルされ、プレイヤーとコンピューターに配られます。
  2. 順番にカードを引く
    プレイヤーとコンピューターが交互にカードを引き、ペアを削除します。
  3. ゲーム終了
    手札が空になるか、ジョーカーを最後に持っていた人が負けです。

よくある質問

Q1: トランプ以外のゲームに応用できますか?

A1: はい、リストやループの仕組みを使えば、他のカードゲームやデータ操作に応用できます。

Q2: プレイヤー数を増やせますか?

A2: 可能です。手札リストを追加し、順番にカードを引くロジックを拡張すれば対応できます。

よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

目次