りよねこたわ~

ロールプレイングゲーム作ってみたいにゃ~でもどうしたらいいのにゃ~?

続・並列処理には気をつけようにゃ~

ω-`) 先週の並列処理の修正なんにゃけど、まだ見落としてる点があったにゃ~。

ω・`) どういうことかというとにゃ…。

ω-`) えっとにゃ…どういうことにゃんだったかにゃ~?w

 

ω・`) 「扉を開けて場所移動する」って処理を自動実行にしたから、この処理が終わるまではキー入力は受け付けない(はず)にゃ~。

ω-`) 問題があったのはこのあとなんにゃ~。

場所移動した先でメッセージを表示するイベントがあるんにゃけど、このイベントを並列処理で作ってるとへんてこりんなことになっちゃうんにゃ~。

 

ω-`) うにゃ~?よくわかんにゃいにゃ~?

① 並列処理「上を向くと常にかわいいみこってちゃん画像が表示される」にゃ~。

② 並列処理「特定の場所で、右を向いているときにEnterキーを押すと扉スイッチをONにする」にゃ~。

③ 自動実行「扉スイッチがONになったときに、右に場所移動する」にゃ~。

④ 自動実行「場所移動した先で、セルフスイッチAをONにして並列処理を起動する」にゃ~。

⑤ 並列処理「右を向いているときにメッセージスイッチをONにする」にゃ~。

⑥ 自動実行「メッセージスイッチがONになったときにメッセージを表示する」にゃ~。

ω・`) こんなかんじかにゃ~?

 

ω-`) で、③の場所移動が行われているときに、左矢印キーをうにゃにゃにゃにゃッ!って連打してると、タイミングによっては⑥のメッセージが表示される前に左矢印キーが反応しちゃうんにゃ~。

どうなるかっていうと、①の上を向いたときに表示されるかわいいみこってちゃん画像と、⑥の右を向いたときに表示されるメッセージが一緒に表示されてしまうんにゃ~。

 

ω・`)b メッセージを表示させる処理を④の自動実行に変更すれば、場所移動から始まる処理の途中で矢印キーの入力を受け付けることはなくなる(と思う)にゃ~。