Project1

标题: 我又有问题了.... >。 [打印本页]

作者: 幻影忧郁    时间: 2008-5-22 21:54
标题: 我又有问题了.... >。
得失物品提示脚本,物品的名字太长了,所以就:



应该怎么改啊? [LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: 八云紫    时间: 2008-5-22 22:14
试试看这个吧,我用的还没出现问题。

  1. class Game_Interpreter
  2. UnShowSwitch = 100 #禁止显示提示开关
  3. GainSe = "Audio/SE/Recovery.ogg"
  4. LoseSe = "Audio/SE/Raise2.ogg"

  5.   #--------------------------------------------------------------------------
  6.   # ● 增减金钱
  7.   #--------------------------------------------------------------------------
  8.   def command_125
  9.     value = operate_value(@params[0], @params[1], @params[2])
  10.     $game_party.gain_gold(value)
  11.     show_window(0,value) unless $game_switches[UnShowSwitch]
  12.     return true
  13.   end
  14.   #--------------------------------------------------------------------------
  15.   # ● 增减物品
  16.   #--------------------------------------------------------------------------
  17.   def command_126
  18.     value = operate_value(@params[1], @params[2], @params[3])
  19.     $game_party.gain_item($data_items[@params[0]], value)
  20.     $game_map.need_refresh = true
  21.     show_window(1,value,@params[0]) unless $game_switches[UnShowSwitch]
  22.     return true
  23.   end
  24.   #--------------------------------------------------------------------------
  25.   # ● 增减武器
  26.   #--------------------------------------------------------------------------
  27.   def command_127
  28.     value = operate_value(@params[1], @params[2], @params[3])
  29.     $game_party.gain_item($data_weapons[@params[0]], value, @params[4])
  30.     show_window(2,value,@params[0]) unless $game_switches[UnShowSwitch]
  31.     return true
  32.   end
  33.   #--------------------------------------------------------------------------
  34.   # ● 增减防具
  35.   #--------------------------------------------------------------------------
  36.   def command_128
  37.     value = operate_value(@params[1], @params[2], @params[3])
  38.     $game_party.gain_item($data_armors[@params[0]], value, @params[4])
  39.     show_window(3,value,@params[0]) unless $game_switches[UnShowSwitch]
  40.     return true
  41.   end

  42.   def show_window(type,value,id = 0)  
  43.     if type == 0
  44.       item = "gold"
  45.     else #物品,武器,防具
  46.       if type == 1
  47.       item = $data_items[id]
  48.       elsif type == 2
  49.       item = $data_weapons[id]
  50.       else
  51.       item = $data_armors[id]
  52.       end
  53.     end      
  54.       width = 150 + (type == 0 ? value.to_s.size * 7 - 16 : item.name.size * 7)
  55.       w = Window_Base.new((640-width)/2 - 30 , 208, width, 64)
  56.       w.windowskin = Cache.system("Window")
  57.       w.contents = Bitmap.new(w.width - 32, w.height - 32)
  58.       w.contents.font.color = w.text_color(4)
  59.       #w.contents.fill_rect(w.contents.rect,w.text_color(1))
  60.       w.opacity = w.contents_opacity = 0
  61.       for i in 0..10
  62.         w.opacity += 26
  63.         w.contents_opacity += 26
  64.         w.x += 3
  65.         Graphics.update
  66.       end      
  67.       if value >= 0
  68.         w.contents.draw_text(0,4,48,24,"得到")   
  69.         Audio.se_play(GainSe)
  70.       else
  71.         w.contents.draw_text(0,4,48,24,"失去")   
  72.         Audio.se_play(LoseSe)
  73.       end
  74.         if type != 0
  75.         w.draw_item_name_c(item,50, 4 ,type + 23)
  76.         w.opacity = w.back_opacity = 255
  77.         w.contents.font.color = w.text_color(14)
  78.         w.contents.draw_text(width - 72 , 4, 40, 24, "× " + value.abs.to_s ,2)
  79.         else  
  80.         bitmap = Cache.system("gold")
  81.         w.contents.blt(50, 4 ,bitmap , bitmap.rect)
  82.         w.contents.font.color = w.text_color(2)  
  83.         w.contents.draw_text(width - 112 , 4, 72, 24, " " + value.abs.to_s ,2)
  84.         end
  85.       for i in 0..30
  86.         Graphics.update
  87.       end
  88.       for i in 0..20
  89.         w.opacity -= 13
  90.         w.contents_opacity -= 13
  91.         w.x += 2
  92.         Graphics.update
  93.       end
  94.       w.dispose
  95.   end

  96. end


  97. class Window_Base
  98.   def draw_item_name_c(item, x, y , color)
  99.     if item != nil
  100.       draw_icon(item.icon_index, x, y, true)
  101.       self.contents.font.color = self.text_color(color)
  102.       self.contents.draw_text(x + 24, y, 172, WLH, item.name)
  103.     end
  104.   end
  105. end
复制代码
[LINE]1,#dddddd[/LINE]系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者: 幻影忧郁    时间: 2008-5-22 22:20
谢谢!!
本当にありがとうございました!!





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