查看: 2299|回复: 8

[已经解决] 物品合成的腳本執行時發生問題

[复制链接]
梦石
0
星屑
50
在线时间
116 小时
注册时间
2012-10-4
回帖
173
发表于 2017-3-17 23:01:11 | 显示全部楼层 |阅读模式

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

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

×
我在技術區看到物品合成的腳本

https://rpg.blue/thread-233788-1-1.html

雖然用他的範本可以正常執行,不過把腳本拿到我製作的遊戲中時,測試時發生問題
說Window_Selectable第50行發生zerodivisionerror
然後內容是這個:
# ● 获取项目的宽度
  #--------------------------------------------------------------------------
  def item_width
    (width - standard_padding * 2 + spacing) / col_max - spacing     ←有問題的部分
  end

請問該怎麼解決?
梦石
0
星屑
644
在线时间
830 小时
注册时间
2016-7-24
回帖
644

开拓者

发表于 2017-3-17 23:34:02 | 显示全部楼层
從錯誤訊息來看除0了吧
你去找一下參數在哪裡定義

点评

不好意思,物品獲得的部分是我搞錯了,現在只剩該如何從選單除去這個功能,改由NPC執行這個問題  发表于 2017-3-19 10:21
參數定義的部分解決了,還有個問題就是我依照範例的語法添加配方,可是合成出來的物品沒有拿到,請問該怎麼處理?  发表于 2017-3-19 10:03
同類中最下面的  发表于 2017-3-18 10:56
看哪邊的參數定義?物品合成腳本還是Window_Selectable?  发表于 2017-3-18 10:24
2016/07/17 加入RPG製作,勿忘初衷!
回复

使用道具 举报

梦石
0
星屑
50
在线时间
292 小时
注册时间
2009-10-30
回帖
18
发表于 2017-3-18 15:13:03 | 显示全部楼层
本帖最后由 graygod 于 2017-3-18 15:14 编辑

依
zerodivisionerror  某值除以 0 時,就會引的異常
那 明顯是  變數col_max 的問題
而  col_max  是定義列  看了本腳本

  1. #--------------------------------------------------------------------------
  2.   # ● 获取列数
  3.   #--------------------------------------------------------------------------
  4.   def col_max
  5.     return $game_party.cook_types_size
  6.   end
复制代码


是用 cook_types_size 由下獲得
[pre lang="ruby"]
#--------------------------------------------------------------------------
  # ● 返回食谱类型数目
  #--------------------------------------------------------------------------
  def cook_types_size
    return @cook_types.size
  end[/pre]

答案出來了   你的  合成品類型  為零


由腳本說明

#添加类型的方法是:
#$game_party.add_cook_type(类别名称,类别介绍, 类别状态-默认false)
#
#举例:
#$game_party.add_cook_type("制药","调配药品", true)

這些你都設了嗎

点评

另外我想把物品合成功能不設在選單,而是像商店一樣要跟NPC講話才能使用(能根據合成道具收錢就更好了)的話,腳本要怎麼修改?  发表于 2017-3-18 16:16
原來要設定那個才能使用啊,謝謝  发表于 2017-3-18 16:14

评分

参与人数 1星屑 +250 收起 理由
RaidenInfinity + 250 认可答案

查看全部评分

回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部