【VX Ace】メッセージウィンドウの文章内で条件分岐
【VX Ace】メッセージウィンドウの文章内で条件分岐
こんにちは。
現在、好感度のあるゲームを作ろうと考えているのですが、キャラクターの名前表示のスクリプトを使い、その表示された名前の横に現在の好感度が表示するようにしたいと考えています。牧場物語みたいな感じです。(下記にイメージ図あり)
この場合、条件(好感度の数値がいくつか)によって色が変わる訳ですが、メッセージの文章内で条件分岐をすることは可能なのでしょうか?
もしくは、投稿前にGoogleで検索してみた限りではないようでしたが、そのようなスクリプトの素材をご存知でしょうか?
不可能でしたら、別の方法を考えます。
現在、好感度のあるゲームを作ろうと考えているのですが、キャラクターの名前表示のスクリプトを使い、その表示された名前の横に現在の好感度が表示するようにしたいと考えています。牧場物語みたいな感じです。(下記にイメージ図あり)
この場合、条件(好感度の数値がいくつか)によって色が変わる訳ですが、メッセージの文章内で条件分岐をすることは可能なのでしょうか?
もしくは、投稿前にGoogleで検索してみた限りではないようでしたが、そのようなスクリプトの素材をご存知でしょうか?
不可能でしたら、別の方法を考えます。
- 添付ファイル
-
- A.png (7.62 KiB) 閲覧された回数 7474 回
【ものすごく簡単な自己紹介】
VX,VX Aceを中心にのんびりと素材を作っています。
和風素材を増やしていきたい、この頃。
VX,VX Aceを中心にのんびりと素材を作っています。
和風素材を増やしていきたい、この頃。
-
- 記事: 715
- 登録日時: 2018年12月23日(日) 13:55
Re: 【VX Ace】メッセージウィンドウの文章内で条件分岐
キャラクターの名前表示に使っているスクリプトについて、何を使っているのか教えてください。
Re: 【VX Ace】メッセージウィンドウの文章内で条件分岐
こんばんは。
制御文字の¥c[n]で文字の色を指定できますが
このnの部分を¥v[n]にすると、変数の値によって色を変えることが出来ます。
例えばこう文章表示すれば、変数1番の数値を変えることで
好感度の文字の色を分岐させることが可能です。
※\は半角の¥です。
制御文字の¥c[n]で文字の色を指定できますが
このnの部分を¥v[n]にすると、変数の値によって色を変えることが出来ます。
コード: 全て選択
名前:\c[\v[1]]好感度
好感度の文字の色を分岐させることが可能です。
※\は半角の¥です。
------------------------------------------------------------------------------------
へぷたなすくろーる
http://heptanas.mamagoto.com/
VXAceのスクリプト素材及びイベント講座などをやっています。
------------------------------------------------------------------------------------
へぷたなすくろーる
http://heptanas.mamagoto.com/
VXAceのスクリプト素材及びイベント講座などをやっています。
------------------------------------------------------------------------------------
-
- 記事: 715
- 登録日時: 2018年12月23日(日) 13:55
Re: 【VX Ace】メッセージウィンドウの文章内で条件分岐
添付画像を見た感じ、話者名をウィンドウ表示する(ネームプレート)スクリプトを使って、話者名を表示するのだと思うのですが、
スクリプトによっては、話者名以外表示できないものもあります。
使っているスクリプトは、メッセージウィンドウを表示するのと同様にテキストを表示できるのでしょうか?(一番最初の返信でスクリプト名を聞いていたのはこれが理由です。)
メッセージウィンドウと同様にテキスト表示(編集)できるものとして書きます。
奈々(なな)様の指示されたコードで、テキスト色を変数の値に応じて変更はできますが、
この場合、 テキスト色 = 変数の値 (Window.pngの右下にある32個の矩形部分の色)となってしまうので、
意図している色に自由には変更できません。
好感度の文字/アイコンを表示するスクリプトを作ってみたので使ってみてください。
(▼ 素材 の一番下に追加してください)
¥F[n] と書くことで、好感度をあらわす文字/アイコンを表示できます。
文字色等や、描き分けの条件分岐部分は、スクリプトを見て、適宜変更してください。
一応、メッセージウィンドウ内で描画する分には問題なかったのですが、
何か、不具合が生じましたらご連絡ください。
2019/09/20 20:23頃
(制御文字の処理部分、エイリアスで処理しないといけない部分をきちんと処理してなかったので修正しました。
差し替えて使うようお願いします。)
スクリプトによっては、話者名以外表示できないものもあります。
使っているスクリプトは、メッセージウィンドウを表示するのと同様にテキストを表示できるのでしょうか?(一番最初の返信でスクリプト名を聞いていたのはこれが理由です。)
メッセージウィンドウと同様にテキスト表示(編集)できるものとして書きます。
奈々(なな)様の指示されたコードで、テキスト色を変数の値に応じて変更はできますが、
この場合、 テキスト色 = 変数の値 (Window.pngの右下にある32個の矩形部分の色)となってしまうので、
意図している色に自由には変更できません。
好感度の文字/アイコンを表示するスクリプトを作ってみたので使ってみてください。
(▼ 素材 の一番下に追加してください)
コード: 全て選択
class Window_Base < Window
#--------------------------------------------------------------------------
# ● 制御文字の処理
# code : 制御文字の本体部分(「\C[1]」なら「C」)
#--------------------------------------------------------------------------
alias process_escape_character_origin process_escape_character
def process_escape_character(code, text, pos)
#-------------------------------------------------------------------------
# 好感度文字/アイコン描画用制御文字
# 2019/04/19
#
# 使い方(usage): \F[変数番号]
#
# 文字で描画がすることも、アイコンを使って描画することもできるように
# 作成してあります。
# アイコンを使って描画したい場合は、
# process_favorvility_icon(obtain_escape_param(text), pos)
# のコメントアウトを解除し、
# process_favorbility_text(obtain_escape_param(text), pos)
# をコメントアウトしてください。
#-------------------------------------------------------------------------
case code.upcase
when 'F'
#~ process_favorbility_icon(obtain_escape_param(text), pos)
process_favorbility_text(obtain_escape_param(text), pos)
end
process_escape_character_origin(code, text, pos)
end
#--------------------------------------------------------------------------
# ● 好感度文字の描画処理
#
# 引数 num に 指定された変数番号の値に応じて、アイコンの描画をする処理
# 好感度の判定(数値)等はご自分で調整してください。
#--------------------------------------------------------------------------
def process_favorbility_text(num, pos)
#文字色設定
#Color.new(赤の強さ,緑の強さ,青の強さ)で設定
color1 = Color.new(222,55,83) #好感度151以上
color2 = Color.new(222,111,129) #好感度101以上150以下
color3 = Color.new(222,166,176) #好感度50以上100以下
color4 = Color.new(255,255,255) #好感度0以上50以下
color5 = Color.new(0,0,0) #好感度マイナス値
pre_color = Color.new #好感度文字描画前の色(初期化)
#現在の文字色をセット
pre_color.set(contents.font.color)
#好感度文字設定(1文字で設定してください)
fav_text = '♥'
#テキストの幅を取得
text_width = text_size(fav_text).width
#---------------------------------------------------------------
# 好感度文字描画処理
# change_color( Colorオブジェクト名 )で色を変更
# draw_text で文字描画
# pos[:x] += text_width で次に書く文字の位置を変更
# change_color(pre_color)で、以前の文字描画色に戻す
# という処理をしている。
#---------------------------------------------------------------
favorbility = $game_variables[ num ]
# 好感度に応じて仕分ける部分
# 数値は適宜変更してください。
# いらない elsif は消してください。
if 150 < favorbility #好感度151以上
change_color(color1)
draw_text(pos[:x], pos[:y], text_width * 2, pos[:height], fav_text)
pos[:x] += text_width
change_color(pre_color)
elsif 100 < favorbility #好感度101以上150以下
change_color(color2)
draw_text(pos[:x], pos[:y], text_width * 2, pos[:height], fav_text)
pos[:x] += text_width
change_color(pre_color)
elsif 50 < favorbility #好感度50以上100以下
change_color(color3)
draw_text(pos[:x], pos[:y], text_width * 2, pos[:height], fav_text)
pos[:x] += text_width
change_color(pre_color)
elsif 0 < favorbility #好感度0以上50以下
change_color(color4)
draw_text(pos[:x], pos[:y], text_width * 2, pos[:height], fav_text)
pos[:x] += text_width
change_color(pre_color)
else #好感度マイナス
change_color(color5)
draw_text(pos[:x], pos[:y], text_width * 2, pos[:height], fav_text)
pos[:x] += text_width
change_color(pre_color)
end
end
#--------------------------------------------------------------------------
# ● 好感度アイコンの描画処理
#
# 引数 num に 指定された変数番号の値に応じて、アイコンの描画をする処理
# process_draw_icon() の一番目に書きたいアイコンの番号を設定する。
# 好感度の判定(数値)等はご自分で調整してください。
#--------------------------------------------------------------------------
def process_favorbility_icon(num, pos)
favorbility = $game_variables[ num ]
if 150 < favorbility #好感度151以上
process_draw_icon(187, pos)
elsif 100 < favorbility #好感度101以上150以下
process_draw_icon(190, pos)
elsif 50 < favorbility #好感度50以上100以下
process_draw_icon(188, pos)
elsif 0 < favorbility #好感度0以上50以下
process_draw_icon(184, pos)
else #好感度マイナス
process_draw_icon(185, pos)
end
end
end
文字色等や、描き分けの条件分岐部分は、スクリプトを見て、適宜変更してください。
一応、メッセージウィンドウ内で描画する分には問題なかったのですが、
何か、不具合が生じましたらご連絡ください。
2019/09/20 20:23頃
(制御文字の処理部分、エイリアスで処理しないといけない部分をきちんと処理してなかったので修正しました。
差し替えて使うようお願いします。)
Re: 【VX Ace】メッセージウィンドウの文章内で条件分岐
ご返答ありがとうございます。
Yumineko https://yumineko.com/
管理人:弓猫様
こちらのRGSS3 楽ちん名前枠というスクリプトを使わせてもらってます。
Yumineko https://yumineko.com/
管理人:弓猫様
こちらのRGSS3 楽ちん名前枠というスクリプトを使わせてもらってます。
最後に編集したユーザー tokkuri [ 2019年4月21日(日) 00:12 ], 累計 1 回
【ものすごく簡単な自己紹介】
VX,VX Aceを中心にのんびりと素材を作っています。
和風素材を増やしていきたい、この頃。
VX,VX Aceを中心にのんびりと素材を作っています。
和風素材を増やしていきたい、この頃。
Re: 【VX Ace】メッセージウィンドウの文章内で条件分岐
ご返答ありがとうございます。
なるほど、アイコンで表示しようと考えていた為、盲点でした。
さっそく試してみます!
なるほど、アイコンで表示しようと考えていた為、盲点でした。
さっそく試してみます!
【ものすごく簡単な自己紹介】
VX,VX Aceを中心にのんびりと素材を作っています。
和風素材を増やしていきたい、この頃。
VX,VX Aceを中心にのんびりと素材を作っています。
和風素材を増やしていきたい、この頃。
Re: 【VX Ace】メッセージウィンドウの文章内で条件分岐
※最初の返信を終えた後に、こちらに気が付きました。申し訳ありません。
改めて、書かせていただきます。
ご返答ありがとうございます。
Yumineko https://yumineko.com/
管理人:弓猫様
こちらのRGSS3 楽ちん名前枠というスクリプトを使わせてもらってます。
理解力に乏しくてすみませんが、自分の好きなように名前部分のテキスト内容を
編集できるものかどうか?といった認識で宜しかったでしょうか?
でしたら、制御文字を使えば、制御文字内に書いた文字を表示できるので、Yesだと思います。
そちらの内容の通り、色の変更は不可能でした。
作っていただいたスクリプトを導入してみたところ、
仰っていた通り、メッセージウィンドウ内では問題ありませんでした。
名前のところに表示、という風にするのは無理のようなので
文章をうまい具合に調整して、画像のように右下に表示されるようにしてみます。
丁寧な返答をくださったうえに、わざわざスクリプトを作ってくださり、本当にありがとうございました。
使用した素材一覧に表記をしたいのですが、お名前以外に何か必要事項などはございますか?
改めて、書かせていただきます。
ご返答ありがとうございます。
Yumineko https://yumineko.com/
管理人:弓猫様
こちらのRGSS3 楽ちん名前枠というスクリプトを使わせてもらってます。
理解力に乏しくてすみませんが、自分の好きなように名前部分のテキスト内容を
編集できるものかどうか?といった認識で宜しかったでしょうか?
でしたら、制御文字を使えば、制御文字内に書いた文字を表示できるので、Yesだと思います。
そちらの内容の通り、色の変更は不可能でした。
作っていただいたスクリプトを導入してみたところ、
仰っていた通り、メッセージウィンドウ内では問題ありませんでした。
名前のところに表示、という風にするのは無理のようなので
文章をうまい具合に調整して、画像のように右下に表示されるようにしてみます。
丁寧な返答をくださったうえに、わざわざスクリプトを作ってくださり、本当にありがとうございました。
使用した素材一覧に表記をしたいのですが、お名前以外に何か必要事項などはございますか?
【ものすごく簡単な自己紹介】
VX,VX Aceを中心にのんびりと素材を作っています。
和風素材を増やしていきたい、この頃。
VX,VX Aceを中心にのんびりと素材を作っています。
和風素材を増やしていきたい、この頃。
-
- 記事: 715
- 登録日時: 2018年12月23日(日) 13:55
Re: 【VX Ace】メッセージウィンドウの文章内で条件分岐
返信が遅くなってしまい申し訳ありません。
弓猫様の 楽ちん名前枠 に対応させてみました。
以前のスクリプトをこちらに差し替えて使用してみてください。
¥FICON[n]と記述することで名前の右に好感度のアイコンが表示されます。
詳しくは、スクリプトを読んでください。
問題なく動作すると思いますが、何か不具合が発生しましたら、ご連絡ください。
また、使用した素材一覧への表記についてですが、
名前を載せないでいただくと助かります。
(身内にばれたくないのです…理由は…お察しください)
弓猫様の 楽ちん名前枠 に対応させてみました。
以前のスクリプトをこちらに差し替えて使用してみてください。
コード: 全て選択
=begin
-------------------------------------------------------------------------------
■好感度アイコン制御文字スクリプト
弓猫様 RGSS3 楽ちん名前枠 ver 1.02 対応版
2019/04/21 by ecf5DTTzl6h6lJj02
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
● 概要等
好感度を表すアイコン/文字を名前枠に表示できるようにするスクリプトです
SHOW_ICON を true に設定することで有効になります。
文章内で\FICON[n] (大文字小文字問わない、nは好感度の変数の番号)
と入力することで、変数の値に応じてアイコン/文字を描き分けます。
\NAME[n], \ACTOR[n], \ENEMY[n] の後に続けて記述してください。
顔グラフィック連携にも対応しています(してるはず…してなかったらゴメンネ)。
その場合は(文書全体の)先頭に記述してください。
今回、アイコンで表示するようにしてあります。
process_favorbility_icon(num, pos)
という関数(メソッド)で処理しているので、該当部分を読んで、調整してください。
前のときのように文字で表示することもできます。
その場合は 246行目に記載されている
process_favorbility_icon(obtain_escape_param(text), pos)
という一文をコメントアウトし、
次の行の
process_favorbility_text(obtain_escape_param(text), pos)
という一分のコメントアウトを解除してください。
(行全体を選択し、右クリックメニューのコメントアウトで、
コメントアウト/解除ができます)
また、文字で表示する処理を
process_favorbility_text(num, pos)
という関数(メソッド)で処理しているので、該当部分を読んで、調整してください。
-------------------------------------------------------------------------------
=end
#楽チン名前枠のスクリプトが無効化されている場合はfalseに変えてください
if true
#↓この囲みの中は true のときにのみ有効----------------------------------------
module YT002_NAME
# この値を true にすると好感度用アイコン表示の制御文字が有効化されます。
SHOW_ICON = true
end
class Window_NameShow < Window_Base
#--------------------------------------------------------------------------
# 公開インスタンス変数
#--------------------------------------------------------------------------
attr_accessor :icon_visible #好感度アイコン表示フラグ
#--------------------------------------------------------------------------
# オブジェクト初期化
#--------------------------------------------------------------------------
def initialize
super(0, 0, window_width, fitting_height(1))
create_back
@name = ""
@tmp_name = ""
@name_from_face = ""
@tmp_name_from_face = ""
self.arrows_visible = false
@icon_visible = false
refresh
end
#--------------------------------------------------------------------------
# ウィンドウ幅の取得
#--------------------------------------------------------------------------
def window_width
if @name != "" && @name != nil
if @icon_visible
#テキストに好感度アイコン表示用の制御文字がくっついているので、
#削除したテキストにアイコンの幅を足したものを返す。
text = @name.to_s.clone
text.gsub!(/\\F\[(\d+)\]/i) { "" }
return text_size(text).width + standard_padding * 2 + 24
else
return text_size(@name).width + standard_padding * 2
end
elsif @name_from_face != "" && @name_from_face != nil
if @icon_visible
#テキストに好感度アイコン表示用の制御文字がくっついているので、
#削除したテキストにアイコンの幅を足したものを返す。
text = @name_from_face.to_s.clone
text.gsub!(/\\F\[(\d+)\]/i) { "" }
return text_size(text).width + standard_padding * 2 + 24
else
return text_size(@name_from_face).width + standard_padding * 2
end
else
return Graphics.width
end
end
#--------------------------------------------------------------------------
# ☆ リフレッシュ
#
# 好感度アイコンを描画するとき制御文字付テキスト描画で対応。
# 問題ないとは思うが、通常と違い中央揃えしないので、
# レイアウトが崩れる可能性はある。
#--------------------------------------------------------------------------
def refresh
contents.clear
if @name != "" && @name != nil
w = window_width
move(self.x, self.y, w, self.height)
if @icon_visible
p @name
draw_text_ex(0, 0, @name)
else
draw_text(-standard_padding, 0, w , line_height, @name,1)
end
elsif @name_from_face != "" && @name_from_face != nil
w = window_width
move(self.x, self.y, w, self.height)
if @icon_visible
p @name_from_face
draw_text_ex(0, 0, @name_from_face)
else
draw_text(-standard_padding, 0, w, line_height, @name_from_face,1)
end
end
end
#--------------------------------------------------------------------------
# 好感度アイコン描画用制御文字追加処理
#--------------------------------------------------------------------------
def set_ficon(num)
if @name != "" && @name != nil
@name = "#{@name}\\F[#{num}]"
end
if @name_from_face != "" && @name_from_face != nil
@name_from_face = "#{@name_from_face}\\F[#{num}]"
end
@icon_visible = true
end
end
class Window_Message < Window_Base
include YT002_NAME
#--------------------------------------------------------------------------
# ● 制御文字の処理
# code : 制御文字の本体部分(「\C[1]」なら「C」)
# text : 描画処理中の文字列バッファ(必要なら破壊的に変更)
# pos : 描画位置 {:x, :y, :new_x, :height}
#--------------------------------------------------------------------------
def process_escape_character(code, text, pos)
# ◎1.01
# 名前枠のクリアフラグを更新
@clear_flag = true
case code.upcase
# 表示名をアクター番号で指定
# \ACTOR[1]ならアクター1番の名前を表示
when 'ACTOR'
text.sub(/\[(\d+)\]/i, "")
obtain_escape_param(text)
@name_window.set_name($game_actors[$1.to_i].name)
if $game_switches[NAME_SWITCH] || NAME_SWITCH == 0
@name_window.create_back if $game_message.background == 1
@name_window.open
end
# 表示名を任意の文字列で指定
# \NAME[エドモンド]ならエドモンドと表示
when 'NAME'
text.sub!(/\[([^\[\]]*)\]/i, "")
obtain_escape_param(text)
@name_window.set_name($1)
if $game_switches[NAME_SWITCH] || NAME_SWITCH == 0
@name_window.create_back if $game_message.background == 1
@name_window.open
end
# 表示名を敵番号で指定
# \ENEMY[1]ならデータベースの敵1番の名前を表示
when 'ENEMY'
text.sub(/\[(\d+)\]/i, "")
obtain_escape_param(text)
@name_window.set_name($data_enemies[$1.to_i].name)
if $game_switches[NAME_SWITCH] || NAME_SWITCH == 0
@name_window.create_back if $game_message.background == 1
@name_window.open
end
# ◎1.01
when '!'
@clear_flag = false
# 好感度アイコンを名前の横に表示する
# FICON[ 好感度変数番号 ] で指定
# ACTOR[n],NAME[n],ENEMY[n],の後ろに記述
# 顔グラフィックに対応させる場合文書の先頭に。
# 顔グラフィック連携にも対応できてる筈。
when 'FICON'
text.sub(/\[(\d+)\]/i, "")
obtain_escape_param(text)
if SHOW_ICON
@name_window.set_ficon($1.to_i)
end
end
yt002_process_escape_character(code, text, pos)
end
#--------------------------------------------------------------------------
# ● 入力待ち処理
#--------------------------------------------------------------------------
def input_pause
yt002_input_pause
# ◎1.01
@name_window.clear_name if @clear_flag
if SHOW_ICON
#好感度アイコンを表示する場合
@name_window.icon_visible = false if @clear_flag
end
end
end
#↑この囲みの中は true のときにのみ有効----------------------------------------
end
class Window_Base < Window
#--------------------------------------------------------------------------
# ● 制御文字の処理
# code : 制御文字の本体部分(「\C[1]」なら「C」)
#--------------------------------------------------------------------------
alias process_escape_character_origin process_escape_character
def process_escape_character(code, text, pos)
case code.upcase
#-------------------------------------------------------------------------
# 好感度文字/アイコン描画用制御文字
# 2019/04/19 by ecf5DTTzl6h6lJj02
#
# 使い方(usage): \F[変数番号]
#
# 文字で描画がすることも、アイコンを使って描画することもできるように
# 作成してあります。
# アイコンを使って描画したい場合は、
# process_favorvility_icon(obtain_escape_param(text), pos)
# のコメントアウトを解除し、
# process_favorbility_text(obtain_escape_param(text), pos)
# をコメントアウトしてください。
#-------------------------------------------------------------------------
when 'F'
process_favorbility_icon(obtain_escape_param(text), pos)
#~ process_favorbility_text(obtain_escape_param(text), pos)
end
process_escape_character_origin(code, text, pos)
end
#--------------------------------------------------------------------------
# ● 好感度文字の描画処理
#
# 引数 num に 指定された変数番号の値に応じて、アイコンの描画をする処理
# 好感度の判定(数値)等はご自分で調整してください。
#--------------------------------------------------------------------------
def process_favorbility_text(num, pos)
#文字色設定
#Color.new(赤の強さ,緑の強さ,青の強さ)で設定
color1 = Color.new(222,55,83) #好感度151以上
color2 = Color.new(222,111,129) #好感度101以上150以下
color3 = Color.new(222,166,176) #好感度50以上100以下
color4 = Color.new(255,255,255) #好感度0以上50以下
color5 = Color.new(0,0,0) #好感度マイナス値
pre_color = Color.new #好感度文字描画前の色(初期化)
#現在の文字色をセット
pre_color.set(contents.font.color)
#好感度文字設定(1文字で設定してください)
fav_text = '♥'
#テキストの幅を取得
text_width = text_size(fav_text).width
#---------------------------------------------------------------
# 好感度文字描画処理
# change_color( Colorオブジェクト名 )で色を変更
# draw_text で文字描画
# pos[:x] += text_width で次に書く文字の位置を変更
# change_color(pre_color)で、以前の文字描画色に戻す
# という処理をしている。
#---------------------------------------------------------------
favorbility = $game_variables[ num ]
# 好感度に応じて仕分ける部分
# 数値は適宜変更してください。
# いらない elsif は消してください。
if 150 < favorbility #好感度151以上
change_color(color1)
draw_text(pos[:x], pos[:y], text_width * 2, pos[:height], fav_text)
pos[:x] += text_width
change_color(pre_color)
elsif 100 < favorbility #好感度101以上150以下
change_color(color2)
draw_text(pos[:x], pos[:y], text_width * 2, pos[:height], fav_text)
pos[:x] += text_width
change_color(pre_color)
elsif 50 < favorbility #好感度50以上100以下
change_color(color3)
draw_text(pos[:x], pos[:y], text_width * 2, pos[:height], fav_text)
pos[:x] += text_width
change_color(pre_color)
elsif 0 < favorbility #好感度1以上50以下
change_color(color4)
draw_text(pos[:x], pos[:y], text_width * 2, pos[:height], fav_text)
pos[:x] += text_width
change_color(pre_color)
else #好感度0以下
change_color(color5)
draw_text(pos[:x], pos[:y], text_width * 2, pos[:height], fav_text)
pos[:x] += text_width
change_color(pre_color)
end
end
#--------------------------------------------------------------------------
# ● 好感度アイコンの描画処理
#
# 引数 num に 指定された変数番号の値に応じて、アイコンの描画をする処理
# process_draw_icon() の一番目に書きたいアイコンの番号を設定する。
# 好感度の判定(数値)等はご自分で調整してください。
#--------------------------------------------------------------------------
def process_favorbility_icon(num, pos)
favorbility = $game_variables[ num ]
if 150 < favorbility #好感度151以上
process_draw_icon(187, pos)
elsif 100 < favorbility #好感度101以上150以下
process_draw_icon(190, pos)
elsif 50 < favorbility #好感度51以上100以下
process_draw_icon(188, pos)
elsif 0 < favorbility #好感度1以上50以下
process_draw_icon(184, pos)
else #好感度0以下
process_draw_icon(185, pos)
end
end
end
詳しくは、スクリプトを読んでください。
問題なく動作すると思いますが、何か不具合が発生しましたら、ご連絡ください。
また、使用した素材一覧への表記についてですが、
名前を載せないでいただくと助かります。
(身内にばれたくないのです…理由は…お察しください)
Re: 【VX Ace】メッセージウィンドウの文章内で条件分岐
ありがとうございます!
先ほど試してみたところ、動作しました。
ただ、選択肢直後のメッセージでは好感度の表示が消えてしまうようです。
(アイコン表示で実行、変数(好感度)の操作なしでも発生。)
もし、仕様でしたら申し訳ありません。
表記の件、了解しました。申し訳ありませんでした!
先ほど試してみたところ、動作しました。
ただ、選択肢直後のメッセージでは好感度の表示が消えてしまうようです。
(アイコン表示で実行、変数(好感度)の操作なしでも発生。)
もし、仕様でしたら申し訳ありません。
表記の件、了解しました。申し訳ありませんでした!
【ものすごく簡単な自己紹介】
VX,VX Aceを中心にのんびりと素材を作っています。
和風素材を増やしていきたい、この頃。
VX,VX Aceを中心にのんびりと素材を作っています。
和風素材を増やしていきたい、この頃。
-
- 記事: 715
- 登録日時: 2018年12月23日(日) 13:55
Re: 【VX Ace】メッセージウィンドウの文章内で条件分岐
こんばんは。
>ただ、選択肢直後のメッセージでは好感度の表示が消えてしまうようです。
>(アイコン表示で実行、変数(好感度)の操作なしでも発生。)
>もし、仕様でしたら申し訳ありません。
上記に関して、こちらでは、正常に好感度アイコンが表示されていて、問題を確認できませんでした。
仕様として、名前枠が空欄(¥NAME[]など名前が設定されて無いため枠だけ表示される状態)の時は、アイコンを追加しないようになっていますが、たぶん関係ないですよね。
もし、差し支えなければ、イベントページの内容(問題を起こしている部分)を画像で
(イベントの実行内容の部分はテキストでコピペできないので)見せて頂けないでしょうか。
>ただ、選択肢直後のメッセージでは好感度の表示が消えてしまうようです。
>(アイコン表示で実行、変数(好感度)の操作なしでも発生。)
>もし、仕様でしたら申し訳ありません。
上記に関して、こちらでは、正常に好感度アイコンが表示されていて、問題を確認できませんでした。
仕様として、名前枠が空欄(¥NAME[]など名前が設定されて無いため枠だけ表示される状態)の時は、アイコンを追加しないようになっていますが、たぶん関係ないですよね。
もし、差し支えなければ、イベントページの内容(問題を起こしている部分)を画像で
(イベントの実行内容の部分はテキストでコピペできないので)見せて頂けないでしょうか。