Project1

标题: 将获取金钱提示,改为获取变量提示 [打印本页]

作者: [email protected]    时间: 2014-7-23 22:00
标题: 将获取金钱提示,改为获取变量提示
本帖最后由 [email protected] 于 2014-7-23 22:10 编辑
  1. class Interpreter
  2. def command_125
  3.     value = operate_value(@parameters[0], @parameters[1], @parameters[2])
  4.     $game_party.gain_gold(value)
  5.     if $game_switches[$不显示金钱窗口]==false
  6.       carol3_66RPG = Window_Base.new((640-160)/2,128,180,100)
  7.       carol3_66RPG.contents = Bitmap.new(carol3_66RPG.width - 32, carol3_66RPG.height - 32)
  8.       if value >= 0
  9.         carol3_66RPG.contents.draw_text(0,0,240,32,"获得金钱:")
  10.         #——声效,可以自己改
  11.         Audio.se_play("Audio/SE/"+"006-System06",80,100)
  12.       else
  13.         carol3_66RPG.contents.draw_text(0,0,240,32,"失去金钱:")
  14.         #——声效,可以自己改
  15.         Audio.se_play("Audio/SE/"+"005-System05",80,100)
  16.       end     
  17.       carol3_66RPG.contents.draw_text(0,32,240,32,value.abs.to_s)
  18.       carol3_66RPG.contents.draw_text(0,32,140,32, $data_system.words.gold,2)
  19.       carol3_66RPG.opacity = 160
  20.       for i in 0..30
  21.         Graphics.update
  22.       end
  23.       for i in 0..10
  24.         carol3_66RPG.opacity -= 30
  25.         carol3_66RPG.contents_opacity -= 30
  26.         Graphics.update
  27.       end
  28.       carol3_66RPG.dispose
  29.     end
  30.     return true
  31.   end
复制代码
这个是获取金钱提示的脚本,我要怎么改才能将 变量 61 的值也提示呢!我设置的变量61是 另一金钱,这个提示要怎么改!亲!现在还有人在吗??
RUBY 代码复制
  1. class Window_Bianliangci < Window_Base
  2.   #--------------------------------------------------------------------------
  3.   # ● 初始化对像
  4.   #--------------------------------------------------------------------------
  5.   def initialize
  6.     super(0, 0, 300, 100)
  7.     self.contents = Bitmap.new(width - 32, height - 32)
  8.     self.windowskin = Bitmap.new(1,1)
  9.     refresh
  10.   end
  11.   #--------------------------------------------------------------------------
  12.   # ● 刷新
  13.   #--------------------------------------------------------------------------
  14.   def refresh
  15.     self.contents.clear
  16.     self.contents.font.color =  system_color
  17.     self.contents.draw_text(4, 35, 120, 32, "银两:")
  18.     self.contents.font.color = normal_color
  19.     #self.contents.draw_text(105, 35, 120, 32, $game_variables[61].to_s)
  20.        ci = $game_variables[61]
  21.     text = ci >= 10000 ? (ci / 10000).to_s + " W " + (ci - ((ci / 10000)*10000)).to_s : ci.to_s
  22.     self.contents.draw_text(65, 35, 120, 32,text)
  23.   end
  24. end

这个是61号变量的脚本。
作者: RyanBern    时间: 2014-7-23 22:12
本帖最后由 RyanBern 于 2014-7-23 22:15 编辑

这个命令已经跟“获取金钱”事件指令进行绑定,只有执行事件“增减金钱”的时候,这个提示脚本才有用。LZ的61号变量是第二货币,因此可以仿照这个脚本写一个“第二货币得失提示”
  1. class Game_Variables
  2.   def []=(variable_id, value)
  3.     if variable_id <= 5000
  4.       # 第二货币得失提示
  5.       if variable_id == 61 && $game_switches[$不显示金钱窗口]==false
  6.         old_value = self[variable_id]
  7.         value_changed = value - old_value
  8.         carol3_66RPG = Window_Base.new((640-160)/2,128,180,100)
  9.         carol3_66RPG.contents = Bitmap.new(carol3_66RPG.width - 32, carol3_66RPG.height - 32)
  10.         if value_changed >= 0
  11.           carol3_66RPG.contents.draw_text(0,0,240,32,"获得第二货币:")
  12.           #——声效,可以自己改
  13.           Audio.se_play("Audio/SE/"+"006-System06",80,100)
  14.         else
  15.           carol3_66RPG.contents.draw_text(0,0,240,32,"失去第二货币:")
  16.           #——声效,可以自己改
  17.           Audio.se_play("Audio/SE/"+"005-System05",80,100)
  18.         end     
  19.         carol3_66RPG.contents.draw_text(0,32,240,32,value_changed.abs.to_s)
  20.         carol3_66RPG.contents.draw_text(0,32,140,32, "第二货币",2)
  21.         carol3_66RPG.opacity = 160
  22.         for i in 0..30
  23.           Graphics.update
  24.         end
  25.         for i in 0..10
  26.           carol3_66RPG.opacity -= 30
  27.           carol3_66RPG.contents_opacity -= 30
  28.           Graphics.update
  29.         end
  30.         carol3_66RPG.dispose
  31.       end
  32.       @data[variable_id] = value
  33.     end
  34.   end
  35. end
复制代码
未经过测试,用法就是改变61号变量之后,会出提示。(当然要求不显示金钱窗口开关关闭)
作者: 573932914    时间: 2014-7-23 22:14
应该纯事件也行吧
游戏开始,用A变量代入61变量值,然后公共事件,设置并行处理,用B变量代入这个变量61的值,判断AB相等,相等没有事件,不相等就将B-=A,再将A更新带另一货币61变量的值,并且引用方法,就是调用后打开窗口,显示文章[直接用文章提示也可以,显示已变化的B的值(金钱变化的差)]




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1