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

Project1

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

[已经解决] features_set是一个只读吗?

[复制链接]

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

跳转到指定楼层
1
发表于 2015-3-14 13:53:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x

  1.   def skill_type_cover_add(stype_id)
  2.     features_set(FEATURE_STYPE_COVER).push(stype_id)
  3.   end
  4.   def cover_skill_types
  5.     features_set(FEATURE_STYPE_COVER)
  6.   end
复制代码
参考add和seal改了一段之后没找到修改办法然后用了push,依然无效···

点评

skill_type_cover_add 是一个只读吗  发表于 2015-3-14 14:13

评分

参与人数 1星屑 +6 收起 理由
我是大仙 + 6 无理取闹

查看全部评分

[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2208
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

2
发表于 2015-3-14 14:10:32 | 只看该作者
features_set 是一个方法

# --- 防止追问专用分割线 --- #
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3298
在线时间
1120 小时
注册时间
2009-4-15
帖子
815
3
发表于 2015-3-14 16:47:04 | 只看该作者
是那个想通过features_set来控制添加、删除技能类型?

点评

因为感觉中了一个沉默后技能类型就少一个会非常奇怪所以想换别的方式···结果features不能push0.0  发表于 2015-3-14 16:59
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
135
在线时间
450 小时
注册时间
2015-2-25
帖子
365
4
发表于 2015-3-14 18:11:42 手机端发表。 | 只看该作者
本帖最后由 howhow1314 于 2015-3-14 19:52 编辑

$game_actors[1].class.features.push(RPG::BaseItem::Feature.new(41,x))
大概是這樣。。電腦不在

点评

另建的话问题不大。如果直接改内建的数据库的话,会有不能存档的问题,可能还有一些难以预料的副作用  发表于 2015-3-14 21:20
*是沒發生問題  发表于 2015-3-14 21:17
喔喔...不過我之前已經自己找到方法解決了(就是我這帖回覆的)...不過因為我的遊戲本來就有特別需要要另建CLASS的數據庫,所以剛好發生沒問題  发表于 2015-3-14 21:17
一般是建议重定义方法的。可以参考我刚刚对你另一个问题的回答  发表于 2015-3-14 21:05
會這樣喔... 那如果新建一個數組來當class的數據庫,那應該就沒問題了吧?  发表于 2015-3-14 21:01
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

5
 楼主| 发表于 2015-3-14 19:21:52 | 只看该作者
howhow1314 发表于 2015-3-14 01:11
$game_actors[1].class.features.push(RPG::Baseitem::Feature.new(41,x))
大概是這樣。。電腦不在 ...

能push但是不能delete···
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
135
在线时间
450 小时
注册时间
2015-2-25
帖子
365
6
发表于 2015-3-14 20:11:25 | 只看该作者
本帖最后由 howhow1314 于 2015-3-14 20:13 编辑
chd114 发表于 2015-3-14 19:21
能push但是不能delete···


你delete(RPG::BaseItem::Feature.new(41,x))當然沒用...   #話說好像要Item才行,剛打錯item了
RPG::BaseItem::Feature.new(41,x)是個新的Feature,不是原有的某個參數一模一樣的Feature..
除非你
  1. a = RPG::BaseItem::Feature.new(41,x)
  2. $game_actors[1].class.features.push(a)
复制代码
這樣可以
  1. $game_actors[1].class.features.delete(a)
复制代码
...............
如果你要delete的話其中一個方法是找出$game_actors[1].class.features裡code=41,data_id=x的Feature來delete..
RUBY 代码复制
  1. $game_actors[1].class.features.each do |i|
  2.   if i.code  == 41 and i.data_id == x then
  3.     a.delete(i)
  4.   end
  5. end

這樣...(不是很熟遍歷的函數..不知道有沒有更簡單的寫法...記得見過有個帶花括號的忘了是怎樣的{:2_276:} )

点评

喔喔謝謝...另外a是$game_actors[1].class.features..  发表于 2015-3-14 20:53
delete_if  发表于 2015-3-14 20:32
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

7
 楼主| 发表于 2015-3-14 20:31:26 | 只看该作者
howhow1314 发表于 2015-3-14 03:11
你delete(RPG::BaseItem::Feature.new(41,x))當然沒用...   #話說好像要Item才行,剛打錯item了
RPG::Base ...

不是在原来那个里面添加吗···那就是说不管数据库怎么设置的,一定要用脚本push过才能被删掉?
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
135
在线时间
450 小时
注册时间
2015-2-25
帖子
365
8
发表于 2015-3-14 20:50:45 | 只看该作者
本帖最后由 howhow1314 于 2015-3-14 20:51 编辑
chd114 发表于 2015-3-14 20:31
不是在原来那个里面添加吗···那就是说不管数据库怎么设置的,一定要用脚本push过才能被删掉? ...


RUBY 代码复制
  1. $game_actors[1].class.features.each do |i|
  2.   $game_actors[1].class.features.each.delete(i) if  i.code  == 41 and i.data_id == x
  3. end

這樣不用push過才能delete
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2208
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

9
发表于 2015-3-14 20:56:09 | 只看该作者
howhow1314 发表于 2015-3-14 20:50
$game_actors[1].class.features.each do |i|
  $game_actors[1].class.features.each.delete(i) if  i.c ...


用 each 迭代时不要对数组做出修改。更好的做法是 delete_if。

RUBY 代码复制
  1. $game_actors[1].class.features.delete_if do |i|
  2.   i.code == 41 && i.data_id == x
  3. end


但是,这个更好只是针对数组操作而言。实际上你还是不应该去操作数据库!!!再说一遍,这样会出问题的!
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

10
 楼主| 发表于 2015-3-14 22:12:24 | 只看该作者
howhow1314 发表于 2015-3-14 03:50
$game_actors[1].class.features.each do |i|
  $game_actors[1].class.features.each.delete(i) if  i.c ...

唔···那VA里面自带的features_set(FEATURE_STYPE_ADD)是在什么时候改变的呢···表示全局搜索没有找到···
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-15 23:04

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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