一括表示

記事No: 21345
タイトルダメージに属性毎に色を付けたい
投稿日: 2021/06/25 01:49
投稿者ブローニャ [rOOrpWW858(海外)]

[やりたいこと]
攻撃時のダメージ数字に炎なら赤
暗黒属性なら紫といった具合に色を付けたいです
[やってみたこと]
[戦]ダメージ・回復ポップアップの所を変えればいいかと思ってるのですが
属性を読み込ませて表示の色を変えさせる手段が分からないので質問しました、お手数ですが回答よろしくお願いします


記事No: 21347
タイトルRe: ダメージに属性毎に色を付けたい
投稿日: 2021/06/28 01:23
投稿者YADO [LerLWW459(海外)]

> [やりたいこと]
> 攻撃時のダメージ数字に炎なら赤
> 暗黒属性なら紫といった具合に色を付けたいです
> [やってみたこと]
> [戦]ダメージ・回復ポップアップの所を変えればいいかと思ってるのですが
> 属性を読み込ませて表示の色を変えさせる手段が分からないので質問しました、お手数ですが回答よろしくお願いします

表示色の設定に関しては、ユーザーDB[7:属性名の設定]の「タイプの内容設定」をクリックして、項目名1〜3に「R」「G」「B」(それぞれの初期値[100])の設定欄を準備すれば良いでしょう。
例えば炎攻撃は「R100、G50、B50」と言った感じです。
(設定例では物理攻撃の色設定は取得しないので、物理攻撃の色を設定しても無意味です)


攻撃時の属性に関しては、コモンイベント[165:X[戦]┗単体処理]のセルフ変数[22〜24]に設定されているので、
コモンイベント[180:X[戦]ダメージ・回復ポップアップ]からコモンイベント[165:X[戦]┗単体処理]のセルフ変数[22〜24]の値を受け取れば、攻撃時の属性番号(ユーザーDB[7]のデータID)が分かります。
あとは属性番号からユーザーDB[7]に設定したRGB値を出力すれば、ダメージ時の表示色を変える事ができます。

攻撃時の属性は、技能に1つと武器に2つ付けられるので、最大で3つの属性で攻撃する事ができます。
そのため、複数の属性で攻撃した時の表示色をどうするのかを決めておく必要があります。
以下の設定例では複数の属性がある場合は、順番に色が変わるようにしています。
例えば「技能=雷攻撃(黄色)、武器=炎攻撃(赤色)+冷気攻撃(水色)」の場合は、「黄色→赤色→水色」と色が変わります。
「技能=物理攻撃、武器=炎攻撃」の場合は、物理攻撃の白色は表示されず、炎攻撃の赤色のみが表示されます。

改造前のコモンイベントを残しておきたい場合は、コモンイベント[180:X[戦]ダメージ・回復ポップアップ]をコピーして、コモン[215]などに貼り付けて、貼り付けたコモン[215]の方を改造して下さい。
うまく改造できなかった場合は、コモン[215]を削除すれば元に戻ります。


コモンイベント[X[戦]ダメージ・回復ポップアップ]に以下のセルフ変数名を設定して下さい。
40:属性番号1
41:属性番号2
42:属性番号3


コモンイベント[X[戦]ダメージ・回復ポップアップ]の35行目に以下のイベントを追加。

■変数操作: CSelf40[属性番号1]〜CSelf42[属性番号3] = -1 + 0

WoditorEvCOMMAND_START
[121][5,0]<0>(1600040,-1,0,65536,2)()
WoditorEvCOMMAND_END


38〜41行目に
▼ HPダメージ
■変数操作: CSelf30[文字カラーR] = 100 + 0
■変数操作: CSelf31[文字カラーG] = 100 + 0
■変数操作: CSelf32[文字カラーB] = 100 + 0
の設定がありますので、その下の42行目に以下のイベントを追加。
■変数操作: CSelf40[属性番号1] = コモンEv165セルフ22[発動側属性1] + 0
■変数操作: CSelf41[属性番号2] = コモンEv165セルフ23[発動側属性2] + 0
■変数操作: CSelf42[属性番号3] = コモンEv165セルフ24[発動側属性3] + 0
■条件分岐(変数): 【1】 CSelf40[属性番号1] が 0 以下
-◇分岐: 【1】 [ CSelf40[属性番号1] が 0 以下 ]の場合↓
|■変数操作: CSelf40[属性番号1] = CSelf41[属性番号2] + 0
|■変数操作: CSelf41[属性番号2] = CSelf42[属性番号3] + 0
|■変数操作: CSelf42[属性番号3] = -1 + 0
|■
◇分岐終了◇
■条件分岐(変数): 【1】 CSelf40[属性番号1] が 0 以下
-◇分岐: 【1】 [ CSelf40[属性番号1] が 0 以下 ]の場合↓
|■変数操作: CSelf40[属性番号1] = CSelf41[属性番号2] + 0
|■変数操作: CSelf41[属性番号2] = -1 + 0
|■
◇分岐終了◇
■条件分岐(変数): 【1】 CSelf41[属性番号2] が 0 以下
-◇分岐: 【1】 [ CSelf41[属性番号2] が 0 以下 ]の場合↓
|■変数操作: CSelf41[属性番号2] = CSelf42[属性番号3] + 0
|■変数操作: CSelf42[属性番号3] = -1 + 0
|■
◇分岐終了◇
■条件分岐(変数): 【1】 CSelf40[属性番号1] が 1 以上
-◇分岐: 【1】 [ CSelf40[属性番号1] が 1 以上 ]の場合↓
|■DB読込(ユーザ): CSelf30[文字カラーR] = ユーザDB[ 7 : CSelf40[属性番号1] : 1 ] (属性名の設定 : - : R)
|■DB読込(ユーザ): CSelf31[文字カラーG] = ユーザDB[ 7 : CSelf40[属性番号1] : 2 ] (属性名の設定 : - : G)
|■DB読込(ユーザ): CSelf32[文字カラーB] = ユーザDB[ 7 : CSelf40[属性番号1] : 3 ] (属性名の設定 : - : B)
|■
◇分岐終了◇

WoditorEvCOMMAND_START
[121][4,0]<0>(1600040,15016522,0,0)()
[121][4,0]<0>(1600041,15016523,0,0)()
[121][4,0]<0>(1600042,15016524,0,0)()
[111][4,0]<0>(1,1600040,0,3)()
[401][1,0]<0>(1)()
[121][4,0]<1>(1600040,1600041,0,0)()
[121][4,0]<1>(1600041,1600042,0,0)()
[121][4,0]<1>(1600042,-1,0,0)()
[0][0,0]<1>()()
[499][0,0]<0>()()
[111][4,0]<0>(1,1600040,0,3)()
[401][1,0]<0>(1)()
[121][4,0]<1>(1600040,1600041,0,0)()
[121][4,0]<1>(1600041,-1,0,0)()
[0][0,0]<1>()()
[499][0,0]<0>()()
[111][4,0]<0>(1,1600041,0,3)()
[401][1,0]<0>(1)()
[121][4,0]<1>(1600041,1600042,0,0)()
[121][4,0]<1>(1600042,-1,0,0)()
[0][0,0]<1>()()
[499][0,0]<0>()()
[111][4,0]<0>(1,1600040,1,1)()
[401][1,0]<0>(1)()
[250][5,4]<1>(7,1600040,1,4608,1600030)("","","","")
[250][5,4]<1>(7,1600040,2,4608,1600031)("","","","")
[250][5,4]<1>(7,1600040,3,4608,1600032)("","","","")
[0][0,0]<1>()()
[499][0,0]<0>()()
WoditorEvCOMMAND_END


163行目に
|◇ループここまで◇◇
があるので、その下の164行目に以下のイベントを追加。

■変数操作: CSelf21[表示ピクチャ番号] = CSelf24[表示桁数] - 1
■変数操作: CSelf21[表示ピクチャ番号] += CSelf20[基本ピクチャ番号] + 0
■条件分岐(変数): 【1】 CSelf42[属性番号3] が 1 以上 【2】 CSelf41[属性番号2] が 1 以上
-◇分岐: 【1】 [ CSelf42[属性番号3] が 1 以上 ]の場合↓
|■変数操作: CSelf18[ディレイフレーム3(消去までの時間)] /= 3 + 0
|■DB読込(ユーザ): CSelf30[文字カラーR] = ユーザDB[ 7 : CSelf41[属性番号2] : 1 ] (属性名の設定 : - : R)
|■DB読込(ユーザ): CSelf31[文字カラーG] = ユーザDB[ 7 : CSelf41[属性番号2] : 2 ] (属性名の設定 : - : G)
|■DB読込(ユーザ): CSelf32[文字カラーB] = ユーザDB[ 7 : CSelf41[属性番号2] : 3 ] (属性名の設定 : - : B)
|■ピクチャ移動:CSelf20[基本ピクチャ番号] 〜 CSelf21[表示ピクチャ番号] 相対X:0 Y:0 / 0(CSelf18[ディレイフレーム3(消去までの時間)])フレーム / パターン 同値 / 透 同値 / 表示形式:同値 / 角 同値 / 拡 同値 / カラー R[CSelf30[文字カラーR]] G[CSelf31[文字カラーG]] B[CSelf32[文字カラーB]]
|■変数操作: CSelf18[ディレイフレーム3(消去までの時間)] *= 2 + 0
|■DB読込(ユーザ): CSelf30[文字カラーR] = ユーザDB[ 7 : CSelf42[属性番号3] : 1 ] (属性名の設定 : - : R)
|■DB読込(ユーザ): CSelf31[文字カラーG] = ユーザDB[ 7 : CSelf42[属性番号3] : 2 ] (属性名の設定 : - : G)
|■DB読込(ユーザ): CSelf32[文字カラーB] = ユーザDB[ 7 : CSelf42[属性番号3] : 3 ] (属性名の設定 : - : B)
|■ピクチャ移動:CSelf20[基本ピクチャ番号] 〜 CSelf21[表示ピクチャ番号] 相対X:0 Y:0 / 0(CSelf18[ディレイフレーム3(消去までの時間)])フレーム / パターン 同値 / 透 同値 / 表示形式:同値 / 角 同値 / 拡 同値 / カラー R[CSelf30[文字カラーR]] G[CSelf31[文字カラーG]] B[CSelf32[文字カラーB]]
|■
-◇分岐: 【2】 [ CSelf41[属性番号2] が 1 以上 ]の場合↓
|■変数操作: CSelf18[ディレイフレーム3(消去までの時間)] /= 2 + 0
|■DB読込(ユーザ): CSelf30[文字カラーR] = ユーザDB[ 7 : CSelf41[属性番号2] : 1 ] (属性名の設定 : - : R)
|■DB読込(ユーザ): CSelf31[文字カラーG] = ユーザDB[ 7 : CSelf41[属性番号2] : 2 ] (属性名の設定 : - : G)
|■DB読込(ユーザ): CSelf32[文字カラーB] = ユーザDB[ 7 : CSelf41[属性番号2] : 3 ] (属性名の設定 : - : B)
|■ピクチャ移動:CSelf20[基本ピクチャ番号] 〜 CSelf21[表示ピクチャ番号] 相対X:0 Y:0 / 0(CSelf18[ディレイフレーム3(消去までの時間)])フレーム / パターン 同値 / 透 同値 / 表示形式:同値 / 角 同値 / 拡 同値 / カラー R[CSelf30[文字カラーR]] G[CSelf31[文字カラーG]] B[CSelf32[文字カラーB]]
|■
◇分岐終了◇

WoditorEvCOMMAND_START
[121][4,0]<0>(1600021,1600024,1,4096)()
[121][4,0]<0>(1600021,1600020,0,256)()
[111][7,0]<0>(2,1600042,1,1,1600041,1,1)()
[401][1,0]<0>(1)()
[121][4,0]<1>(1600018,3,0,1024)()
[250][5,4]<1>(7,1600041,1,4608,1600030)("","","","")
[250][5,4]<1>(7,1600041,2,4608,1600031)("","","","")
[250][5,4]<1>(7,1600041,3,4608,1600032)("","","","")
[150][18,0]<1>(21040897,1600020,0,0,0,-1000000,-1000000,0,0,-1000000,-1000000,0,33554432,1600018,1600021,1600030,1600031,1600032)()
[121][4,0]<1>(1600018,2,0,768)()
[250][5,4]<1>(7,1600042,1,4608,1600030)("","","","")
[250][5,4]<1>(7,1600042,2,4608,1600031)("","","","")
[250][5,4]<1>(7,1600042,3,4608,1600032)("","","","")
[150][18,0]<1>(21040897,1600020,0,0,0,-1000000,-1000000,0,0,-1000000,-1000000,0,33554432,1600018,1600021,1600030,1600031,1600032)()
[0][0,0]<1>()()
[401][1,0]<0>(2)()
[121][4,0]<1>(1600018,2,0,1024)()
[250][5,4]<1>(7,1600041,1,4608,1600030)("","","","")
[250][5,4]<1>(7,1600041,2,4608,1600031)("","","","")
[250][5,4]<1>(7,1600041,3,4608,1600032)("","","","")
[150][18,0]<1>(21040897,1600020,0,0,0,-1000000,-1000000,0,0,-1000000,-1000000,0,33554432,1600018,1600021,1600030,1600031,1600032)()
[0][0,0]<1>()()
[499][0,0]<0>()()
WoditorEvCOMMAND_END

以上で設定完了です。


記事No: 21349
タイトルRe: ダメージに属性毎に色を付けたい
投稿日: 2021/07/01 20:59
投稿者ブローニャ [rOOrpWW858(海外)]

設定どおりに作成したところうまくできました
ありがとうございます