質問スレッド
このフォームからは投稿できません。
name
e-mail
url
subject
comment

[新規順タイトル表示] [ツリー表示] [新着順記事] [留意事項] [ワード検索] [過去ログ] [管理用]

記事No: 21630 [関連記事]
タイトルRe: パーティーメンバー全員の状態異常を取得したい
投稿日: 2024/06/20 23:12
投稿者YADO [LerLWW459]

> パーティーメンバー全員の状態異常を取得し(移動中に)全員が毒などの状態異常にかかってHP0の戦闘不能になったらゲームオーバーという処理にしたいのですがコモン24では状態異常を一人一人しか取得できませんよね。
> (メンバーが一人でも生存している限りゲームは続行される)
>
> パーティー全員の状態異常を取得する方法を教えてください。

処理としては、可変DB[6:パーティー情報]の項目[1〜6]にパーティにいる主人公IDが保存されているので、その主人公IDをセルフ変数に保存し、
コモンイベント[24:▲状態異常の取得]を呼び出す設定では、「対象主人公」の右側にあるチェックボックスにチェックを入れて、
「1600011」などの変数呼び出し値で主人公IDを保存したセルフ変数の値を呼び出すようにすれば、
パーティにいる主人公の状態異常を取得する事ができます。

コモンイベント[24:▲状態異常の取得]は、一人の主人公しか調べる事ができないので、パーティ全員を調べる場合は、
ループ処理を使ってパーティの人数分だけループし、パーティにいる主人公を一人ずつ調べていく必要があります。

以下は移動する度に、パーティ全員が戦闘不能であるかどうかを調べる処理です。

★コモンイベント/並列実行
■変数操作+: CSelf20[移動確認:X座標] = 主人公 の X座標(精密) *キャラ左側位置
■変数操作+: CSelf21[移動確認:Y座標] = 主人公 の Y座標(精密) *キャラ足下-1位置
■条件分岐(変数): 【1】 CSelf20[移動確認:X座標] が CSelf22[現在:X座標] と同じ
-◇分岐: 【1】 [ CSelf20[移動確認:X座標] が CSelf22[現在:X座標] と同じ ]の場合↓
|■条件分岐(変数): 【1】 CSelf21[移動確認:Y座標] が CSelf23[現在:Y座標] と同じ
|-◇分岐: 【1】 [ CSelf21[移動確認:Y座標] が CSelf23[現在:Y座標] と同じ ]の場合↓
||■イベント処理中断
||■
|◇分岐終了◇
|■
◇分岐終了◇
■変数操作+: CSelf22[現在:X座標] = 主人公 の X座標(精密) *キャラ左側位置
■変数操作+: CSelf23[現在:Y座標] = 主人公 の Y座標(精密) *キャラ足下-1位置
■変数操作: CSelf10[可変6項目ID] = 0 + 0
■変数操作: CSelf15[全員戦闘不能=1] = 1 + 0
■回数付きループ [ 可変DB(18,4,0)[現在パーティー人数 数値 ] ]回
|■変数操作: CSelf10[可変6項目ID] += 1 + 0
|■DB読込(可変): CSelf11[主人公ID] = 可変DB[ 6 : 0 : CSelf10[可変6項目ID] ] (パーティー情報 : メイン設定 : -)
|■イベントの挿入[名]: CSelf12[状態異常確認] = ["▲状態異常の取得"] <コモンEv 24> / CSelf11[主人公ID] / 0:戦闘不能
|■変数操作: CSelf15[全員戦闘不能=1] 上限= CSelf12[状態異常確認] + 0
|■
◇ループここまで◇◇
▼ パーティ全員が戦闘不能になった場合は、セルフ変数[15]が「1」になる
■条件分岐(変数): 【1】 CSelf15[全員戦闘不能=1] が 1 と同じ
-◇分岐: 【1】 [ CSelf15[全員戦闘不能=1] が 1 と同じ ]の場合↓
|■次イベントの予約: コモン213:[ ゲームオーバーイベント ]
|■
◇分岐終了◇


WoditorEvCOMMAND_START
[124][4,0]<0>(1600020,4096,-2,2)()
[124][4,0]<0>(1600021,4096,-2,3)()
[111][4,0]<0>(1,1600020,1600022,2)()
[401][1,0]<0>(1)()
[111][4,0]<1>(1,1600021,1600023,2)()
[401][1,0]<1>(1)()
[172][0,0]<2>()()
[0][0,0]<2>()()
[499][0,0]<1>()()
[0][0,0]<1>()()
[499][0,0]<0>()()
[124][4,0]<0>(1600022,4096,-2,2)()
[124][4,0]<0>(1600023,4096,-2,3)()
[121][4,0]<0>(1600010,0,0,0)()
[121][4,0]<0>(1600015,1,0,0)()
[179][1,0]<0>(1118000400)()
[121][4,0]<1>(1600010,1,0,256)()
[250][5,4]<1>(6,0,1600010,4096,1600011)("","","","")
[300][5,1]<1>(0,16777218,1600011,0,1600012)("▲状態異常の取得")
[121][4,0]<1>(1600015,1600012,0,1792)()
[0][0,0]<1>()()
[498][0,0]<0>()()
[103][0,1]<0>()("パーティ全員が戦闘不能になった場合は、セルフ変数[15]が「1」になる")
[111][4,0]<0>(1,1600015,1,2)()
[401][1,0]<0>(1)()
[211][2,0]<1>(500213,0)()
[0][0,0]<1>()()
[499][0,0]<0>()()
WoditorEvCOMMAND_END


- 関連一覧ツリー (▼ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)
おなまえ※必須
Eメール
subject 入力禁止
Title 入力禁止
Theme 入力禁止
タイトル (質問内容に沿ったタイトルにしてください、「わかりません」「質問です」はダメ) sage
URL 入力禁止
URL
手動改行 強制改行 図表モード
添付ファイル    (500kBまで)
削除キー (英数字で8文字以内)
投稿キー (投稿時 投稿キー を入力してください)
プレビュー   

- 以下のフォームから自分の投稿記事を修正・削除することができます -
処理 記事No 削除キー