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

Project1

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

[已经过期] 我参考范例做的物品大图脚本

 关闭 [复制链接]

Lv2.观梦者

梦石
0
星屑
558
在线时间
256 小时
注册时间
2010-8-25
帖子
371
跳转到指定楼层
1
发表于 2011-1-2 17:12:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 zxc3824 于 2011-1-15 12:42 编辑

这是我参考着做的,但是进入游戏以后发生错误,请高手帮忙解决一下,错误部分用红字体标出
  1. #==============================================================================
  2. # 本脚本来自[url]www.66rpg.com[/url],转载和使用请保留此信息 #==============================================================================


  3. module RPG
  4.   class Weapon
  5.     def name
  6.       name = @name.split(/@/)[0]
  7.       return name != nil ? name : ''
  8.     end
  9.     def pic_name
  10.       pic_name = @name.split(/@/)[1]
  11.       return pic_name != nil ? pic_name : ""
  12.     end
  13.   end
  14.   class Armor
  15.     def name
  16.       name = @name.split(/@/)[0]
  17.       return name != nil ? name : ''
  18.     end
  19.     def pic_name
  20.       pic_name = @name.split(/@/)[1]
  21.       return pic_name != nil ? pic_name : ""
  22.     end
  23.   end
  24. end
  25. #==============================================================================
  26. # ■ Window_Equip
  27. #------------------------------------------------------------------------------
  28. #  普通物品大图标显示。
  29. #==============================================================================

  30. class Window_Item < Window_Base
  31.   #--------------------------------------------------------------------------
  32.   # ● 初始化对像
  33.   #--------------------------------------------------------------------------
  34.   def initialize
  35.     super(0, 0, 640, 480)
  36.     @item = nil
  37.     self.contents = Bitmap.new(width - 32, height - 32)
  38.     self.opacity = 0
  39.     refresh
  40.   end
  41.   #--------------------------------------------------------------------------
  42.   # ● 刷新
  43.   #--------------------------------------------------------------------------
  44.   def refresh
  45.     self.contents.clear
  46.     if @item != nil
  47.       bitmap = RPG::Cache.picture(@item.pic_name)
  48.       pic_rect = Rect.new(0, 0, bitmap.width, bitmap.height)
  49.       self.contents.blt(0, 0, bitmap, pic_rect)
  50.     end
  51.   end
  52.   def set_item(item)
  53.     @item = item
  54.   end
  55. end
  56. #==============================================================================
  57. # ■ Scene_Item
  58. #------------------------------------------------------------------------------
  59. #  处理物品画面的类。
  60. #==============================================================================

  61. class Scene_Item
  62.   #--------------------------------------------------------------------------
  63.   # ● 主处理
  64.   #--------------------------------------------------------------------------
  65.   def main
  66.     # 生成帮助窗口、物品窗口
  67.     @help_window = Window_Help2.new
  68.     @item_window = Window_Item.new
  69.     # 关联帮助窗口
  70.     @item_window.help_window = @help_window  [color=Red]就是这里,系统说我未定义[/color]
  71.     # 生成目标窗口 (设置为不可见・不活动)
  72.     @target_window = Window_Target.new
  73.     @target_window.visible = false
  74.     @target_window.active = false
  75.     # 执行过度
  76.     Graphics.transition
  77.     # 主循环
  78.     loop do
  79.       # 刷新游戏画面
  80.       Graphics.update
  81.       # 刷新输入信息
  82.       Input.update
  83.       # 刷新画面
  84.       update
  85.       # 如果画面切换就中断循环
  86.       if $scene != self
  87.         break
  88.       end
  89.     end
  90.     # 装备过渡
  91.     Graphics.freeze
  92.     # 释放窗口
  93.     @help_window.dispose
  94.     @item_window.dispose
  95.     @target_window.dispose
  96.   end
  97.   #--------------------------------------------------------------------------
  98.   # ● 刷新画面
  99.   #--------------------------------------------------------------------------
  100.   def update
  101.     # 刷新窗口
  102.     @help_window.update
  103.     @item_window.update
  104.     @target_window.update
  105.     # 物品窗口被激活的情况下: 调用 update_item
  106.     if @item_window.active
  107.       update_item
  108.       return
  109.     end
  110.     # 目标窗口被激活的情况下: 调用 update_target
  111.     if @target_window.active
  112.       update_target
  113.       return
  114.     end
  115.   end
  116. end
复制代码
这是工程

物品大图工程.rar (1.16 MB, 下载次数: 77)

Lv3.寻梦者

梦石
0
星屑
1743
在线时间
485 小时
注册时间
2006-1-7
帖子
1073
2
发表于 2011-1-2 20:33:31 | 只看该作者
Window_Item 有调用 help_window 吗?
初从文,三年不中;后习武,校场发一矢,中鼓吏,逐之出;遂学医,有所成。自撰一良方,服之,卒。
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
558
在线时间
256 小时
注册时间
2010-8-25
帖子
371
3
 楼主| 发表于 2011-1-4 21:14:17 | 只看该作者
回复 白鬼 的帖子

默认脚本那里抄过来的
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1743
在线时间
485 小时
注册时间
2006-1-7
帖子
1073
4
发表于 2011-1-4 21:57:12 | 只看该作者
回复 zxc3824 的帖子

我想我大概知道了。
Window_Item 有调用 help_window
但是并没有给help_window 定义
而装备大图的时候调用了Window_Item,却也没有定义help_window
于是出现了这个错误
解决方法:最好把你的工程拿来让大家帮你看看。因为这段脚本是没什么问题的。
让大家看看是哪里调用了Window_Item 却没有定义help_window
初从文,三年不中;后习武,校场发一矢,中鼓吏,逐之出;遂学医,有所成。自撰一良方,服之,卒。
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7981
在线时间
1183 小时
注册时间
2007-7-29
帖子
2055
5
发表于 2011-1-7 00:44:55 | 只看该作者
其实是你得window_item是继承window_base的父类,window_base未定义help_window,window_selectable才有。

点评

就好像一道食谱需要用油,但是家里没有油。不过食谱并不会出错。但是你在调用食谱“打算照着做”的时候,就肯定会出错了。  发表于 2011-1-7 02:08
window_item并不直接被调用,所以这样写进去是不会出错的。但是调用window_item的时候没有定义调用help_window。  发表于 2011-1-7 02:07
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
558
在线时间
256 小时
注册时间
2010-8-25
帖子
371
6
 楼主| 发表于 2011-1-7 12:28:40 | 只看该作者
回复 enghao_lim 的帖子

那我将selectable里面的help_window复制到window_base可不可以?

现在我没时间继续研究,所以就问各位高手和大侠
回复 支持 反对

使用道具 举报

Lv1.梦旅人

赤瞳

梦石
0
星屑
50
在线时间
132 小时
注册时间
2010-11-28
帖子
515
7
发表于 2011-1-8 18:56:58 | 只看该作者
不用,你把Window_Item < Window_Base
这句的Window_Base换成Window_Selectable就好了...

点评

对了,如果还是有错,请把工程弄上来,看脚本很累的~~  发表于 2011-1-8 18:57
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
558
在线时间
256 小时
注册时间
2010-8-25
帖子
371
8
 楼主| 发表于 2011-1-9 20:29:20 | 只看该作者
回复 银·乌尔 的帖子

还是有错啊,定义.............


zxc3824于2011-1-15 12:43补充以下内容:
工程已上,欢迎指教

点评

那就工程吧~~  发表于 2011-1-9 20:35
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-24 16:09

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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