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

Project1

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

[已经解决] 掉落物品的问题(已经解决)

[复制链接]

Lv3.寻梦者

梦石
0
星屑
2180
在线时间
1011 小时
注册时间
2015-10-17
帖子
1285
跳转到指定楼层
1
发表于 2017-5-15 22:42:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 fjm 于 2017-5-16 14:56 编辑

当某个开关打开,敌人才会掉落几号武器或装备(比如说数据库里1,2,3号武器),不然的话就算设定掉落也不会掉,这个可以实现吗,知道的告诉下,谢谢

Lv3.寻梦者

梦石
0
星屑
3574
在线时间
2338 小时
注册时间
2015-8-25
帖子
960

开拓者

2
发表于 2017-5-15 22:59:23 | 只看该作者
本帖最后由 七重 于 2017-5-15 23:02 编辑

制作两个外观一样,能力一样,掉落物品不同的敌人。

然后当开关打开的时候。。。你懂的。。

--
追记:
啊 莫非你是想做假如在战斗中做出特殊行为之后,就会掉落某种物品的效果?

不过如果就算是这样,只要在战斗处理之后加个当开关打开之后一定几率得到某个物品之类的处理也是可以的。

点评

数据库很难用完吧。。不过楼下给出的脚本确实是很便利,感觉还能额外做出各种花样。。  发表于 2017-5-16 13:10
fjm
不过要是这样的敌人多了,会占用很多数据库里的空间  发表于 2017-5-16 09:03
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
878
在线时间
576 小时
注册时间
2010-6-26
帖子
793
3
发表于 2017-5-16 09:01:08 | 只看该作者
如果只是某个特定BOSS的的话可以在战斗后用事件做出来得到物品的效果。
要是普通的遇敌战斗就不会了......

点评

fjm
最好是普通遇敌也有这种效果的  发表于 2017-5-16 09:03
回复 支持 反对

使用道具 举报

Lv6.析梦学徒

老鹰

梦石
40
星屑
34725
在线时间
6740 小时
注册时间
2012-5-26
帖子
3259

极短24评委极短23参与极短22参与极短21评委老司机慢点开短篇十吟唱者组别冠军开拓者剧作品鉴家

4
发表于 2017-5-16 10:40:40 | 只看该作者
  1. #==============================================================================
  2. # ■ 敌人追加物品掉落  by 老鹰
  3. #------------------------------------------------------------------------------
  4. #  - 新增敌人的额外物品掉落,可带触发条件
  5. #   - 在敌人栏备注内填入 (可用空格或逗号分隔内部各项)(可重复填入多行)
  6. #     <ex drop: 物品类型id 物品id 掉落概率分子 掉落概率分母 出现条件>
  7. #       物品类型id: 1 - 物品  2 - 武器  3 - 护甲 (此外的值均会导致无效)
  8. #       物品id: 对应类型的数据库中物品的id号
  9. #       掉落概率分子、掉落概率分母: 物品的掉落概率为 分子 / 分母
  10. #       出现条件(可选):当字符串被eval后返回的值为真时,允许这个物品掉落
  11. #   - 举例:
  12. #      <ex drop: 1 1 1 2>
  13. #         - 以 1/2的概率 追加掉落 1号物品
  14. #      <ex drop: 2,10,2,5,$game_switches[1]>
  15. #         - 当1号开关开启时,以 2/5的概率 追加掉落 10号武器
  16. #      <ex drop: 3 1,1 1,$game_variables[1] > 5>
  17. #         - 当1号变量大于5时,一定 追加掉落 1号护甲
  18. #   - 实质:在战斗结束统计敌人掉落时,追加读取敌人数据库的note栏并追加掉落
  19. #==============================================================================

  20. class Game_Enemy < Game_Battler
  21.   #--------------------------------------------------------------------------
  22.   # ● 生成物品数组
  23.   #--------------------------------------------------------------------------
  24.   alias eagle_ex_drop_make_drop_items make_drop_items
  25.   def make_drop_items
  26.     array = eagle_ex_drop_make_drop_items
  27.     array += make_extra_drop_items
  28.     return array
  29.   end
  30.   #--------------------------------------------------------------------------
  31.   # ● 生成额外物品数组
  32.   #--------------------------------------------------------------------------
  33.   def make_extra_drop_items
  34.     array = []
  35.     enemy.note.split(/[\r\n]+/).each do |line|
  36.       case line
  37.       when /<ex drop:[ ,]*(\d+)[ ,]*(\d+)[ ,]*(\d+)[ ,]*(\d+)[ ,]*(.*)>/
  38.         cond = $5.to_s
  39.         next if (cond != "" && eval(cond) == false)
  40.         item_kind = $1.to_i; item_id = $2.to_i
  41.         prob = $3.to_i * 1.0 / $4.to_i * drop_item_rate
  42.         array.push(item_object(item_kind, item_id)) if rand < prob
  43.       end
  44.     end
  45.     return array
  46.   end
  47. end
复制代码

点评

fjm
非常感谢,这个真是太棒了  发表于 2017-5-16 13:16

评分

参与人数 1梦石 +1 收起 理由
RaidenInfinity + 1 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3730
在线时间
1176 小时
注册时间
2016-8-9
帖子
2395

开拓者

5
发表于 2017-5-16 16:43:18 | 只看该作者
其实变量能做很多事情
酸酸甜甜就④哇噢
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-17 08:40

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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