10
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Power Virtual Agetns と Power Automate で Wordle を作る①

Last updated at Posted at 2022-03-07

はじめに

Teams版のPower Virtual AgetnsとPower Automateを利用して、最近話題の Wordle を作ってみましたので、全2回にわたって内容を記載します。

初期処理の作成

全体象は下図になります。今回は、赤枠で囲った初期処理部分を記載します。

image.png

①トピック「初期化」

ゲーム開始のトリガーフレーズを受けるトピックを作成します。
フロー「初期化処理」を呼び出し、メイン処理となるトピック「ループ1」を呼び出します。

トピック「ループ1」の内容は、次回の記事にて記載します。

image.png

②フロー「初期化処理」

全体像は下図になります。
答え候補の単語を配列で登録し、その中からランダムで一つの単語を今回のゲームの答えとします。

image.png

答え候補配列の作成

答え候補の配列を作成します。
Wordleの過去の答えの一覧を掲載しているサイトなどから取得し、配列として登録します。

配列の要素が多いほど、答えに多様性が発生するため、難易度は上がります。
5文字の単語であれば、日本語など他言語での作成も可能です。

image.png

[
  "APPLE",
  "POINT",
  "CIGAR",
  "REBUT",
  "SISSY",
  "HUMPH",
  "AWAKE",
  "BLUSH",
  "FOCAL",
  "EVADE"
]

今回の答えを選択

上記の答え候補から、ランダムで一つの要素を選びます。

image.png

rand()関数を用いて乱数を取得し、上記配列への添え字に指定することで、配列からランダムに一つの要素を取得します。

outputs('答えの候補')?[rand(0,length(outputs('答えの候補')))]

残りの処理

フローの戻り値となる答えには上記で取得したランダムな要素を、回答履歴にはnull値をセットします。

image.png

まとめ

今回は、ゲームを開始し、答えとなる単語を選出するまでの処理を記載しました。
次回は、ゲームのメインとなる、回答⇒結果の処理を記載します。

10
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?