[掲示板へもどる]
一括表示

記事No: 21363 [関連記事]
タイトルメニュー画面に空腹度等を表すピクチャを表示させたい
投稿日: 2021/09/18 01:57
投稿者ななし [rrirFOri233(海外)]

[やりたいこと]
基本システムを改造してメニュー画面の所持金の欄を改造してそこに空腹度や疲労度など(どっちか片方だけ)を表示したい
又はメニュー画面に新しいウィンドウを付け足してそこに空腹度を表すピクチャを表示したい。

[やってみたこと]
所持金欄のウィンドウの大きさ変更は出来ました。
歩数カウントで空腹度の数値が減っていき、0になったら移動速度が遅くなったりするコモンは個別で作成済。
空腹度は新しく作った可変データベースに作成。
空腹度の数値の変化でピクチャが変化するのも出来ました。


[やってみた結果、どううまくいかないか]
所持金表示の位置に上記のピクチャ変化させる条件分岐のコマンドをいれてもなにも表示されない。
条件分岐は可変データベースに新しい項目を増やし、その数値を呼び足して分岐している。(セルフ変数を設定してやってもみましたが同じく表示されない)

もしも所持金欄を改造して作るよりもメニュー画面のウィンドウを増やしたほうが分かりやすいなら、その作り方を教えていただけたら…(位置的に所持金欄の位置が調度良かったので所持金欄の改造しました)


記事No: 21364 [関連記事]
タイトルRe: メニュー画面に空腹度等を表すピクチャを表示させたい
投稿日: 2021/09/18 23:03
投稿者YADO [LerLWW459(海外)]

設定状況がよく分からないので、上手くいかない原因がよく分かりませんが、
一応コモンイベント[88:X[移]メニュー描画]の213行目にある所持金を表示する設定を改造する方法を記載しておきます。

空腹度は設定例では可変DB[6:パーティー情報]の項目7に新設した「空腹度」で設定しています。
もしも違う可変DBにする場合は「空腹度の値を設定」と書かれた設定を修正してください。

■回数付きループ [ 1 ]回
|▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
|▼ おまけ欄(所持金)を表示
|▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
|■変数操作: CSelf60[おまけ欄X] = 0 + 0
|■変数操作: CSelf61[おまけ欄Y] = 200 + 0
|■変数操作: CSelf64[おまけ欄表示元X] = -80 + 0
|■変数操作: CSelf65[おまけ欄表示元Y] = 200 + 0
|■変数操作: CSelf62[おまけ欄横サイズ] = 80 + 0
|■変数操作: CSelf63[おまけ欄縦サイズ] = 40 + 0
|■変数操作: CSelf60[おまけ欄X] *= CSelf88[座標倍率X[x10]] + 0
|■変数操作: CSelf61[おまけ欄Y] *= CSelf89[座標倍率Y[x10]] + 0
|■変数操作: CSelf62[おまけ欄横サイズ] *= CSelf88[座標倍率X[x10]] + 0
|■変数操作: CSelf63[おまけ欄縦サイズ] *= CSelf89[座標倍率Y[x10]] + 0
|■変数操作: CSelf64[おまけ欄表示元X] *= CSelf88[座標倍率X[x10]] + 0
|■変数操作: CSelf65[おまけ欄表示元Y] *= CSelf89[座標倍率Y[x10]] + 0
|■変数操作: CSelf60[おまけ欄X]〜CSelf65[おまけ欄表示元Y] /= 10 + 0
|■変数操作: CSelf21[一時ピクチャ番号] = CSelf20[基本ピクチャ番号] + 11
|■ピクチャ[ディレイ内容リセット]:CSelf21[一時ピクチャ番号]
|■ピクチャ表示:CSelf21[一時ピクチャ番号] [左上]ウィンドウ(CSelf8[ウィンドウ画像ファイル]) サイズ[CSelf62[おまけ欄横サイズ],CSelf63[おまけ欄縦サイズ]] X:CSelf60[おまけ欄X] Y:CSelf61[おまけ欄Y] / 0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
|■回数付きループ [ 1 ]回
| |▼ おまけ欄内の文字列を生成
| |■DB読込(可変): CSelf11[一時変数B] = 可変DB[ パーティー情報 : 0 : 所持金 ] (6 : メイン設定 : 0)
| |▼ 空腹度の値を設定
| |■DB読込(可変): CSelf12[一時変数C] = 可変DB[ パーティー情報 : 0 : 空腹度 ] (6 : メイン設定 : 7)
| |▼ \axと\ay、<R>を駆使して横幅と位置を調整
| |■変数操作: CSelf13[一時変数D] = CSelf62[おまけ欄横サイズ] - CSelf88[座標倍率X[x10]]
| |■条件分岐(変数): 【1】 Sys84:画面サイズ(0=320x240,1=640x480 2=800x600 ・ が 0 と同じ
| |-◇分岐: 【1】 [ Sys84:画面サイズ(0=320x240,1=640x480 2=800x600 ・ が 0 と同じ ]の場合↓
| | |▼ 解像度が320x240の場合だけ二倍補正が必要(\ax[?]の仕様上)
| | |■変数操作: CSelf13[一時変数D] *= 2 + 0
| | |■
| |◇分岐終了◇
| |■変数操作: CSelf14[一時変数E] = CSelf20[基本ピクチャ番号] / 2
| |■変数操作: CSelf14[一時変数E] += CSelf20[基本ピクチャ番号] + 0
| |▼ 元の表示設定
| |■文字列操作:CSelf6[オプション枠用] = " \ax[\cself[13]]\n<R>\ay[0]\f[\cself[19]]\cself[11]\f[\cself[18]] "
| |▼ 改造設定
| |■文字列操作:CSelf6[オプション枠用] = " \f[\cself[19]]空腹度 \cself[12]\ax[\cself[13]]\n<R> \f[\cself[19]]\cself[11]\f[\cself[18]] "
| |■DB読込(ユーザ): CSelf6[オプション枠用] += ユーザDB[ 用語設定 : 0 : 18 ] (15 : 用語基本設定 : [ステータス]お金の単位)
| |■変数操作: CSelf21[一時ピクチャ番号] = CSelf20[基本ピクチャ番号] + 12
| |■ピクチャ[ディレイ内容リセット]:CSelf21[一時ピクチャ番号]
| |■ピクチャ表示:CSelf21[一時ピクチャ番号] [左上]文字列[\cself[6]] X:CSelf60[おまけ欄X] Y:CSelf61[おまけ欄Y] / 0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
| |■変数操作: CSelf12[一時変数C] = CSelf88[座標倍率X[x10]] / 2
| |■変数操作: CSelf13[一時変数D] = CSelf89[座標倍率Y[x10]] / 2
| |■変数操作: CSelf13[一時変数D] += CSelf89[座標倍率Y[x10]] / 6
| |■ピクチャエフェクト:CSelf21[一時ピクチャ番号] [描画座標シフト] Xシフト CSelf12[一時変数C] / Yシフト CSelf13[一時変数D] (0)フレーム
| |■
|◇ループここまで◇◇
|■回数付きループ [ 1 ]回
| |▼ もし文字がはみ出てたら横幅を制限

(横拡大率を下げる)
| |■変数操作+: CSelf11[一時変数B] = ピクチャ:CSelf21[一時ピクチャ番号] の 画像サイズ(横)
| |■変数操作: CSelf13[一時変数D] = CSelf62[おまけ欄横サイズ] - CSelf88[座標倍率X[x10]]
| |■条件分岐(変数): 【1】 CSelf11[一時変数B] が CSelf13[一時変数D] 超
| |-◇分岐: 【1】 [ CSelf11[一時変数B] が CSelf13[一時変数D] 超 ]の場合↓
| | |■変数操作: CSelf13[一時変数D] *= 100 + 0
| | |■変数操作: CSelf13[一時変数D] /= CSelf11[一時変数B] + 0
| | |■ピクチャ移動:CSelf10[一時変数A] X:CSelf60[おまけ欄X] Y:CSelf61[おまけ欄Y] / 0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 CSelf13[一時変数D]x100% / カラー R[100] G[100] B[100]
| | |■
| |◇分岐終了◇
| |■
|◇ループここまで◇◇
|■回数付きループ [ 1 ]回
| |▼ ここでおまけ欄表示エフェクト(「移動」コマンドで実現している)
| |■変数操作: CSelf21[一時ピクチャ番号] = CSelf20[基本ピクチャ番号] + 11
| |■変数操作: CSelf10[一時変数A] = CSelf20[基本ピクチャ番号] + 12
| |■変数操作: CSelf41[一時項目表示X] = CSelf64[おまけ欄表示元X] + 0
| |■変数操作: CSelf42[一時項目表示Y] = CSelf65[おまけ欄表示元Y] + 0
| |▼ 初期位置をシフト
| |■ピクチャ[ディレイ内容リセット]:CSelf21[一時ピクチャ番号] 〜 CSelf10[一時変数A]
| |■ピクチャ移動:CSelf21[一時ピクチャ番号] 〜 CSelf10[一時変数A] X:CSelf41[一時項目表示X] Y:CSelf42[一時項目表示Y] / 0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 同値 / カラー R[100] G[100] B[100]
| |▼ 慣性移動
| |■ピクチャ移動:CSelf21[一時ピクチャ番号] 〜 CSelf10[一時変数A] X:CSelf60[おまけ欄X] Y:CSelf61[おまけ欄Y] / 8(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 同値 / カラー R[100] G[100] B[100]
| |■ピクチャ移動:CSelf21[一時ピクチャ番号] 〜 CSelf10[一時変数A] X:CSelf60[おまけ欄X] Y:CSelf61[おまけ欄Y] / 8(4)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 同値 / カラー R[100] G[100] B[100]
| |■ピクチャ移動:CSelf21[一時ピクチャ番号] 〜 CSelf10[一時変数A] X:CSelf60[おまけ欄X] Y:CSelf61[おまけ欄Y] / 8(8)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 同値 / カラー R[100] G[100] B[100]
| |■
|◇ループここまで◇◇
|▼ おまけ欄表示処理ここまで
|■
◇ループここまで◇◇

WoditorEvCOMMAND_START
[179][1,0]<0>(1)()
[103][0,1]<1>()("■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■")
[103][0,1]<1>()("おまけ欄(所持金)を表示")
[103][0,1]<1>()("■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■")
[121][4,0]<1>(1600060,0,0,0)()
[121][4,0]<1>(1600061,200,0,0)()
[121][4,0]<1>(1600064,-80,0,0)()
[121][4,0]<1>(1600065,200,0,0)()
[121][4,0]<1>(1600062,80,0,0)()
[121][4,0]<1>(1600063,40,0,0)()
[121][4,0]<1>(1600060,1600088,0,768)()
[121][4,0]<1>(1600061,1600089,0,768)()
[121][4,0]<1>(1600062,1600088,0,768)()
[121][4,0]<1>(1600063,1600089,0,768)()
[121][4,0]<1>(1600064,1600088,0,768)()
[121][4,0]<1>(1600065,1600089,0,768)()
[121][5,0]<1>(1600060,10,0,66560,5)()
[121][4,0]<1>(1600021,1600020,11,0)()
[150][2,0]<1>(819,1600021)()
[150][12,0]<1>(64,1600021,0,1600062,1600063,1,255,1600060,1600061,100,0,1600008)()
[179][1,0]<1>(1)()
[103][0,1]<2>()("おまけ欄内の文字列を生成")
[250][5,4]<2>(3,0,0,331776,1600011)("","パーティー情報","","所持金")
[103][0,1]<2>()("空腹度の値を設定")
[250][5,4]<2>(3,0,7,331776,1600012)("","パーティー情報","","空腹度")
[103][0,1]<2>()("\axと\ay、<R>を駆使して横幅と位置を調整")
[121][4,0]<2>(1600013,1600062,1600088,4096)()
[111][4,0]<2>(1,9000084,0,2)()
[401][1,0]<2>(1)()
[103][0,1]<3>()("解像度が320x240の場合だけ二倍補正が必要(\ax[?]の仕様上)")
[121][4,0]<3>(1600013,2,0,768)()
[0][0,0]<3>()()
[499][0,0]<2>()()
[121][4,0]<2>(1600014,1600020,2,12288)()
[121][4,0]<2>(1600014,1600020,0,256)()
[103][0,1]<2>()("元の表示設定")
[122][2,1]<2>(1600006,0)(" \ax[\cself[13]]<\n><R>\ay[0]\f[\cself[19]]\cself[11]\f[\cself[18]] ")
[103][0,1]<2>()("改造設定")
[122][2,1]<2>(1600006,0)(" \f[\cself[19]]空腹度 \cself[12]\ax[\cself[13]]<\n><R> \f[\cself[19]]\cself[11]\f[\cself[18]] ")
[250][5,4]<2>(13,0,18,70160,1600006)("","用語設定","","")
[121][4,0]<2>(1600021,1600020,12,0)()
[150][2,0]<2>(819,1600021)()
[150][11,1]<2>(32,1600021,0,1,1,1,255,1600060,1600061,100,0)("\cself[6]")
[121][4,0]<2>(1600012,1600088,2,12288)()
[121][4,0]<2>(1600013,1600089,2,12288)()
[121][4,0]<2>(1600013,1600089,6,12544)()
[290][7,0]<2>(32,0,1600021,1600021,1600012,1600013,0)()
[0][0,0]<2>()()
[498][0,0]<1>()()
[179][1,0]<1>(1)()
[103][0,1]<2>()("もし文字がはみ出てたら横幅を制限(横拡大率を下げる)")
[124][4,0]<2>(1600011,16384,1600021,2)()
[121][4,0]<2>(1600013,1600062,1600088,4096)()
[111][4,0]<2>(1,1600011,1600013,0)()
[401][1,0]<2>(1)()
[121][4,0]<3>(1600013,100,0,768)()
[121][4,0]<3>(1600013,1600011,0,1024)()
[150][19,0]<3>(3145729,1600010,0,0,0,1,255,1600060,1600061,1600013,0,0,33554432,0,0,100,100,100,100)()
[0][0,0]<3>()()
[499][0,0]<2>()()
[0][0,0]<2>()()
[498][0,0]<1>()()
[179][1,0]<1>(1)()
[103][0,1]<2>()("ここでおまけ欄表示エフェクト(「移動」コマンドで実現している)")
[121][4,0]<2>(1600021,1600020,11,0)()
[121][4,0]<2>(1600010,1600020,12,0)()
[121][4,0]<2>(1600041,1600064,0,0)()
[121][4,0]<2>(1600042,1600065,0,0)()
[103][0,1]<2>()("初期位置をシフト")
[150][3,0]<2>(16777219,1600021,1600010)()
[150][18,0]<2>(20971521,1600021,0,0,0,1,255,1600041,1600042,-1000000,0,0,33554432,0,1600010,100,100,100)()
[103][0,1]<2>()("慣性移動")
[150][18,0]<2>(20971521,1600021,8,0,0,1,255,1600060,1600061,-1000000,0,0,33554432,0,1600010,100,100,100)()
[150][18,0]<2>(20971521,1600021,8,0,0,1,255,1600060,1600061,-1000000,0,0,33554432,4,1600010,100,100,100)()
[150][18,0]<2>(20971521,1600021,8,0,0,1,255,1600060,1600061,-1000000,0,0,33554432,8,1600010,100,100,100)()
[0][0,0]<2>()()
[498][0,0]<1>()()
[103][0,1]<1>()("おまけ欄表示処理ここまで")
[0][0,0]<1>()()
[498][0,0]<0>()()
WoditorEvCOMMAND_END


記事No: 21365 [関連記事]
タイトルYADOさんへ
投稿日: 2021/09/19 01:14
投稿者ななし [rrirFOr232(海外)]

YADOさんへ、分かりにくい説明申し訳ありませんでした。
一から設定を教えていただきとても助かりました。無事表記できました。
この作り方は色々メニュー画面を改造するのにとても参考に出来て本当にありがたいです!
ありがとうございました!