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

Project1

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

如何把临时存放的角色特技的变量再代回来?

 关闭 [复制链接]

Lv4.逐梦者

梦石
3
星屑
6420
在线时间
1131 小时
注册时间
2007-12-26
帖子
2402
跳转到指定楼层
1
发表于 2008-4-21 18:40:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
变身前把角色当前学会的特技代入一个变量如下:
$temp_skills = $game_actors[1].skills


然后让该角色遗忘所有特技,添加变身后的特技:
for i in 1..130
$game_actors[1].forget_skill(i)
end


最后变身完毕恢复原样,如何让该角色学回原有的特技,让原来的 $temp_skills 代回来呢?
版务信息:本贴由楼主自主结贴~
囡囚囨囚囨図囨囧
头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-2-6
帖子
58
2
发表于 2008-4-21 19:01:28 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
3
星屑
6420
在线时间
1131 小时
注册时间
2007-12-26
帖子
2402
3
 楼主| 发表于 2008-4-21 19:33:33 | 只看该作者
我测试的时候做了两个事件,事件1是暂存当前特技并且遗忘全部特技的脚本:
$temp_skills = $game_actors[1].skills
for i in 1..81
$game_actors[1].forget_skill(i)
end

事件2是学回以前的特技的脚本:
for i in $temp_skills
$game_actors[1].learn_skill(i)
end


然后我测试游戏,先点击事件1再点击事件2,结果遗忘的特技还是没有学回来
囡囚囨囚囨図囨囧
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
3
星屑
6420
在线时间
1131 小时
注册时间
2007-12-26
帖子
2402
4
 楼主| 发表于 2008-4-21 21:49:13 | 只看该作者
在Game_Actor脚本里把 attr_reader :skills改成attr_accessor :skills 也没用啊,遗忘了的特技就学不回来了
囡囚囨囚囨図囨囧
回复 支持 反对

使用道具 举报

Lv1.梦旅人

风之塞尔达

梦石
0
星屑
50
在线时间
57 小时
注册时间
2005-10-22
帖子
2492

贵宾

5
发表于 2008-4-21 21:56:12 | 只看该作者
不是没有学回来   是这样只给数组赋值根本就学不回来
当时LZ发那这保存特技的贴时, 我就有回过
"直接给变量赋值数组是值引用吧    这样做对保持原数值无效吧?  好歹也要记录一份拷贝
"
原来那个贴的答案本身不够正确

从ruby的源代码可以看出, 非基本值类型的变量(虽然ruby没有), 赋值基本上都是引用,
因此做拷贝时, 还是老老实实的一个个赋值,或者用clone() 不要直接用等号
在程序里延续塞尔达的传说, 在画板上勾勒塞尔达的轮廓!!
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
3
星屑
6420
在线时间
1131 小时
注册时间
2007-12-26
帖子
2402
6
 楼主| 发表于 2008-4-21 22:00:53 | 只看该作者
具体不知道怎么拷贝??赋值??请教请教。。。
囡囚囨囚囨図囨囧
回复 支持 反对

使用道具 举报

Lv1.梦旅人

风之塞尔达

梦石
0
星屑
50
在线时间
57 小时
注册时间
2005-10-22
帖子
2492

贵宾

7
发表于 2008-4-21 22:23:57 | 只看该作者
$temp_skills = $game_actors[1].skills.clone
或者 $temp_skills = Array.new($game_actors[1].skills.size)
for i in $game_actors[1].skills.size
  $temp_skills = $game_actors[1].skills
end

系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
在程序里延续塞尔达的传说, 在画板上勾勒塞尔达的轮廓!!
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
3
星屑
6420
在线时间
1131 小时
注册时间
2007-12-26
帖子
2402
8
 楼主| 发表于 2008-4-21 22:27:21 | 只看该作者
多谢了!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-28 19:01

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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