はじめに
Teams版のPower Virtual AgetnsとPower Automateを利用して、最近話題の Wordle を作ってみましたので、全2回にわたって内容を記載します。
#PowerVirtualAgents で #Wordle を作ってみました。
— Miyake Mito (@MiTo60448639) March 6, 2022
答えは100の候補からランダムで設定するため、ゲームとしては簡単です笑
昨夜はWORDLEの事をよく知らずに適当なものを実装してしまってごめんなさい。#気ままに勉強会 pic.twitter.com/HMB4VUv1vj
初期処理の作成
全体象は下図になります。今回は、赤枠で囲った初期処理部分を記載します。
①トピック「初期化」
ゲーム開始のトリガーフレーズを受けるトピックを作成します。
フロー「初期化処理」を呼び出し、メイン処理となるトピック「ループ1」を呼び出します。
トピック「ループ1」の内容は、次回の記事にて記載します。
②フロー「初期化処理」
全体像は下図になります。
答え候補の単語を配列で登録し、その中からランダムで一つの単語を今回のゲームの答えとします。
答え候補配列の作成
答え候補の配列を作成します。
Wordleの過去の答えの一覧を掲載しているサイトなどから取得し、配列として登録します。
配列の要素が多いほど、答えに多様性が発生するため、難易度は上がります。
5文字の単語であれば、日本語など他言語での作成も可能です。
[
"APPLE",
"POINT",
"CIGAR",
"REBUT",
"SISSY",
"HUMPH",
"AWAKE",
"BLUSH",
"FOCAL",
"EVADE"
]
今回の答えを選択
上記の答え候補から、ランダムで一つの要素を選びます。
rand()関数を用いて乱数を取得し、上記配列への添え字に指定することで、配列からランダムに一つの要素を取得します。
outputs('答えの候補')?[rand(0,length(outputs('答えの候補')))]
残りの処理
フローの戻り値となる答えには上記で取得したランダムな要素を、回答履歴にはnull値をセットします。
まとめ
今回は、ゲームを開始し、答えとなる単語を選出するまでの処理を記載しました。
次回は、ゲームのメインとなる、回答⇒結果の処理を記載します。