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

Project1

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

[已经过期] 新人请教,如何设计一种【反击】类型的技能

[复制链接]

Lv2.观梦者

梦石
0
星屑
353
在线时间
38 小时
注册时间
2017-7-1
帖子
17
跳转到指定楼层
1
发表于 2017-9-10 16:07:38 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式

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

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

x
请教一下各位了,我想在游戏中做出一种带【反击】效果的技能,目前的思路是这样的:
当角色或者敌人使用【反击】技能时,他会获得一个反击【状态】,而当对方对其攻击或者是使用特定技能时,反击技能就会发挥效果,给与对方伤害或者激发其他技能效果
之前请教了一位朋友,他说类似的技能只能用脚本才能做出来,所以我来拜托各位了

点评

请参考数据库第87号技能伏虎之反击  发表于 2017-9-18 00:08

Lv2.观梦者

梦石
0
星屑
353
在线时间
38 小时
注册时间
2017-7-1
帖子
17
26
 楼主| 发表于 2018-11-6 19:59:10 | 只看该作者
C:\Users\Administrator\Desktop\111
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
353
在线时间
38 小时
注册时间
2017-7-1
帖子
17
25
 楼主| 发表于 2018-11-6 19:58:28 | 只看该作者
本帖最后由 苍月的魔王 于 2018-11-6 19:59 编辑

C:\Users\Administrator\Desktop\111
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
104
在线时间
22 小时
注册时间
2015-8-10
帖子
4
24
发表于 2017-11-10 12:37:23 | 只看该作者
骷髅岛遗老 发表于 2017-11-9 18:20
脚本本身就是这样的……实际上伤害是正常造成的,只是战斗信息只显示吸血 ...

感谢回答。不过能先显示伤害再显示吸血吗。这样其实有些奇怪。。
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2333
在线时间
275 小时
注册时间
2017-7-25
帖子
163
23
发表于 2017-11-9 18:20:17 | 只看该作者
themself 发表于 2017-11-9 17:27
使用中发现角色进行攻击不再显示造成多少伤害,直接显示吸取多少体力。这样是否正常呢? ...

脚本本身就是这样的……实际上伤害是正常造成的,只是战斗信息只显示吸血
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
104
在线时间
22 小时
注册时间
2015-8-10
帖子
4
22
发表于 2017-11-9 17:27:09 | 只看该作者
骷髅岛遗老 发表于 2017-9-18 13:11
脚本在这,设置给你想要的反击状态(不想反的状况还可以设置反伤抗性,虽然我不需要还没用过),搭配技能 ...

使用中发现角色进行攻击不再显示造成多少伤害,直接显示吸取多少体力。这样是否正常呢?
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
120
在线时间
486 小时
注册时间
2007-5-27
帖子
807
21
发表于 2017-9-29 15:55:07 | 只看该作者
骷髅岛遗老 发表于 2017-9-22 18:13
这样是做不出不同技能甚至不同血量使用者打到同一状态目标被进入不同状态的效果的,就算能做到肯定也要弄 ...

反击状态和击晕效果是可以共存的啊哥哥……
完全可以设置多个不同效果的反击状态吧……甚至可以添加全部异常状态然后依靠攻击者身上各自不同的状态抗性达成攻击者被反击时出现不同状态的效果……至于伤害更好办了,攻击者临时加防和不加防还不好弄吗……
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2333
在线时间
275 小时
注册时间
2017-7-25
帖子
163
20
发表于 2017-9-23 00:37:09 | 只看该作者
本帖最后由 骷髅岛遗老 于 2017-9-23 00:48 编辑
苍月的魔王 发表于 2017-9-23 00:05
已经全部改了……但还是没用啊……
def make_damage_value(user, item)
    value = item.damage.eval(u ...


  when 384,384,384                #当使用83\84\85号技能时
            if self.state?(133)           #如果被攻击者处于2号状态(反击状态)
               user.add_state(134)       #攻击者进入26号状态
             end   
这一段全部注释掉,你只要一个技能就应该把多余的都注释掉,重复描述同一个技能程序就懵逼了,我写几段就是考虑你要做一堆技能才预留的
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
353
在线时间
38 小时
注册时间
2017-7-1
帖子
17
19
 楼主| 发表于 2017-9-23 00:05:00 | 只看该作者
骷髅岛遗老 发表于 2017-9-22 13:03
实际用起来大概就是这样的了

已经全部改了……但还是没用啊……
def make_damage_value(user, item)
    value = item.damage.eval(user, self, $game_variables)

   
    if item.is_a?(RPG::Skill)        #这两句貌似是把数据库的技能ID加入item
        case item.id                    #总之定义技能编号好像一定要这两句
        
          when 384                       #当使用80号技能(可设置为怪物的技能)时
            if self.state?(133)           #如果被攻击者处于2号状态(反击状态)
               user.add_state(134)        #攻击者进入2号状态
            end
         
          when 384,384,384                #当使用83\84\85号技能时
            if self.state?(133)           #如果被攻击者处于2号状态(反击状态)
               user.add_state(134)       #攻击者进入26号状态
             end                        #
            
#~          when #技能编号                                                #如果你
#~            if self.state?(#反击状态的编号)                        #想照样添加别的反击效果
#~               user.add_state(#反击给攻击者的状态编号)  #复制这4行贴到后面
#~             end                                                                 #按上面的格式自己填吧

            #添加状态朝这贴

           end  
       end                  #差不多首行每个if对应一个end,case对应一个end
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
353
在线时间
38 小时
注册时间
2017-7-1
帖子
17
18
 楼主| 发表于 2017-9-22 22:16:36 | 只看该作者
不会发图,再试一次
file:///C:/Users/Administrator/Desktop/图片/2017_09_22_22_10.41.bmp
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-10 14:45

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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