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

Project1

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

[已经解决] VX版的物品得失脚本,有改进版不?

 关闭 [复制链接]

Lv4.逐梦者

世界坑化协会

梦石
0
星屑
8234
在线时间
1568 小时
注册时间
2007-3-13
帖子
5546

极短25参与极短23参与极短21参与开拓者贵宾第一届化妆舞会最佳服饰奖

跳转到指定楼层
1
发表于 2011-5-31 10:46:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 v2sam 于 2011-5-31 16:54 编辑

我现在用的版本是不会自动拉伸窗体,如果物品名称多于3个字,就会和数量重叠,求改进版。
  1. #=====================================================================
  2. # 本腳本來自www.66RPG.com,使用和轉載請保留此信息
  3. #=====================================================================

  4. # 注意!!!在對話後得到物品,請在對話後先用事件等待3幀,否則對話框來不及消失。

  5. # 開關定義:

  6. $noshowgold = 5                        # 不显示金钱得失

  7. $noshowitem = 6                        # 不显示物品得失

  8. $noshowweapon = 7                      # 不显示武器得失

  9. $noshowarmor = 8                       # 不显示防具得失
  10. # 以上開關,當打開的時候,獲得物品將不會提示,比如默認打開41號開關,獲得金錢不再提示

  11. # 不想提示等级升降时,就在事件命令直接选择是否显示就行了。

  12. #——聲效,可以自己改
  13. folder = "Audio/SE/"
  14. $gain_gold_se   = folder +"Shop"      # 获得金钱声效
  15. $loss_gold_se   = folder +"Blow2"     # 失去金钱声效

  16. $gain_item_se   = folder +"Item1"     # 获得物品声效
  17. $loss_item_se   = folder +"Blow2"     # 失去物品声效

  18. $gain_weapon_se = folder +"Item1"     # 获得武器声效
  19. $loss_weapon_se = folder +"Blow2"     # 失去武器声效

  20. $gain_armor_se  = folder +"Item1"     # 获得防具声效
  21. $loss_armor_se  = folder +"Blow2"     # 失去防具声效

  22. $gain_lv_se     = folder +"Item1"     # 提升等级声效
  23. $loss_lv_se     = folder +"Blow2"     # 降低等级声效

  24. # ————————————————————————————————————

  25. class Game_Interpreter
  26.   #--------------------------------------------------------------------------
  27.   # ● 增減金錢
  28.   #--------------------------------------------------------------------------
  29.   def command_125
  30.     value = operate_value(@params[0], @params[1], @params[2])
  31.     $game_party.gain_gold(value)
  32.     if $game_switches[$noshowgold]==false
  33.       show_gain_window(0, value)
  34.     end
  35.     return true
  36.   end
  37.   #--------------------------------------------------------------------------
  38.   # ● 增減物品
  39.   #--------------------------------------------------------------------------
  40.   def command_126
  41.     value = operate_value(@params[1], @params[2], @params[3])
  42.     $game_party.gain_item($data_items[@params[0]], value)
  43.     if $game_switches[$noshowitem]==false
  44.       show_gain_window(1, value)
  45.     end
  46.     $game_map.need_refresh = true
  47.     return true
  48.   end
  49.   #--------------------------------------------------------------------------
  50.   # ● 增減武器
  51.   #--------------------------------------------------------------------------
  52.   def command_127
  53.     value = operate_value(@params[1], @params[2], @params[3])
  54.     $game_party.gain_item($data_weapons[@params[0]], value, @params[4])
  55.     if $game_switches[$noshowweapon]==false
  56.       show_gain_window(2, value)
  57.     end
  58.     return true
  59.   end
  60.   #--------------------------------------------------------------------------
  61.   # ● 增減防具
  62.   #--------------------------------------------------------------------------
  63.   def command_128
  64.     value = operate_value(@params[1], @params[2], @params[3])
  65.     $game_party.gain_item($data_armors[@params[0]], value, @params[4])
  66.     if $game_switches[$noshowarmor]==false
  67.       show_gain_window(3, value)
  68.     end
  69.     return true
  70.   end
  71.   
  72.   #--------------------------------------------------------------------------
  73.   # ● 等级増減
  74.   #--------------------------------------------------------------------------
  75.   def command_316
  76.     value = operate_value(@params[1], @params[2], @params[3])
  77.     iterate_actor_id(@params[0]) do |actor|
  78.       actor.change_level(actor.level + value, false)
  79.       if @params[4]
  80.         show_gain_level_window(actor,value)
  81.       end
  82.     end
  83.     return true
  84.   end

  85.   
  86.   def show_gain_window(type, value)
  87.     snstar2006_66rpg_item = $data_armors[@params[0]]
  88.     snstar2006_66rpg = Window_Base.new((640-300)/2,128,200,100)
  89.     snstar2006_66rpg.contents = Bitmap.new(snstar2006_66rpg.width - 32, snstar2006_66rpg.height - 32)
  90.     if value >= 0
  91.       gain_text = "获得"   
  92.     else
  93.       gain_text = "失去"
  94.     end
  95.    
  96.     case type
  97.     when 0
  98.       gain_type = "金钱"
  99.       if value >=0
  100.         Audio.se_play($gain_gold_se,80,100)
  101.       else
  102.         Audio.se_play("Audio/SE/"+"Item1",80,100)
  103.       end
  104.     when 1
  105.       gain_type = "物品"
  106.       string = $data_items[@params[0]]
  107.       if value >=0
  108.         Audio.se_play($gain_item_se,80,100)
  109.       else
  110.         Audio.se_play($loss_item_se,80,100)
  111.       end
  112.     when 2
  113.       gain_type = "武器"
  114.       string = $data_weapons[@params[0]]
  115.       if value >=0
  116.         Audio.se_play($gain_weapon_se,80,100)
  117.       else
  118.         Audio.se_play($loss_weapon_se,80,100)
  119.       end
  120.     when 3
  121.       gain_type = "防具"
  122.       string = $data_armors[@params[0]]
  123.       if value >=0
  124.         Audio.se_play($gain_armor_se,80,100)
  125.       else
  126.         Audio.se_play($loss_armor_se,80,100)
  127.       end
  128.     end
  129.    
  130.     snstar2006_66rpg.contents.draw_text(0,0,160,32,gain_text+gain_type+":")
  131.    
  132.     unless type == 0
  133.       snstar2006_66rpg.draw_item_name(string, 28, 32, true)
  134.       snstar2006_66rpg.contents.draw_text(0, 32, 150, 32, "×"+value.abs.to_s, 2)
  135.     else
  136.       snstar2006_66rpg.contents.draw_text(32,32,240,32,value.abs.to_s + "  "+ Vocab::gold)
  137.     end
  138.    
  139.     snstar2006_66rpg.opacity = 160
  140.    
  141.     for i in 0..30
  142.       Graphics.update
  143.     end
  144.    
  145.     for i in 0..10
  146.       snstar2006_66rpg.opacity -= 30
  147.       snstar2006_66rpg.contents_opacity -= 30
  148.       Graphics.update
  149.     end
  150.    
  151.     snstar2006_66rpg.dispose
  152.   end

  153.   def show_gain_level_window(actor,value)
  154.     lvstring = Vocab::level
  155.         
  156.     snstar2006_66rpg = Window_Base.new((640-300)/2,128,200,100)
  157.     snstar2006_66rpg.contents = Bitmap.new(snstar2006_66rpg.width - 32, snstar2006_66rpg.height - 32)
  158.    
  159.     if value >= 0
  160.       gain_text = "提升"
  161.       Audio.se_play($gain_lv_se,80,100)
  162.     else
  163.       gain_text = "降低"
  164.       Audio.se_play($loss_lv_se,80,100)
  165.     end
  166.    
  167.    
  168.     snstar2006_66rpg.contents.draw_text(0, 0, 108, 32, actor.name)
  169.     string = lvstring+gain_text+value.abs.to_s+"级"
  170.     snstar2006_66rpg.contents.draw_text(32,32,160,32,string)

  171.     snstar2006_66rpg.opacity = 160
  172.    
  173.     for i in 0..30
  174.       Graphics.update
  175.     end
  176.    
  177.     for i in 0..10
  178.       snstar2006_66rpg.opacity -= 30
  179.       snstar2006_66rpg.contents_opacity -= 30
  180.       Graphics.update
  181.     end
  182.    
  183.     snstar2006_66rpg.dispose

  184.   end
  185. end



  186. #=====================================================================
  187. # 本腳本來自www.66RPG.com,使用和轉載請保留此信息
  188. #=====================================================================
复制代码
你的肩膀上有肩周炎~♪  秒懂  ☚   \没有

Lv2.观梦者

狂気の月兔

梦石
0
星屑
276
在线时间
1245 小时
注册时间
2009-4-7
帖子
879

贵宾

2
发表于 2011-5-31 11:37:33 | 只看该作者
求脚本的原始版本~~~~~

点评

已经放上  发表于 2011-5-31 12:22
回复 支持 反对

使用道具 举报

Lv1.梦旅人

战国美少年森兰丸

梦石
0
星屑
204
在线时间
852 小时
注册时间
2008-7-20
帖子
3705
3
发表于 2011-5-31 12:07:55 | 只看该作者
赵云版,柳柳版,流星版,你哪个都用不了么?= =|||

点评

求连接  发表于 2011-5-31 12:22
没公开我怎么用- -  发表于 2011-5-31 12:18
回复 支持 反对

使用道具 举报

Lv1.梦旅人

战国美少年森兰丸

梦石
0
星屑
204
在线时间
852 小时
注册时间
2008-7-20
帖子
3705
4
发表于 2011-5-31 12:24:30 | 只看该作者
回复 支持 反对

使用道具 举报

Lv4.逐梦者

世界坑化协会

梦石
0
星屑
8234
在线时间
1568 小时
注册时间
2007-3-13
帖子
5546

极短25参与极短23参与极短21参与开拓者贵宾第一届化妆舞会最佳服饰奖

5
 楼主| 发表于 2011-5-31 13:53:44 | 只看该作者
夕阳武士 发表于 2011-5-31 12:24
http://rpg.blue/forum.php?mod=viewthread&tid=76363&highlight=%E6%8F%90%E7%A4%BAhttp://bbs.66rpg ...

有木有,不外挂图片,简洁点的,或者说怎么去掉?
你的肩膀上有肩周炎~♪  秒懂  ☚   \没有
回复 支持 反对

使用道具 举报

Lv1.梦旅人

百合乡の蕾咪

梦石
0
星屑
55
在线时间
151 小时
注册时间
2011-1-12
帖子
198
6
发表于 2011-5-31 14:52:14 | 只看该作者
  1. #=====================================================================
  2. # 本腳本來自www.66RPG.com,使用和轉載請保留此信息
  3. #=====================================================================

  4. # 注意!!!在對話後得到物品,請在對話後先用事件等待3幀,否則對話框來不及消失。

  5. # 開關定義:

  6. $noshowgold = 5                        # 不显示金钱得失

  7. $noshowitem = 6                        # 不显示物品得失

  8. $noshowweapon = 7                      # 不显示武器得失

  9. $noshowarmor = 8                       # 不显示防具得失
  10. # 以上開關,當打開的時候,獲得物品將不會提示,比如默認打開41號開關,獲得金錢不再提示

  11. # 不想提示等级升降时,就在事件命令直接选择是否显示就行了。

  12. #——聲效,可以自己改
  13. folder = "Audio/SE/"
  14. $gain_gold_se   = folder +"Shop"      # 获得金钱声效
  15. $loss_gold_se   = folder +"Blow2"     # 失去金钱声效

  16. $gain_item_se   = folder +"Item1"     # 获得物品声效
  17. $loss_item_se   = folder +"Blow2"     # 失去物品声效

  18. $gain_weapon_se = folder +"Item1"     # 获得武器声效
  19. $loss_weapon_se = folder +"Blow2"     # 失去武器声效

  20. $gain_armor_se  = folder +"Item1"     # 获得防具声效
  21. $loss_armor_se  = folder +"Blow2"     # 失去防具声效

  22. $gain_lv_se     = folder +"Item1"     # 提升等级声效
  23. $loss_lv_se     = folder +"Blow2"     # 降低等级声效

  24. # ————————————————————————————————————

  25. class Game_Interpreter
  26.   #--------------------------------------------------------------------------
  27.   # ● 增減金錢
  28.   #--------------------------------------------------------------------------
  29.   def command_125
  30.     value = operate_value(@params[0], @params[1], @params[2])
  31.     $game_party.gain_gold(value)
  32.     if $game_switches[$noshowgold]==false
  33.       show_gain_window(0, value)
  34.     end
  35.     return true
  36.   end
  37.   #--------------------------------------------------------------------------
  38.   # ● 增減物品
  39.   #--------------------------------------------------------------------------
  40.   def command_126
  41.     value = operate_value(@params[1], @params[2], @params[3])
  42.     $game_party.gain_item($data_items[@params[0]], value)
  43.     if $game_switches[$noshowitem]==false
  44.       show_gain_window(1, value)
  45.     end
  46.     $game_map.need_refresh = true
  47.     return true
  48.   end
  49.   #--------------------------------------------------------------------------
  50.   # ● 增減武器
  51.   #--------------------------------------------------------------------------
  52.   def command_127
  53.     value = operate_value(@params[1], @params[2], @params[3])
  54.     $game_party.gain_item($data_weapons[@params[0]], value, @params[4])
  55.     if $game_switches[$noshowweapon]==false
  56.       show_gain_window(2, value)
  57.     end
  58.     return true
  59.   end
  60.   #--------------------------------------------------------------------------
  61.   # ● 增減防具
  62.   #--------------------------------------------------------------------------
  63.   def command_128
  64.     value = operate_value(@params[1], @params[2], @params[3])
  65.     $game_party.gain_item($data_armors[@params[0]], value, @params[4])
  66.     if $game_switches[$noshowarmor]==false
  67.       show_gain_window(3, value)
  68.     end
  69.     return true
  70.   end
  71.   
  72.   #--------------------------------------------------------------------------
  73.   # ● 等级増減
  74.   #--------------------------------------------------------------------------
  75.   def command_316
  76.     value = operate_value(@params[1], @params[2], @params[3])
  77.     iterate_actor_id(@params[0]) do |actor|
  78.       actor.change_level(actor.level + value, false)
  79.       if @params[4]
  80.         show_gain_level_window(actor,value)
  81.       end
  82.     end
  83.     return true
  84.   end

  85.   
  86.   def show_gain_window(type, value)
  87.     snstar2006_66rpg_item = $data_armors[@params[0]]
  88. #~     snstar2006_66rpg = Window_Base.new((640-300)/2,128,200,100)
  89. #~     snstar2006_66rpg.contents = Bitmap.new(snstar2006_66rpg.width - 32, snstar2006_66rpg.height - 32)
  90.     gain_text = nil
  91.     if value >= 0
  92.       gain_text = "获得"   
  93.     else
  94.       gain_text = "失去"
  95.     end
  96.     string = nil
  97.     gain_type = nil
  98.     case type
  99.     when 0
  100.       gain_type = "金钱"
  101.       if value >=0
  102.         Audio.se_play($gain_gold_se,80,100)
  103.       else
  104.         Audio.se_play("Audio/SE/"+"Item1",80,100)
  105.       end
  106.     when 1
  107.       gain_type = "物品"
  108.       string = $data_items[@params[0]]
  109.       if value >=0
  110.         Audio.se_play($gain_item_se,80,100)
  111.       else
  112.         Audio.se_play($loss_item_se,80,100)
  113.       end
  114.     when 2
  115.       gain_type = "武器"
  116.       string = $data_weapons[@params[0]]
  117.       if value >=0
  118.         Audio.se_play($gain_weapon_se,80,100)
  119.       else
  120.         Audio.se_play($loss_weapon_se,80,100)
  121.       end
  122.     when 3
  123.       gain_type = "防具"
  124.       string = $data_armors[@params[0]]
  125.       if value >=0
  126.         Audio.se_play($gain_armor_se,80,100)
  127.       else
  128.         Audio.se_play($loss_armor_se,80,100)
  129.       end
  130.     end
  131.   
  132.    
  133.   
  134.     unless type == 0
  135.       rect = Bitmap.new(500, 32).text_size(string.name)
  136.       snstar2006_66rpg = Window_Base.new((544-rect.width - 150 - 32)/2,128,rect.width + 150 + 32,100)
  137.       snstar2006_66rpg.contents = Bitmap.new(snstar2006_66rpg.width - 32, snstar2006_66rpg.height - 32)
  138.    
  139.       snstar2006_66rpg.contents.draw_text(0,0,160,32,gain_text+gain_type+":")
  140.       if string != nil
  141.         snstar2006_66rpg.draw_icon(string.icon_index, 28, 32, true)
  142.         snstar2006_66rpg.contents.draw_text(52, 32, rect.width, 32, string.name)
  143.       end
  144.       snstar2006_66rpg.contents.draw_text(0, 32, snstar2006_66rpg.width - 32, 32, "×"+value.abs.to_s, 2)
  145.     else
  146.       snstar2006_66rpg = Window_Base.new((640-300)/2,128,200,100)
  147.       snstar2006_66rpg.contents = Bitmap.new(snstar2006_66rpg.width - 32, snstar2006_66rpg.height - 32)
  148.       snstar2006_66rpg.contents.draw_text(0,0,160,32,gain_text+gain_type+":")
  149.       snstar2006_66rpg.contents.draw_text(32,32,240,32,value.abs.to_s + "  "+ Vocab::gold)
  150.     end
  151.    
  152.     snstar2006_66rpg.opacity = 160
  153.    
  154.     for i in 0..30
  155.       Graphics.update
  156.     end
  157.    
  158.     for i in 0..10
  159.       snstar2006_66rpg.opacity -= 30
  160.       snstar2006_66rpg.contents_opacity -= 30
  161.       Graphics.update
  162.     end
  163.    
  164.     snstar2006_66rpg.dispose
  165.   end

  166.   def show_gain_level_window(actor,value)
  167.     lvstring = Vocab::level
  168.         
  169.     snstar2006_66rpg = Window_Base.new((640-300)/2,128,200,100)
  170.     snstar2006_66rpg.contents = Bitmap.new(snstar2006_66rpg.width - 32, snstar2006_66rpg.height - 32)
  171.    
  172.     if value >= 0
  173.       gain_text = "提升"
  174.       Audio.se_play($gain_lv_se,80,100)
  175.     else
  176.       gain_text = "降低"
  177.       Audio.se_play($loss_lv_se,80,100)
  178.     end
  179.    
  180.    
  181.     snstar2006_66rpg.contents.draw_text(0, 0, 108, 32, actor.name)
  182.     string = lvstring+gain_text+value.abs.to_s+"级"
  183.     snstar2006_66rpg.contents.draw_text(32,32,160,32,string)

  184.     snstar2006_66rpg.opacity = 160
  185.    
  186.     for i in 0..30
  187.       Graphics.update
  188.     end
  189.    
  190.     for i in 0..10
  191.       snstar2006_66rpg.opacity -= 30
  192.       snstar2006_66rpg.contents_opacity -= 30
  193.       Graphics.update
  194.     end
  195.    
  196.     snstar2006_66rpg.dispose

  197.   end
  198. end



  199. #=====================================================================
  200. # 本腳本來自www.66RPG.com,使用和轉載請保留此信息
  201. #=====================================================================
复制代码

评分

参与人数 1星屑 +1000 收起 理由
v2sam + 1000 GJ

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-11 13:03

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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