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

Project1

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

[已经解决] 关于回复物品的设定

 关闭 [复制链接]

Lv2.观梦者

梦石
0
星屑
462
在线时间
1411 小时
注册时间
2010-9-23
帖子
557
跳转到指定楼层
1
发表于 2011-7-15 13:11:18 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
本帖最后由 黑崎一护 于 2011-7-15 15:47 编辑

想设定主角使用回复物品A时能回复100%,而其他队友使用回复物品A是只能回复50%,其余回复物品则没有此效果。

例如:物品B的恢复效果是所有人都有一样的...

需要使用公共事件么?还是需要使用脚本呢?

Lv2.观梦者

梦石
0
星屑
462
在线时间
1411 小时
注册时间
2010-9-23
帖子
557
11
 楼主| 发表于 2011-7-16 14:46:41 | 只看该作者
本帖最后由 黑崎一护 于 2011-7-16 14:54 编辑
忧雪の伤 发表于 2011-7-16 14:45
恩,是这样修改。


谢谢你,我明白了。


回复

使用道具 举报

Lv2.观梦者

虚構歪曲

梦石
0
星屑
364
在线时间
1198 小时
注册时间
2010-12-18
帖子
3928

贵宾

10
发表于 2011-7-16 14:45:14 | 只看该作者
黑崎一护 发表于 2011-7-16 14:42
请问使用第二个脚本,使用方法是修改第四行么?
如:ItemAmplitude = { [1, 5] => 2, [3, 8] => 1.5 }
...

恩,是这样修改。

点评

刚刚用战斗测试了,感觉好棒啊,抱一个~!  发表于 2011-7-16 14:54
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
462
在线时间
1411 小时
注册时间
2010-9-23
帖子
557
9
 楼主| 发表于 2011-7-16 14:42:29 | 只看该作者
忧雪の伤 发表于 2011-7-15 17:42


这个不是很好……



请问使用第二个脚本,使用方法是修改第四行么?
如:ItemAmplitude = { [1, 5] => 2, [3, 8] => 1.5 }
改为:ItemAmplitude = { [2, 6] => 2, [1, 7] => 0.5 }

该脚本的插入也是插入Game_Actor中么?

点评

不是,在▼ 外来RGSS插件脚本那里。  发表于 2011-7-16 14:44
回复

使用道具 举报

Lv2.观梦者

虚構歪曲

梦石
0
星屑
364
在线时间
1198 小时
注册时间
2010-12-18
帖子
3928

贵宾

8
发表于 2011-7-15 17:42:06 | 只看该作者
本帖最后由 忧雪の伤 于 2011-7-15 17:55 编辑

  1. class Game_Actor
  2.   alias _calc_hp_recovery calc_hp_recovery unless $@
  3.   def calc_hp_recovery(*args)
  4.     case self.id
  5.       when 5 # 有加成的角色的编号。
  6.         case args[1].id
  7.         when 10 # 有加成的物品的编号。
  8.           return _calc_hp_recovery(*args) * 2 # 加成的幅度。
  9.         else
  10.           _calc_hp_recovery(*args)
  11.         end
  12.       else
  13.       _calc_hp_recovery(*args)
  14.     end
  15.   end
  16. end
复制代码


这个不是很好……

  1. class Game_Actor # 角色物件。
  2.   # 定义常量。可以自己添加更多的单元。参见帮助文件的哈希说明。
  3.   # 格式是:[角色编号, 物品编号] => 威力倍数 。
  4.   ItemAmplitude = { [1, 5] => 2, [3, 8] => 1.5 }
  5.   alias calc_itemamplitude calc_hp_recovery unless $@ # 别名
  6.   def calc_hp_recovery(*args) # 修改方法
  7.     # 根据是否存在,决定处理方法。
  8.     unless ItemAmplitude.key?([self.id, args[1].id])
  9.       return calc_itemamplitude(*args)
  10.     else
  11.       return calc_itemamplitude(*args) * ItemAmplitude[[self.id, args[1].id]]
  12.     end
  13.   end
  14. end
复制代码


这个还行……


反正,有问题再问我。
回复

使用道具 举报

乌有君
7
乌有君  发表于 2011-7-15 16:08:16
黑崎一护 发表于 2011-7-15 15:58
我觉得可能是我的表达能力太差了,我应该补充一下:问题里面的产生效果只限于某种物品针对某个角色。

感 ...

actor属性建哈希什么的我才不知道呢
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
462
在线时间
1411 小时
注册时间
2010-9-23
帖子
557
6
 楼主| 发表于 2011-7-15 15:58:23 | 只看该作者
仲秋启明 发表于 2011-7-15 15:14
Game_Actor中插入意为4号角色恢复的HP是10倍

我觉得可能是我的表达能力太差了,我应该补充一下:问题里面的产生效果只限于某种物品针对某个角色。

感觉上打了{药物知识}的勾,其它物品也会跟着产生这种效果...
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
114 小时
注册时间
2011-3-29
帖子
60
5
发表于 2011-7-15 15:37:44 | 只看该作者
改主角属性时轻轻地点击一下下药物知识
回复

使用道具 举报

Lv4.逐梦者

醉啸 长风万里

梦石
0
星屑
6197
在线时间
6595 小时
注册时间
2007-12-16
帖子
4501

贵宾

4
发表于 2011-7-15 15:14:46 | 只看该作者
Game_Actor中插入
  1.   #--------------------------------------------------------------------------
  2.   # ● 计算使用物品的体力回复量
  3.   #--------------------------------------------------------------------------
  4.   def calc_hp_recovery(user, item)
  5.     result = maxhp * item.hp_recovery_rate / 100 + item.hp_recovery
  6.     result *= 2 if user.pharmacology    # 「药物知识」效果加成2倍
  7.     result *= 10 if @actor_id ==4
  8.     return result
  9.   end
复制代码
意为4号角色恢复的HP是10倍

还在龟速填坑中
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
462
在线时间
1411 小时
注册时间
2010-9-23
帖子
557
3
 楼主| 发表于 2011-7-15 13:28:54 | 只看该作者
Cherry 发表于 2011-7-15 13:15
你可以在回复100%HP的角色数据库中{药物知识}打钩
设置药品A回复50%HP,但说明中要说“回复100%HP" ...

在角色数据库中{药物知识}打钩的话,其他回复物品使用时不会受影响么?

看了{药物知识}的解释是:让本角色在同伴身上使用回复物品是效果加倍。
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-11 04:15

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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