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

Project1

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

[已经过期] 自制的金钱系统出现TypeError

[复制链接]

Lv1.梦旅人

矿工

梦石
0
星屑
134
在线时间
898 小时
注册时间
2012-10-5
帖子
1535
跳转到指定楼层
1
发表于 2013-10-13 15:15:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 876加几 于 2013-10-13 17:00 编辑

因为我觉得默认的金钱系统不公平:只有主角有钱,其他角色都是穷光蛋,所以自制了个公平的金钱系统。
但是让它公平吧,脚本又出问题了。
脚本:@Person
  1. #==============================================================================
  2. # ■ Game_Money
  3. #------------------------------------------------------------------------------
  4. #  处理金钱的类。本类的实例请参考$game_money。
  5. #==============================================================================
  6. class Game_Money
  7.   #--------------------------------------------------------------------------
  8.   # ● 定义实例变量
  9.   #--------------------------------------------------------------------------
  10.   attr_accessor :gold # 保存各角色金钱的数组
  11.   #--------------------------------------------------------------------------
  12.   # ● 初始化对像
  13.   #--------------------------------------------------------------------------
  14.   def initialize
  15.     [url=home.php?mod=space&uid=236945]@gold[/url] = [500, 1000, 750, 10000]
  16.   end
  17. end
复制代码
  1. #==============================================================================
  2. # ■ Window_MenuStatus
  3. #------------------------------------------------------------------------------
  4. #  显示菜单画面和同伴状态的窗口。
  5. #==============================================================================

  6. class Window_MenuStatus < Window_Selectable
  7.   #--------------------------------------------------------------------------
  8.   # ● 初始化目标
  9.   #--------------------------------------------------------------------------
  10.   def initialize
  11.     super(0, 0, 640, 480 - 64)
  12.     self.contents = Bitmap.new(width - 32, height - 32)
  13.     refresh
  14.     self.active = false
  15.     self.index = -1
  16.   end
  17.   #--------------------------------------------------------------------------
  18.   # ● 刷新
  19.   #--------------------------------------------------------------------------
  20.   def refresh
  21.     self.contents.clear
  22.     @item_max = $game_party.actors.size
  23.     for i in 0...$game_party.actors.size
  24.       x = 64
  25.       y = i * 116 + 64
  26.       actor = $game_party.actors[i]
  27.       draw_actor_graphic(actor, x - 20, y + 80)
  28.       draw_actor_name(actor, x + 44, y + 32)
  29.       self.contents.font.color = system_color
  30.       self.contents.draw_text(198 - 40, y + 64, 40, 32, $data_system.words.gold)
  31.       self.contents.font.color = normal_color
  32.       self.contents.draw_text(x + 44, y + 64, 32, 32, $game_money.gold[actor].to_s)
  33.       #draw_actor_class(actor, x + 150, y)
  34.       #draw_actor_level(actor, x + 44, y + 32)
  35.       #draw_actor_state(actor, x + 250, y)
  36.       #draw_actor_exp(actor, x + 44, y + 64)
  37.       #draw_actor_hp(actor, x + 185, y + 32)
  38.       #draw_actor_sp(actor, x + 185, y + 64)
  39.     end
  40.   end
  41.   #--------------------------------------------------------------------------
  42.   # ● 刷新光标矩形
  43.   #--------------------------------------------------------------------------
  44.   def update_cursor_rect
  45.     if @index < 0
  46.       self.cursor_rect.empty
  47.     else
  48.       self.cursor_rect.set(0, @index * 116 + 64, 198, 96)
  49.       refresh
  50.       x = 64 + 189
  51.       y = 64
  52.       actor = $game_party.actors[@index]
  53.       draw_actor_half(actor, x + 96, 480 - 300 - 64)
  54.       draw_actor_head(actor, x, y)
  55.       draw_actor_name(actor, x + 48, y)
  56.       draw_actor_class(actor, x + 148, y)
  57.       draw_actor_level_qq(actor, x, y + 32)
  58.       draw_actor_state(actor, x, y + 64)
  59.       draw_actor_exp(actor, x, y + 96)
  60.       draw_actor_hp(actor, x, y + 128)
  61.       draw_actor_sp(actor, x, y + 160)
  62.       draw_actor_mor(actor, x, y + 192)
  63.       draw_actor_fullname(actor, x, y + 200)
  64.     end
  65.   end
  66. end
复制代码
只能管第2个脚本的30~33行,其它是没有问题的。
报错文字:
  1. 脚本"Window_MenuStatus"的第31行出现了TypeError:
  2. cannot convert Game_Actor into integer
复制代码
  

点评

@myownroc 以前@过Person,结果还是出现了URL。  发表于 2013-10-13 16:58
发代码时,事先@Person,即可避免代码内出现url  发表于 2013-10-13 16:09
呃,发糖贴好冷清呀!

Lv1.梦旅人

薄凉看客

梦石
0
星屑
50
在线时间
1269 小时
注册时间
2010-6-20
帖子
1316
2
发表于 2013-10-13 15:54:19 | 只看该作者
本帖最后由 恋′挂机 于 2013-10-13 16:05 编辑

那个金钱不是某一角色的!!!你对这个问题有曲解。
年纪不大能理解成这样还算不错了。

在Game_Actor
定义实例变量里加上
attr_accessor :gold
再初始化
@gold = 100

就这么简单而已,
具体方法:

# 查看角色的金钱
$game_actors[1].gold
# 金钱+
$game_actors[1].gold += 500
   

你脚本传的参数很有问题!!!!!!!
怎么把角色传过去了?

点评

是转换时出错了。  发表于 2013-10-13 15:59

评分

参与人数 1星屑 +30 收起 理由
myownroc + 30 塞糖

查看全部评分

回复 支持 反对

使用道具 举报

头像被屏蔽

Lv2.观梦者 (禁止发言)

梦石
0
星屑
653
在线时间
3774 小时
注册时间
2011-2-26
帖子
1839

开拓者

3
发表于 2013-10-14 03:58:38 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-9-30 01:35

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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