视为技能 ======== 视为技能概述 ------------ 视为技就是把一张或者好几张牌当某张其他牌使用的技能,比如武圣倾国等等,但不包括奇策这种。 在fkparse中,创建视为技能的语法格式为: :: 视为技 条件:<代码块> 选牌规则:<代码块> 可以点确定:<代码块> 视为规则:<代码块> [ 响应条件:<代码块> 响应规则:<字符串数组> ] 可以看出,视为技的创建格式和主动技十分相似。事实上,由于某些原因,视为技和主动技是冲突的,不能同时存在同一个技能下面。如果同时存在的话,则只有主动技会起作用。 下面来一一叙述各个\ ``代码块``\ 的意义。 条件 ~~~~ 条件指的是视为技在出牌阶段的空闲时间点能不能被使用。更加确切的说,“条件”是指技能按钮需要被点亮的一系列条件,如果这些条件不能满足的话,技能按钮就会显示为灰色。例如技能“倾国”是把黑牌当闪用,那么自然就不能在出牌阶段主动使用了。 在\ ``条件:``\ 后面跟随的\ ``<代码块>``\ 中,玩家可以使用以下预定义的变量名: - ``你``\ :玩家自己。 选牌规则 ~~~~~~~~ 选牌规则指的是技能按钮按下之后,哪些手牌/装备区的牌可以被选择,哪些不能。“选牌规则”会在玩家每次点击技能按钮,或者点选一张卡牌后,对每张未被选择的卡牌各自进行一次判断,根据判断的结果来确定要不要将卡牌点亮。 在\ ``选牌规则:``\ 后面跟随的\ ``<代码块>``\ 中,玩家可以使用以下预定义的变量名: - ``你``\ :玩家自己。 - ``'已选卡牌'``\ :已经被选中的卡牌,类型为卡牌数组。 - ``'备选卡牌'``\ :每一张未被选择的卡牌,类型为卡牌类型。 可以点确定 ~~~~~~~~~~ 顾名思义,“可以点确定”指的是技能按钮已经被激活后的某一个时刻下,确定按钮能否被点击。实际上,视为技必须要先通过“可以点确定”的检测,才会去调用“视为规则”去获得转化之后的牌。 在\ ``可以点确定:``\ 后面跟随的\ ``<代码块>``\ 中,玩家可以使用以下预定义的变量名: - ``你``\ :玩家自己。 - ``'已选卡牌'``\ :已经被选中的卡牌,类型为卡牌数组。 视为规则 ~~~~~~~~ 视为规则自然就是想要视为什么牌了。玩家可以在这里编写各种控制结构之类的,最后返回一张虚拟牌即可。 关于如何返回虚拟牌,可以参见“所有的预定义函数”一章,或者直接看示例。 在\ ``视为规则:``\ 后面跟随的\ ``<代码块>``\ 中,玩家可以使用以下预定义的变量名: - ``你``\ :玩家自己。 - ``'选择的卡牌'``\ :已经被选中的卡牌,类型为卡牌数组。 为什么和前面的不太相同,这个我也不太懂 = = 响应条件 ~~~~~~~~ 与主动技不同,视为技转化的卡牌有些是可以在响应时被使用或者打出的。而“响应条件”自然就是判断能否响应了。一般也就判断一下隐藏标记之类的吧,或者自己有没有牌之类的(防烧条,然而现在没法判断自己是不是没牌) 在\ ``响应条件:``\ 后面跟随的\ ``<代码块>``\ 中,玩家可以使用以下预定义的变量名: - ``你``\ :玩家自己。 响应规则 ~~~~~~~~ 响应规则是一个字符串数组,表示这个视为技可以响应的所有牌的类型。你可以简单的只写个牌名上去,也可以通过\ ``'创建卡牌规则'``\ 函数创造出相当复杂的响应规则。