设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 3029|回复: 5
打印 上一主题 下一主题

[RM脚本] 战斗后获得物品窗口的改进

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
2 小时
注册时间
2006-9-3
帖子
61
跳转到指定楼层
1
发表于 2006-10-1 11:07:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
一个比较简单的效果,大家可以看一下,也许有用。

获得2个以上相同物品的时候就直接
2 x 恢复剂...
就不会像默认的
恢复剂
恢复剂

  1. #==============================================================================
  2. # Window_BattleResult
  3. #==============================================================================

  4. class Window_BattleResult < Window_Base

  5.   def initialize(exp, gold, treasures)
  6.     @exp = exp
  7.     @gold = gold
  8.     set_treasures(treasures)
  9.     super(160, 0, 320, @treasures[0].size * 32 + 64)
  10.     self.contents = Bitmap.new(width - 32, height - 32)
  11.     if $fontface != nil
  12.       self.contents.font.name = $fontface
  13.     elsif $defaultfonttype != nil
  14.       self.contents.font.name = $defaultfonttype
  15.     end
  16.     self.y = 160 - height / 2
  17.     self.back_opacity = 160
  18.     self.visible = false
  19.     refresh
  20.   end
  21.   
  22.   def refresh
  23.     self.contents.clear
  24.     x = 4
  25.     self.contents.font.color = normal_color
  26.     cx = contents.text_size(@exp.to_s).width
  27.     self.contents.draw_text(x, 0, cx, 32, @exp.to_s)
  28.     x += cx + 4
  29.     self.contents.font.color = system_color
  30.     cx = contents.text_size("EXP").width
  31.     self.contents.draw_text(x, 0, 64, 32, "EXP")
  32.     x += cx + 16
  33.     self.contents.font.color = normal_color
  34.     cx = contents.text_size(@gold.to_s).width
  35.     self.contents.draw_text(x, 0, cx, 32, @gold.to_s)
  36.     x += cx + 4
  37.     self.contents.font.color = system_color
  38.     self.contents.draw_text(x, 0, 128, 32, $data_system.words.gold)
  39.     y = 32
  40.     for i in [email protected]
  41.       draw_item(@treasures[0][i], 4, y, @treasures[1][i])
  42.       y += 32
  43.     end
  44.   end
  45.   
  46.   def set_treasures(treasures)
  47.     items = []
  48.     weapons = []
  49.     armors = []
  50.     stuff = []
  51.     qua = []
  52.     for i in treasures
  53.       items.push(i.id) if i.is_a?(RPG::Item)
  54.       weapons.push(i.id) if i.is_a?(RPG::Weapon)
  55.       armors.push(i.id) if i.is_a?(RPG::Armor)
  56.     end
  57.     for id in items
  58.       if stuff.include?($data_items[id])
  59.         qua[stuff.index($data_items[id])] += 1
  60.       else
  61.         stuff.push($data_items[id])
  62.         qua.push(1)
  63.       end
  64.     end
  65.     for id in weapons
  66.       if stuff.include?($data_weapons[id])
  67.         qua[stuff.index($data_weapons[id])] += 1
  68.       else
  69.         stuff.push($data_weapons[id])
  70.         qua.push(1)
  71.       end
  72.     end
  73.     for id in armors
  74.       if stuff.include?($data_armors[id])
  75.         qua[stuff.index($data_armors[id])] += 1
  76.       else
  77.         stuff.push($data_armors[id])
  78.         qua.push(1)
  79.       end
  80.     end
  81.     @treasures = []
  82.     @treasures.push(stuff)
  83.     @treasures.push(qua)
  84.   end
  85.    
  86.   def draw_item(item, x, y, qua = 1)
  87.     if item == nil
  88.       return
  89.     end
  90.     w1 = self.contents.text_size("0").width
  91.     w2 = self.contents.text_size("x ").width
  92.     x += w1 + w2 + 4
  93.     bitmap = RPG::Cache.icon(item.icon_name)
  94.     self.contents.font.color = normal_color
  95.     self.contents.draw_text(4, y, w1, 32, qua.to_s, 2)
  96.     self.contents.font.color = system_color
  97.     self.contents.draw_text(w1 + 8, y, w2, 32, "x")
  98.     self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24))
  99.     self.contents.font.color = normal_color
  100.     self.contents.draw_text(x + 28, y, 212, 32, item.name)
  101.   end
  102.   
  103. end
复制代码

Lv1.梦旅人

梦石
0
星屑
50
在线时间
2 小时
注册时间
2006-9-3
帖子
61
2
 楼主| 发表于 2006-10-1 11:07:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
一个比较简单的效果,大家可以看一下,也许有用。

获得2个以上相同物品的时候就直接
2 x 恢复剂...
就不会像默认的
恢复剂
恢复剂

  1. #==============================================================================
  2. # Window_BattleResult
  3. #==============================================================================

  4. class Window_BattleResult < Window_Base

  5.   def initialize(exp, gold, treasures)
  6.     @exp = exp
  7.     @gold = gold
  8.     set_treasures(treasures)
  9.     super(160, 0, 320, @treasures[0].size * 32 + 64)
  10.     self.contents = Bitmap.new(width - 32, height - 32)
  11.     if $fontface != nil
  12.       self.contents.font.name = $fontface
  13.     elsif $defaultfonttype != nil
  14.       self.contents.font.name = $defaultfonttype
  15.     end
  16.     self.y = 160 - height / 2
  17.     self.back_opacity = 160
  18.     self.visible = false
  19.     refresh
  20.   end
  21.   
  22.   def refresh
  23.     self.contents.clear
  24.     x = 4
  25.     self.contents.font.color = normal_color
  26.     cx = contents.text_size(@exp.to_s).width
  27.     self.contents.draw_text(x, 0, cx, 32, @exp.to_s)
  28.     x += cx + 4
  29.     self.contents.font.color = system_color
  30.     cx = contents.text_size("EXP").width
  31.     self.contents.draw_text(x, 0, 64, 32, "EXP")
  32.     x += cx + 16
  33.     self.contents.font.color = normal_color
  34.     cx = contents.text_size(@gold.to_s).width
  35.     self.contents.draw_text(x, 0, cx, 32, @gold.to_s)
  36.     x += cx + 4
  37.     self.contents.font.color = system_color
  38.     self.contents.draw_text(x, 0, 128, 32, $data_system.words.gold)
  39.     y = 32
  40.     for i in [email protected]
  41.       draw_item(@treasures[0][i], 4, y, @treasures[1][i])
  42.       y += 32
  43.     end
  44.   end
  45.   
  46.   def set_treasures(treasures)
  47.     items = []
  48.     weapons = []
  49.     armors = []
  50.     stuff = []
  51.     qua = []
  52.     for i in treasures
  53.       items.push(i.id) if i.is_a?(RPG::Item)
  54.       weapons.push(i.id) if i.is_a?(RPG::Weapon)
  55.       armors.push(i.id) if i.is_a?(RPG::Armor)
  56.     end
  57.     for id in items
  58.       if stuff.include?($data_items[id])
  59.         qua[stuff.index($data_items[id])] += 1
  60.       else
  61.         stuff.push($data_items[id])
  62.         qua.push(1)
  63.       end
  64.     end
  65.     for id in weapons
  66.       if stuff.include?($data_weapons[id])
  67.         qua[stuff.index($data_weapons[id])] += 1
  68.       else
  69.         stuff.push($data_weapons[id])
  70.         qua.push(1)
  71.       end
  72.     end
  73.     for id in armors
  74.       if stuff.include?($data_armors[id])
  75.         qua[stuff.index($data_armors[id])] += 1
  76.       else
  77.         stuff.push($data_armors[id])
  78.         qua.push(1)
  79.       end
  80.     end
  81.     @treasures = []
  82.     @treasures.push(stuff)
  83.     @treasures.push(qua)
  84.   end
  85.    
  86.   def draw_item(item, x, y, qua = 1)
  87.     if item == nil
  88.       return
  89.     end
  90.     w1 = self.contents.text_size("0").width
  91.     w2 = self.contents.text_size("x ").width
  92.     x += w1 + w2 + 4
  93.     bitmap = RPG::Cache.icon(item.icon_name)
  94.     self.contents.font.color = normal_color
  95.     self.contents.draw_text(4, y, w1, 32, qua.to_s, 2)
  96.     self.contents.font.color = system_color
  97.     self.contents.draw_text(w1 + 8, y, w2, 32, "x")
  98.     self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24))
  99.     self.contents.font.color = normal_color
  100.     self.contents.draw_text(x + 28, y, 212, 32, item.name)
  101.   end
  102.   
  103. end
复制代码

Lv1.梦旅人

梦石
0
星屑
50
在线时间
1 小时
注册时间
2005-10-24
帖子
135
3
发表于 2006-10-2 02:13:05 | 只看该作者
这个是干嘛的?没看懂。。。

===================================== [仙境之恋]寻找最初感动``` =====================================
回复 支持 反对

使用道具 举报

Lv1.梦旅人

彩色的银子

梦石
0
星屑
50
在线时间
190 小时
注册时间
2006-6-13
帖子
1361

贵宾

4
发表于 2006-10-2 02:16:36 | 只看该作者
获得2个以上相同物品的时候就直接
2 x 恢复剂...
就不会像默认的
恢复剂
恢复剂
-.-
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
260
在线时间
1373 小时
注册时间
2005-10-16
帖子
5113

贵宾

5
发表于 2006-10-2 03:51:03 | 只看该作者
这个……作者原创?还是转载??
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复 支持 反对

使用道具 举报

Lv2.观梦者


  • 更新完成啦

梦石
0
星屑
759
在线时间
6267 小时
注册时间
2006-6-7
帖子
8462
6
发表于 2006-10-2 03:55:08 | 只看该作者
发到地球 应该是转载吧``如果是原创  恩 厉害
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-4-24 17:43

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表