一括表示

記事No: 21149
タイトル肩書きを装備中の武器の名前にしたい
投稿日: 2020/09/19 12:32
投稿者Tark [WdrLpOO827(海外)]

[やりたいこと]
肩書きを現在装備中の武器の名前にしたい

[やってみたこと]
可変DBの主人公ステータスの肩書きの項目に巨大変数で、主人公ステータスの武器を指定してみたが数字のままになっている
もしかしてそれでは武器のステータスそのままが反映されているのかなと考え、コモンのパラメーター取得をコピーし、肩書きのところに一時変数を用意して代入してみようと考えた…が、「現在装備中の武器」の情報を獲得する手段が判らず詰まった。


記事No: 21150
タイトルRe: 肩書きを装備中の武器の名前にしたい
投稿日: 2020/09/20 16:10
投稿者YADO [LerLWW459(海外)]

> [やりたいこと]
> 肩書きを現在装備中の武器の名前にしたい
>
> [やってみたこと]
> 可変DBの主人公ステータスの肩書きの項目に巨大変数で、主人公ステータスの武器を指定してみたが数字のままになっている
> もしかしてそれでは武器のステータスそのままが反映されているのかなと考え、コモンのパラメーター取得をコピーし、肩書きのところに一時変数を用意して代入してみようと考えた…が、「現在装備中の武器」の情報を獲得する手段が判らず詰まった。

コモンイベント[124:X[移]一時ステ計算<状態補正>]の51行目(一番下)に以下のイベントを設定。

■イベントの挿入[名]: CSelf10 = ["▲装備取得"] <コモンEv 21> / CSelf0[対象主人公ID] / 1:武器欄 / 0:武器
■条件分岐(変数): 【1】 CSelf10 が 0 以上
-◇分岐: 【1】 [ CSelf10 が 0 以上 ]の場合↓
|■DB読込(ユーザ): CSelf5 = ユーザDB[ 武器 : CSelf10 : 0 ] (3 : - : 武器の名前)
|■
-◇上記以外
|▼ 装備無し
|■文字列操作:CSelf5 = ""
|■
◇分岐終了◇
■可変DB書込:DB[ 主人公ステータス : CSelf0[対象主人公ID] : 肩書き ] (0 : - : 1) = CSelf5

WoditorEvCOMMAND_START
[300][6,1]<0>(0,16777219,1600000,1,0,1600010)("▲装備取得")
[111][4,0]<0>(17,1600010,0,1)()
[401][1,0]<0>(1)()
[250][5,4]<1>(3,1600010,0,70144,1600005)("","武器","","")
[0][0,0]<1>()()
[420][1,0]<0>(0)()
[103][0,1]<1>()("装備無し")
[122][2,1]<1>(1600005,0)("")
[0][0,0]<1>()()
[499][0,0]<0>()()
[250][5,4]<0>(0,1600000,1,327680,1600005)("","主人公ステータス","","肩書き")
WoditorEvCOMMAND_END


▼補足

主人公の肩書きのような文字列の設定で変数の値(文字列)を呼び出す場合は、「1100000028」のような設定ではなく「\cdb[0:0:28]」のような設定になります。

しかし可変DB[0:主人公ステータス]の項目[28:装備中の武器]は、設定画面上には武器の名前が表示されていますが、実際に設定するのはユーザーDB[3]のデータ番号になります。

そのため「[2]ショートソード」を設定しても、項目[28]には「2」の値が設定されるだけです。

しかもゲームが開始すると「2」の数値は「加算20000」になって、「20002」に変わります。

一応ウルファールの肩書きで「\udb[1:\cdb[0:12:28]:0]」などの設定すると、肩書きに装備中の武器名が表示されますが、
武器を外すと項目[28]の値が「-1」になるため、エラーが発生します。

可変DBの設定だけで何とかするのは難しいため、コモンイベントの改造設定が必要になります。


記事No: 21151
タイトルRe: 肩書きを装備中の武器の名前にしたい
投稿日: 2020/09/20 19:21
投稿者Tark [WdrLpOO827(海外)]

ありがとうございます!

そのままだとダメなのはユーザーDBからの入れ子式な上二重計算になってしまうからなのですね。

こちらでも色々調べて、DB読込で武器名を調べてやるのかなとまでは考えたのですが、装備取得で連動することには思い至りませんでした。
自分でやっていたらごちゃごちゃしていて訳判らなくなっており、外したときのことまで失念していたこともあり、教えていただいたのが凄く綺麗な文ですっきりまとまっててびっくりしました。
本当にありがとうございました。