Project1
标题: 求指点一下如何提出变量自己输入的文字 [打印本页]
作者: jiushiainilip19 时间: 2016-5-8 11:11
标题: 求指点一下如何提出变量自己输入的文字
本帖最后由 jiushiainilip19 于 2016-5-9 00:16 编辑
自己摸索了一下午 搜索了一些资料 结果改成这样 。。。不知道还有方法更简便一点吗?
还是想问下如何直接将变量里面的文字说明直接输出来!
#开关显示窗口
$不显示金钱窗口=1073
#需要显示的变量号
#XX是变量对应游戏的文字数值
$需求=[27,57,32,60,59,58,3841,99,3883,1107]
class Game_Variables
def []=(variable_id, value)
if variable_id <= 5000
# 变量获得提示
$需求.each do |x|
if variable_id == x && $game_switches[$不显示金钱窗口]==false
unless $game_temp.in_battle
old_value = self[variable_id]
value_changed = value - old_value
carol3_66RPG = Window_Base.new((640-160)/2,128,180,100)
carol3_66RPG.contents = Bitmap.new(carol3_66RPG.width - 32, carol3_66RPG.height - 32)
if value_changed >= 0
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==27
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==57
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==32
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==60
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==59
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==58
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==3841
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==99
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==3883
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==1107
#——声效,可以自己改
Audio.se_play("Audio/SE/"+"006-System06",80,100)
else
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==27
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==57
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==32
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==60
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==59
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==58
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==3841
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==3841
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==99
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==3883
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==1107
#——声效,可以自己改
Audio.se_play("Audio/SE/"+"005-System05",80,100)
end
carol3_66RPG.opacity = 160
for i in 0..30
Graphics.update
end
for i in 0..10
carol3_66RPG.opacity -= 30
carol3_66RPG.contents_opacity -= 30
Graphics.update
end
carol3_66RPG.dispose
end
end
end
@data[variable_id] = value
end
end
end
#开关显示窗口
$不显示金钱窗口=1073
#需要显示的变量号
#XX是变量对应游戏的文字数值
$需求=[27,57,32,60,59,58,3841,99,3883,1107]
class Game_Variables
def []=(variable_id, value)
if variable_id <= 5000
# 变量获得提示
$需求.each do |x|
if variable_id == x && $game_switches[$不显示金钱窗口]==false
unless $game_temp.in_battle
old_value = self[variable_id]
value_changed = value - old_value
carol3_66RPG = Window_Base.new((640-160)/2,128,180,100)
carol3_66RPG.contents = Bitmap.new(carol3_66RPG.width - 32, carol3_66RPG.height - 32)
if value_changed >= 0
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==27
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==57
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==32
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==60
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==59
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==58
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==3841
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==99
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==3883
carol3_66RPG.contents.draw_text(0,0,240,32,"XX+:"+value_changed.abs.to_s) if variable_id ==1107
#——声效,可以自己改
Audio.se_play("Audio/SE/"+"006-System06",80,100)
else
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==27
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==57
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==32
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==60
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==59
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==58
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==3841
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==3841
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==99
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==3883
carol3_66RPG.contents.draw_text(0,0,240,32,"XX-:"+value_changed.abs.to_s) if variable_id ==1107
#——声效,可以自己改
Audio.se_play("Audio/SE/"+"005-System05",80,100)
end
carol3_66RPG.opacity = 160
for i in 0..30
Graphics.update
end
for i in 0..10
carol3_66RPG.opacity -= 30
carol3_66RPG.contents_opacity -= 30
Graphics.update
end
carol3_66RPG.dispose
end
end
end
@data[variable_id] = value
end
end
end
-
QQ截图20160509110758.png
(3.05 KB, 下载次数: 7)
作者: RyanBern 时间: 2016-5-9 08:45
楼主的脚本还需要进一步学习。
下面是我写的这个。没测试,可能有笔误,楼主看到哪里不能运行可以自行修正
module RB
# 打开 X 号开关后屏蔽变量提示
No_Variable_Window = 5
# 监视的变量
Variables_Monitor = [27, 57, 32, 60, 59, 58, 3841, 99, 3883, 1107]
end
class Game_Variables
include RB
alias rb_assign_160509 []=
def []=(id, value)
on_changing(id, value)
rb_assign_160509(id, value)
end
def on_changing(id, value)
return if $game_switches[No_Variable_Window] || !Varables_Monitor.include?(id) || !$game_temp.in_battle
old_value = self[id]
value_changed = value - old_value
var_window = Window_Base.new((640-160)/2,128,180,100)
var_window.contents = Bitmap.new(var_window.width - 32, var_window.height - 32)
text = sprintf("XX%+d", value_changed)
var_window.contents.draw_text(0,0,148,32,text)
se_filename = value_changed > 0 "006-System06" : "005-System05"
Audio.se_play("Audio/SE/#{se_filename}", 80, 100)
30.times { Graphics.update }
10.times { var_window.opacity -= 30; var_window.contents_opacity -= 30; Graphics.update; }
var_window.dispose
end
end
module RB
# 打开 X 号开关后屏蔽变量提示
No_Variable_Window = 5
# 监视的变量
Variables_Monitor = [27, 57, 32, 60, 59, 58, 3841, 99, 3883, 1107]
end
class Game_Variables
include RB
alias rb_assign_160509 []=
def []=(id, value)
on_changing(id, value)
rb_assign_160509(id, value)
end
def on_changing(id, value)
return if $game_switches[No_Variable_Window] || !Varables_Monitor.include?(id) || !$game_temp.in_battle
old_value = self[id]
value_changed = value - old_value
var_window = Window_Base.new((640-160)/2,128,180,100)
var_window.contents = Bitmap.new(var_window.width - 32, var_window.height - 32)
text = sprintf("XX%+d", value_changed)
var_window.contents.draw_text(0,0,148,32,text)
se_filename = value_changed > 0 "006-System06" : "005-System05"
Audio.se_play("Audio/SE/#{se_filename}", 80, 100)
30.times { Graphics.update }
10.times { var_window.opacity -= 30; var_window.contents_opacity -= 30; Graphics.update; }
var_window.dispose
end
end
作者: jiushiainilip19 时间: 2016-5-9 10:13
本帖最后由 jiushiainilip19 于 2016-5-9 11:19 编辑
非常感谢 一些错误已经更正了 不过还有个问题
text = sprintf("XX%+d", value_changed)
text = sprintf("XX%+d", value_changed)
这个好像不能对应变量ID中的文字进行输出 只能输出指定"XX%+d"中的XX
这个XX是固定死的,,,
比如变量1=灵魂 变量2=面包 变量3=坦克 等等。。。等等。。。。
或者我直接用分歧的方法去判断text对应的监视变量 修改后结果
module RB
# 打开 X 号开关后屏蔽变量提示
No_Variable_Window = 1073
# 监视的变量
Variables_Monitor = [27, 57, 32, 60, 59, 58, 3841, 99, 3883, 1107]
end
class Game_Variables
include RB
alias rb_assign_160509 []=
def []=(id, value)
on_changing(id, value)
rb_assign_160509(id, value)
end
def on_changing(id, value)
return if $game_switches[No_Variable_Window] || !Variables_Monitor.include?(id) || $game_temp.in_battle
old_value = self[id]
value_changed = value - old_value
var_window = Window_Base.new((640-160)/2,128,180,100)
var_window.contents = Bitmap.new(var_window.width - 32, var_window.height - 32)
case id
when 27
text = sprintf("魂力%+d", value_changed)
when 57
text = sprintf("声望%+d", value_changed)
when 32
text = sprintf("阅历%+d", value_changed)
when 60
text = sprintf("仙魂%+d", value_changed)
when 59
text = sprintf("地魂%+d", value_changed)
when 58
text = sprintf("天魂%+d", value_changed)
when 3841
text = sprintf("人策%+d", value_changed)
when 99
text = sprintf("战力%+d", value_changed)
when 3883
text = sprintf("战技%+d", value_changed)
when 1107
text = sprintf("镖车难度%+d", value_changed)
else
text = ""
end
var_window.contents.draw_text(0,0,148,32,text)
se_filename = value_changed > 0 ? "006-System06" : "005-System05"
Audio.se_play("Audio/SE/#{se_filename}", 80, 100)
30.times { Graphics.update }
10.times { var_window.opacity -= 30; var_window.contents_opacity -= 30; Graphics.update; }
var_window.dispose
end
end
module RB
# 打开 X 号开关后屏蔽变量提示
No_Variable_Window = 1073
# 监视的变量
Variables_Monitor = [27, 57, 32, 60, 59, 58, 3841, 99, 3883, 1107]
end
class Game_Variables
include RB
alias rb_assign_160509 []=
def []=(id, value)
on_changing(id, value)
rb_assign_160509(id, value)
end
def on_changing(id, value)
return if $game_switches[No_Variable_Window] || !Variables_Monitor.include?(id) || $game_temp.in_battle
old_value = self[id]
value_changed = value - old_value
var_window = Window_Base.new((640-160)/2,128,180,100)
var_window.contents = Bitmap.new(var_window.width - 32, var_window.height - 32)
case id
when 27
text = sprintf("魂力%+d", value_changed)
when 57
text = sprintf("声望%+d", value_changed)
when 32
text = sprintf("阅历%+d", value_changed)
when 60
text = sprintf("仙魂%+d", value_changed)
when 59
text = sprintf("地魂%+d", value_changed)
when 58
text = sprintf("天魂%+d", value_changed)
when 3841
text = sprintf("人策%+d", value_changed)
when 99
text = sprintf("战力%+d", value_changed)
when 3883
text = sprintf("战技%+d", value_changed)
when 1107
text = sprintf("镖车难度%+d", value_changed)
else
text = ""
end
var_window.contents.draw_text(0,0,148,32,text)
se_filename = value_changed > 0 ? "006-System06" : "005-System05"
Audio.se_play("Audio/SE/#{se_filename}", 80, 100)
30.times { Graphics.update }
10.times { var_window.opacity -= 30; var_window.contents_opacity -= 30; Graphics.update; }
var_window.dispose
end
end
欢迎光临 Project1 (https://rpg.blue/) |
Powered by Discuz! X3.1 |