找回密码
 点一下
查看: 1619|回复: 12

已学习的技能数量,怎么判断?

[复制链接]
发表于 2011-6-27 16:25:31 | 显示全部楼层 |阅读模式
想判断单位已经学到了几个技能,怎么做?(想做天赋系统,打个比方:天赋中有20个技能,只能学习15个。)
附带一个需求的问题:
学习技能的所需条件,只能是1个吗?我想同时满足多个条件才能学习该技能,怎么做?
发表于 2011-6-27 16:47:28 | 显示全部楼层
只能设置一个需求,但是需求可以复合成很复杂的情况,可以用各种运算符进行计算。

你可以这么写。
小于
    总计
        技能A计数完成于的单位
       技能B计数完成于的单位
       技能C计数完成于的单位
       技能D计数完成于的单位
       技能E计数完成于的单位
    常数 5

我写的这个可能与你所需要的有区别,反正可以按你需要的逻辑进行符合。需要什么样的逻辑,什么样的逻辑是什么样的需求代码。这就要你自己研究了。
回复

使用道具 举报

 楼主| 发表于 2011-6-27 17:17:22 | 显示全部楼层
技能计数不是技能的等级吗?技能的数量可以这么算吗?
有没有一种办法可以在学习一个技能后永久给单位一个BUFF,依靠这个BUFF数量来计算技能的数量?
回复

使用道具 举报

发表于 2011-6-27 17:48:33 | 显示全部楼层
你技能有多个等级么?

技能学了就是1,没学就是0呀,你要是学了好几级自然就是级数了……

而且这个1可以当true用,可以用AND和OR操作。同样true可以当1用,false可以当0用

看看这个
  1. 大于等于
  2.     总计
  3.         大于等于
  4.             技能A计数完成于单位
  5.             常数 1
  6.         大于等于
  7.             技能D计数完成于单位
  8.             常数 1
  9.         大于等于
  10.             技能B计数完成于单位
  11.             常数 1
  12.         大于等于
  13.             技能C计数完成于单位
  14.             常数 1
  15.         常数 2
复制代码
这个就是当这4个技能中学习了2个,则生效,当然你可以设置4个中学了2个就不让学了。
用or加到你的原有技能控制的东西里面就行了。

0 = false
1,2,3.... = true
false = 0
true = 1

按这个做计算就行了。
回复

使用道具 举报

 楼主| 发表于 2011-6-27 18:13:51 | 显示全部楼层
原来还可以这样~受教了
回复

使用道具 举报

 楼主| 发表于 2011-6-27 18:54:34 | 显示全部楼层
angerking 说用OR把所有需求联系起来,是不是说错了,应该是用AND吧。
这时又遇到新问题:
如果5个技能中只能学习4个,那我1、2、3、4级分别学了A,B,C,D4个技能,第5级不能学E技能,同时也不能给A,B,C,D4个技能升级了。。。5个技能都不能点了。
回复

使用道具 举报

发表于 2011-6-27 21:57:41 | 显示全部楼层
引用第5楼rain299于2011-06-27 18:54发表的  :
angerking 说用OR把所有需求联系起来,是不是说错了,应该是用AND吧。
这时又遇到新问题:
如果5个技能中只能学习4个,那我1、2、3、4级分别学了A,B,C,D4个技能,第5级不能学E技能,同时也不能给A,B,C,D4个技能升级了。。。5个技能都不能点了。
确实是or……

你5个技能用相同验证器肯定有问题,我这个也不能直接用。因为这个是当技能数大于特定数的时候生效。

你至少还需要判断一下当前技能是否有1级!就是本技能是否学习过!

如果你只允许学3个技能,则。
你应该是这个逻辑
or
    当前技能有1级
    技能总数小于3

也就是当该技能有1级的时候,不受技能总数小于3的限制,当技能1级都没有的时候,才受技能总数小于3的限制……


你每个技能的需求必须设置成不一样的,否则结果就是没学的技能和学了的技能同等待遇……
回复

使用道具 举报

发表于 2011-6-28 11:24:13 | 显示全部楼层
给每个技能增加一个Buf,这个Buff 能够增加某个Attribute,值为+1

这样的话,10个技能, Attribute就是10,用某某判断一下就可以了= =
回复

使用道具 举报

发表于 2011-6-28 11:42:37 | 显示全部楼层
直接可以判断buff层数,何必多一步Att呢。
回复

使用道具 举报

 楼主| 发表于 2011-6-28 16:52:14 | 显示全部楼层

回 6楼(angerking) 的帖子

原来是这样,谢谢了,懂了.
回复

使用道具 举报

 楼主| 发表于 2011-6-28 16:53:45 | 显示全部楼层

回 7楼(131) 的帖子

怎么在学习技能之后就给单位加BUFF?
回复

使用道具 举报

发表于 2011-6-28 19:43:51 | 显示全部楼层

回 10楼(rain299) 的帖子

你完全可以给技能的1级or所有级别的效果中,增加一个ApplyBehavior的效果。
使用技能就加buff。
反正设置行为只能叠加1层,无限时间,后面的增加buff的效果都是无意义动作而已。

记得每个技能必须不同的buff,如果buff相同,则相同的只能算1个……因为加的是同种buff,所以后加的无意义。


不过我都给出这么详细的需求写法了……照着来一份不就完了,就算加buff,还不是要根据buff,写需求……

而且,就算你加buff,buff到指定数目还是要像我说的使用这个逻辑。

or
   当前技能已学习
   技能总数未达到n

加buff只不过是用来数技能总数的,当前技能已学习这个条件必须有的。要不然就是你上面说的,学满n个技能后,所有的技能无法学习,无法提升级别。
回复

使用道具 举报

 楼主| 发表于 2011-6-28 21:12:12 | 显示全部楼层

回 11楼(angerking) 的帖子

恩,我只是想能多学点就多学点~
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-23 22:01 , Processed in 0.033003 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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