找回密码
 点一下
查看: 3554|回复: 39

关于一个用很笨的方法做的致命一击和闪避

[复制链接]
发表于 2011-3-26 01:27:57 | 显示全部楼层 |阅读模式
新手以很笨的方法做了一个以属性判断致命一击几率和闪避的触发(见附件)
发现很多BUG
致命一击:一单致命一击发动成功,就会连续发动致命一击
闪避:无限闪避
到底我的这个触发是哪里出现问题,求解= =
发表于 2011-3-26 03:53:38 | 显示全部楼层
闪避啊 要看怎么模拟了
喂你的图里只有致命一击啊

被攻击事件的话应该不会产生太多矛盾吧 而且这种东西貌似永远不会有同时 总能分出先后 (大概
回复

使用道具 举报

 楼主| 发表于 2011-3-26 08:02:59 | 显示全部楼层
因为我失败了,所以删掉了...
编辑过好了
这种做法做出来的闪避总是出奇的高啊= =
回复

使用道具 举报

发表于 2011-3-26 09:11:29 | 显示全部楼层
除非说你触发器没关闭,不然不会有两次触发,你可以在第一次受到伤害的时候加一条关闭当前触发的动作
回复

使用道具 举报

 楼主| 发表于 2011-3-26 11:55:35 | 显示全部楼层
也就是说,在 被攻击 条件符合执行触发,而触发还没执行完毕的情况下,这条触发不会再执行么?
回复

使用道具 举报

发表于 2011-3-26 12:29:02 | 显示全部楼层
如果你加上一条关闭此触发,那么即使他还没执行完,也不会再执行一遍了
回复

使用道具 举报

 楼主| 发表于 2011-3-26 13:23:25 | 显示全部楼层
那我这条触发不是完全没有作用了么= =
回复

使用道具 举报

发表于 2011-3-26 14:48:03 | 显示全部楼层
我被你闹糊涂了,那么你告诉我你想要什么效果
回复

使用道具 举报

 楼主| 发表于 2011-3-26 15:13:41 | 显示全部楼层
具体的来说就是,英雄的属性值=致命一击或者闪避的几率

最好能提供一下思路
回复

使用道具 举报

发表于 2011-3-26 15:29:30 | 显示全部楼层
那太简单啦,单位受到攻击,给单位属性%的几率得到魔法书,魔法书里装个100%的致命一击或者100%的闪避,1秒后删除,就这样
回复

使用道具 举报

 楼主| 发表于 2011-3-26 15:49:43 | 显示全部楼层
你这个思路跟我的也差不多啊(见附件)= =
只要攻击频率少于1秒依然可行
闪避的话,在这一秒内任何攻击都能闪避了
回复

使用道具 举报

发表于 2011-3-26 16:42:34 | 显示全部楼层
打不开,不知道你什么UI
回复

使用道具 举报

 楼主| 发表于 2011-3-26 16:49:19 | 显示全部楼层
老狼UI= =
贴触发上来好了[trigger]zhiming
    事件
        单位 - 任意单位 被攻击
    条件
        ((攻击单位) 的类型) 等于 圣骑士
    动作
        设置 liliang = ((攻击单位) 的力量值(包括 加成))
        如果所有条件成立则做动作1,否则做动作2
            If - 条件
                (随机整数,最小值: 1 最大值: 100) 小于或等于 liliang
            Then - 动作
                单位 - 删除 致命一击 (无) 从 (攻击单位)
                单位 - 添加 致命一击 (有) 给 (攻击单位)
                触发器 - 开启 zhiming1 <预设>
                触发器 - 关闭 (当前触发)
            Else - 动作
                触发器 - 开启 zhiming2 <预设>
                触发器 - 关闭 (当前触发)
[/trigger][trigger]zhiming1
    事件
        单位 - 任意单位 被攻击
    条件
        ((攻击单位) 的类型) 等于 圣骑士
    动作
        设置 liliang = ((攻击单位) 的力量值(包括 加成))
        如果所有条件成立则做动作1,否则做动作2
            If - 条件
                (随机整数,最小值: 1 最大值: 100) 小于或等于 liliang
            Then - 动作
                触发器 - 开启 zhiming <预设>
                触发器 - 关闭 (当前触发)
            Else - 动作
                单位 - 删除 致命一击 (有) 从 (攻击单位)
                单位 - 添加 致命一击 (无) 给 (攻击单位)
                触发器 - 开启 zhiming <预设>
                触发器 - 关闭 (当前触发)
[/trigger][trigger]zhiming2
    事件
        单位 - 任意单位 被攻击
    条件
        ((攻击单位) 的类型) 等于 圣骑士
    动作
        设置 liliang = ((攻击单位) 的力量值(包括 加成))
        如果所有条件成立则做动作1,否则做动作2
            If - 条件
                (随机整数,最小值: 1 最大值: 100) 小于或等于 liliang
            Then - 动作
                单位 - 删除 致命一击 (无) 从 (攻击单位)
                单位 - 添加 致命一击 (有) 给 (攻击单位)
                触发器 - 开启 zhiming1 <预设>
                触发器 - 关闭 (当前触发)
            Else - 动作
                触发器 - 开启 zhiming <预设>
                触发器 - 关闭 (当前触发)
[/trigger]

其中的致命一击(无)是0%的几率,(有)是100%的几率
zhiming初始打开,zhiming1zhiming2初始不打开
圣骑士添加有致命一击(无)的单位技能
回复

使用道具 举报

 楼主| 发表于 2011-3-26 16:58:45 | 显示全部楼层
[trigger]shanbi
    事件
        单位 - 任意单位 被攻击
    条件
        ((被攻击单位) 的类型) 等于 圣骑士
    动作
        设置 minjie = ((被攻击单位) 的敏捷值(包括 加成))
        如果所有条件成立则做动作1,否则做动作2
            If - 条件
                (随机整数,最小值: 1 最大值: 100) 小于或等于 minjie
            Then - 动作
                单位 - 删除 闪避 (无) 从 (被攻击单位)
                单位 - 添加 闪避 (有) 给 (被攻击单位)
                触发器 - 开启 shanbi1 <预设>
                触发器 - 关闭 (当前触发)
            Else - 动作
                触发器 - 开启 shanbi2 <预设>
                触发器 - 关闭 (当前触发)
[/trigger][trigger]shanbi1
    事件
        单位 - 任意单位 被攻击
    条件
        ((被攻击单位) 的类型) 等于 圣骑士
    动作
        设置 minjie = ((被攻击单位) 的敏捷值(包括 加成))
        如果所有条件成立则做动作1,否则做动作2
            If - 条件
                (随机整数,最小值: 1 最大值: 100) 小于或等于 minjie
            Then - 动作
                触发器 - 开启 shanbi <预设>
                触发器 - 关闭 (当前触发)
            Else - 动作
                单位 - 删除 闪避 (有) 从 (被攻击单位)
                单位 - 添加 闪避 (无) 给 (被攻击单位)
                触发器 - 开启 shanbi <预设>
                触发器 - 关闭 (当前触发)
[/trigger][trigger]shanbi2
    事件
        单位 - 任意单位 被攻击
    条件
        ((被攻击单位) 的类型) 等于 圣骑士
    动作
        设置 minjie = ((被攻击单位) 的敏捷值(包括 加成))
        如果所有条件成立则做动作1,否则做动作2
            If - 条件
                (随机整数,最小值: 1 最大值: 100) 小于或等于 minjie
            Then - 动作
                单位 - 删除 闪避 (无) 从 (被攻击单位)
                单位 - 添加 闪避 (有) 给 (被攻击单位)
                触发器 - 开启 shanbi1 <预设>
                触发器 - 关闭 (当前触发)
            Else - 动作
                触发器 - 开启 shanbi <预设>
                触发器 - 关闭 (当前触发)
[/trigger]
闪避使用了完全一样的原理
其中的闪避(无)是0%的几率,闪避(有)是100%的几率
sanbi初始打开,sanbi1sanbi2初始不打开
圣骑士添加有闪避(无)的单位技能
回复

使用道具 举报

发表于 2011-3-26 18:49:07 | 显示全部楼层
  我勒个砍  原来致命一击是这么做的

           我有见到排泄么 - -

                   就是说

           你有把 100% 的致命切换到 0的致命么
回复

使用道具 举报

 楼主| 发表于 2011-3-26 18:57:28 | 显示全部楼层
UOER大一语中的啊
不过,如果添加了两个一样的技能,到底会造成什么效果?
我研究一下怎么判断zhiming到zhiming1的技能
回复

使用道具 举报

发表于 2011-3-26 20:07:22 | 显示全部楼层
可一用工程升级啊,一个工程升级把0闪避的两个替换成100闪避的两个,再用一个工程升级把0暴击替换成100暴击,这样单位始终只有一个暴击闪避技能,不用担心同一个技能的冲突,不过就是不知道工程升级怎么升级非英雄技能……
回复

使用道具 举报

发表于 2011-3-26 20:41:54 | 显示全部楼层
引用第10楼ffs2328226于2011-03-26 15:49发表的 :
你这个思路跟我的也差不多啊(见附件)= =
只要攻击频率少于1秒依然可行
闪避的话,在这一秒内任何攻击都能闪避了

用添加技能的方法能避免这个?  不太可能吧
回复

使用道具 举报

 楼主| 发表于 2011-3-26 22:28:13 | 显示全部楼层
感谢LO提供的灵感,得以改良
问题是改良后问题又出来了= =
[trigger]zhimingyiji
    事件
        单位 - 任意单位 被攻击
    条件
        ((攻击单位) 的类型) 等于 圣骑士
    动作
        设置 liliang = ((攻击单位) 的力量值(包括 加成))
        如果所有条件成立则做动作1,否则做动作2
            If - 条件
                (随机整数,最小值: 1 最大值: 100) 小于或等于 liliang
            Then - 动作
                如果所有条件成立则做动作1,否则做动作2
                    If - 条件
                        ZIMJ 等于 0
                    Then - 动作
                        单位 - 删除 致命一击 (无) 从 (攻击单位)
                        单位 - 添加 致命一击 (有) 给 (攻击单位)
                    Else - 动作
                设置 ZIMJ = 1
            Else - 动作
                如果所有条件成立则做动作1,否则做动作2
                    If - 条件
                        ZIMJ 等于 1
                    Then - 动作
                        单位 - 删除 致命一击 (有) 从 (攻击单位)
                        单位 - 添加 致命一击 (无) 给 (攻击单位)
                        设置 ZIMJ = 0
                    Else - 动作
[/trigger]
其中的致命一击(无)是0%的几率,(有)是100%的几率
圣骑士添加有致命一击(无)的单位技能
ZIMJ默认为0

只有在连续 (随机整数,最小值: 1 最大值: 100) 小于或等于 liliang 的情况下才会发动致命一击,为什么呢?
回复

使用道具 举报

发表于 2011-3-27 06:53:37 | 显示全部楼层
什么叫只有在连续 (随机整数,最小值: 1 最大值: 100) 小于或等于 liliang 的情况下才会发动致命一击

你条件不就是设定的随力量发动吗
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-6-26 10:51 , Processed in 0.053184 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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