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

Project1

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

[已经解决] 我的得失物品脚本怎样修复问题?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
153 小时
注册时间
2010-12-18
帖子
167
跳转到指定楼层
1
发表于 2013-5-23 15:08:07 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

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

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

x
本帖最后由 mo88 于 2013-5-23 20:25 编辑

我用纯事件制作任务,任务完成后我设置了奖励一把武器,但是这个  得失物品  脚本就跳框出错了,说第70行出错,但我不懂脚本,不知道怎样修改,武器区域出错估计防具区域也有错。。

RUBY 代码复制
  1. #==============================================================================
  2. # 本腳本來自[url]www.66RPG.com[/url],使用和轉載請保留此信息
  3. # protosssonny修改版
  4. #==============================================================================
  5.  
  6. # 注意!!!在對話後得到物品,請在對話後先用事件等待3幀,否則對話框來不及消失。
  7.  
  8. # 開關定義:
  9.  
  10. $noshowgold = 5                        # 不显示金钱得失
  11.  
  12. $noshowitem = 6                        # 不显示物品得失
  13.  
  14. $noshowweapon = 7                      # 不显示武器得失
  15.  
  16. $noshowarmor = 8                       # 不显示防具得失
  17. # 以上開關,當打開的時候,獲得物品將不會提示,比如默認打開41號開關,獲得金錢不再提示
  18.  
  19. # 不想提示等级升降时,就在事件命令直接选择是否显示就行了。
  20.  
  21. #——聲效,可以自己改
  22. folder = "Audio/SE/"
  23. $gain_gold_se   = folder +"Shop"      # 获得金钱声效
  24. $loss_gold_se   = folder +"Shop"      # 失去金钱声效
  25.  
  26. $gain_item_se   = folder +"Recovery"  # 获得物品声效
  27. $loss_item_se   = folder +"Blow2"     # 失去物品声效
  28.  
  29. $gain_weapon_se = folder +"Item1"     # 获得武器声效
  30. $loss_weapon_se = folder +"Blow2"     # 失去武器声效
  31.  
  32. $gain_armor_se  = folder +"Item1"     # 获得防具声效
  33. $loss_armor_se  = folder +"Blow2"     # 失去防具声效
  34.  
  35. $gain_lv_se     = folder +"Item1"     # 提升等级声效
  36. $loss_lv_se     = folder +"Blow2"     # 降低等级声效
  37.  
  38. # ————————————————————————————————————
  39.  
  40. class Game_Interpreter
  41.   #--------------------------------------------------------------------------
  42.   # ● 增減金錢
  43.   #--------------------------------------------------------------------------
  44.   def command_125
  45.     value = operate_value(@params[0], @params[1], @params[2])
  46.     $game_party.gain_gold(value)
  47.     if $game_switches[$noshowgold]==false
  48.       show_gain_window(0, value)
  49.     end
  50.     return true
  51.   end
  52.   #--------------------------------------------------------------------------
  53.   # ● 增減物品
  54.   #--------------------------------------------------------------------------
  55.   def command_126
  56.     value = operate_value(@params[1], @params[2], @params[3])
  57.     $game_party.gain_item($data_items[@params[0]], value)
  58.     if $game_switches[$noshowitem]==false
  59.       show_gain_window(1, value)
  60.     end
  61.     $game_map.need_refresh = true
  62.     return true
  63.   end
  64.   #--------------------------------------------------------------------------
  65.   # ● 增減武器
  66.   #--------------------------------------------------------------------------
  67.   def command_127
  68.     value = operate_value(@params[1], @params[2], @params[3])
  69.     if @params[1] == 0
  70.       $game_party.gain_reini($base_weapons[@params[0]], value.abs, @params[4])
  71.     else
  72.       $game_party.weapon_armor_lose_reini($base_weapons[@params[0]], value.abs, @params[4])
  73.     end
  74.     if $game_switches[$noshowweapon]==false
  75.       show_gain_window(2, value)
  76.     end
  77.     return true
  78.   end
  79.   #--------------------------------------------------------------------------
  80.   # ● 增減防具
  81.   #--------------------------------------------------------------------------
  82.   def command_128
  83.     value = operate_value(@params[1], @params[2], @params[3])
  84.     if @params[1] == 0
  85.       $game_party.gain_reini($base_armors[@params[0]], value.abs, @params[4])
  86.     else
  87.       $game_party.weapon_armor_lose_reini($base_armors[@params[0]], value.abs, @params[4])
  88.     end
  89.     if $game_switches[$noshowarmor]==false
  90.       show_gain_window(3, value)
  91.     end
  92.     return true
  93.   end
  94.   #--------------------------------------------------------------------------
  95.   # ● 等级増減
  96.   #--------------------------------------------------------------------------
  97.   def command_316
  98.     value = operate_value(@params[1], @params[2], @params[3])
  99.     iterate_actor_id(@params[0]) do |actor|
  100.       actor.change_level(actor.level + value, false)
  101.       if @params[4]
  102.         show_gain_level_window(actor,value)
  103.       end
  104.     end
  105.     return true
  106.   end
  107.  
  108.  
  109.   def show_gain_window(type, value, string=nil)
  110.     snstar2006_66rpg_item = $data_armors[@params[0]] if string == nil and type != 0
  111.     snstar2006_66rpg = Window_Base.new((544-250)/2,142,250,132)
  112.     snstar2006_66rpg.contents = Bitmap.new(snstar2006_66rpg.width - 32, snstar2006_66rpg.height - 32)
  113.     if value >= 0
  114.       gain_text = "获得"   
  115.     else
  116.       gain_text = "失去"
  117.     end
  118.  
  119.     case type
  120.     when 0
  121.       gain_type = "金钱"
  122.       if value >=0
  123.         Audio.se_play($gain_gold_se,80,100)
  124.       else
  125.         Audio.se_play("Audio/SE/"+"Shop",80,100)
  126.       end
  127.     when 1
  128.       gain_type = "物品"
  129.       string = $data_items[@params[0]] if string == nil
  130.       if value >=0
  131.         Audio.se_play($gain_item_se,80,100)
  132.       else
  133.         Audio.se_play($loss_item_se,80,100)
  134.       end
  135.     when 2
  136.       gain_type = "武器"
  137.       string = $base_weapons[@params[0]] if string == nil
  138.       if value >=0
  139.         Audio.se_play($gain_weapon_se,80,100)
  140.       else
  141.         Audio.se_play($loss_weapon_se,80,100)
  142.       end
  143.     when 3
  144.       unless @params[0] == PA::CRYSTAL
  145.         gain_type = "防具"
  146.       else
  147.         gain_type = "了"
  148.       end  
  149.       string = $base_armors[@params[0]] if string == nil
  150.       if value >=0
  151.         Audio.se_play($gain_armor_se,80,100)
  152.       else
  153.         Audio.se_play($loss_armor_se,80,100)
  154.       end
  155.     when 4
  156.       gain_type = "防具"  
  157.       string = $base_armors[@params[0]] if string == nil
  158.       if value >=0
  159.         Audio.se_play($gain_armor_se,80,100)
  160.       else
  161.         Audio.se_play($loss_armor_se,80,100)
  162.       end
  163.     end
  164.  
  165.     snstar2006_66rpg.contents.draw_text(0,0,160,32,gain_text+gain_type+":")
  166.  
  167.     unless type == 0
  168.       snstar2006_66rpg.draw_item_name(string, 28, 32, true)
  169.       snstar2006_66rpg.contents.draw_text(0, 64, 150, 32, "×"+value.abs.to_s, 2)
  170.     else
  171.       snstar2006_66rpg.contents.draw_text(32,32,240,32,value.abs.to_s + "  "+ Vocab::gold)
  172.     end
  173.  
  174.     snstar2006_66rpg.opacity = 160
  175.  
  176.     for i in 0..30
  177.       Graphics.update
  178.     end
  179.  
  180.     for i in 0..10
  181.       snstar2006_66rpg.opacity -= 30
  182.       snstar2006_66rpg.contents_opacity -= 30
  183.       Graphics.update
  184.     end
  185.  
  186.     snstar2006_66rpg.dispose
  187.   end
  188.  
  189.   def show_gain_level_window(actor,value)
  190.     lvstring = Vocab::level
  191.  
  192.     snstar2006_66rpg = Window_Base.new(58,128,200,100)
  193.     snstar2006_66rpg.contents = Bitmap.new(snstar2006_66rpg.width - 32, snstar2006_66rpg.height - 32)
  194.     if value >= 0
  195.       gain_text = "提升"
  196.       Audio.se_play($gain_lv_se,100,100)
  197.     else
  198.       gain_text = "降低"
  199.       Audio.se_play($loss_lv_se,100,100)
  200.     end
  201.  
  202.  
  203.     snstar2006_66rpg.contents.draw_text(0, 0, 108, 32, actor.name)
  204.     string = lvstring+gain_text+value.abs.to_s+"级"
  205.     snstar2006_66rpg.contents.draw_text(32,32,160,32,string)
  206.  
  207.     snstar2006_66rpg.opacity = 160
  208.  
  209.     snstar2006_66rpg.dispose
  210.  
  211.   end
  212. end
第一个游戏《神马传说》完成度:
策划:★★★★★★★★★★ 100%
素材:★★★★★★★★★★ 100%
脚本:★★★★★★★★★★ 100%
数据库:★★★★★★★★★★ 100%
剧情:★★★★★★★★★★ 100%
BUG修复:★★★★★★★★★★ 100%
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

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

GMT+8, 2024-11-15 12:47

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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