游戏王残局简化版

Annotation For single_doc/残局代码/def.lua
Login

Annotation For single_doc/残局代码/def.lua

Origin for each line in single_doc/残局代码/def.lua from check-in 59c6f5280b:

59c6f5280b 2024-07-01    1: ---@meta
59c6f5280b 2024-07-01    2: 
59c6f5280b 2024-07-01    3: ---@class Card
59c6f5280b 2024-07-01    4: ---@field discard_effect Effect
59c6f5280b 2024-07-01    5: ---@field star_knight_summon_effect Effect
59c6f5280b 2024-07-01    6: Card = {}
59c6f5280b 2024-07-01    7: 
59c6f5280b 2024-07-01    8: ---@class Duel
59c6f5280b 2024-07-01    9: Duel = {}
59c6f5280b 2024-07-01   10: 
59c6f5280b 2024-07-01   11: ---@class Effect
59c6f5280b 2024-07-01   12: Effect = {}
59c6f5280b 2024-07-01   13: 
59c6f5280b 2024-07-01   14: ---@class Group
59c6f5280b 2024-07-01   15: Group = {}
59c6f5280b 2024-07-01   16: 
59c6f5280b 2024-07-01   17: ---@class Debug
59c6f5280b 2024-07-01   18: Debug = {}
59c6f5280b 2024-07-01   19: 
59c6f5280b 2024-07-01   20: -----
59c6f5280b 2024-07-01   21: 
59c6f5280b 2024-07-01   22: ---仪式怪兽的解放过滤条件
59c6f5280b 2024-07-01   23: ---@return boolean
59c6f5280b 2024-07-01   24: ---@param c Card
59c6f5280b 2024-07-01   25: ---@param tp integer
59c6f5280b 2024-07-01   26: function Card.mat_filter(c,tp) end
59c6f5280b 2024-07-01   27: 
59c6f5280b 2024-07-01   28: ---素材检查(烙印融合)
59c6f5280b 2024-07-01   29: ---@param tp integer
59c6f5280b 2024-07-01   30: ---@param sg Group
59c6f5280b 2024-07-01   31: ---@param fc Card
59c6f5280b 2024-07-01   32: function Card.branded_fusion_check(tp,sg,fc) end
59c6f5280b 2024-07-01   33: 
59c6f5280b 2024-07-01   34: ---素材检查(电子负载融合)
59c6f5280b 2024-07-01   35: ---@param tp integer
59c6f5280b 2024-07-01   36: ---@param sg Group
59c6f5280b 2024-07-01   37: ---@param fc Card
59c6f5280b 2024-07-01   38: function Card.cyber_fusion_check(tp,sg,fc) end
59c6f5280b 2024-07-01   39: 
59c6f5280b 2024-07-01   40: ---素材检查(破坏剑士融合)
59c6f5280b 2024-07-01   41: ---@param tp integer
59c6f5280b 2024-07-01   42: ---@param sg Group
59c6f5280b 2024-07-01   43: ---@param fc Card
59c6f5280b 2024-07-01   44: function Card.destruction_swordsman_fusion_check(tp,sg,fc) end
59c6f5280b 2024-07-01   45: 
59c6f5280b 2024-07-01   46: ---素材检查(至爱接触)
59c6f5280b 2024-07-01   47: ---@param tp integer
59c6f5280b 2024-07-01   48: ---@param sg Group
59c6f5280b 2024-07-01   49: ---@param fc Card
59c6f5280b 2024-07-01   50: function Card.hero_fusion_check(tp,sg,fc) end
59c6f5280b 2024-07-01   51: 
59c6f5280b 2024-07-01   52: ---素材检查(真红眼融合)
59c6f5280b 2024-07-01   53: ---@param tp integer
59c6f5280b 2024-07-01   54: ---@param sg Group
59c6f5280b 2024-07-01   55: ---@param fc Card
59c6f5280b 2024-07-01   56: function Card.red_eyes_fusion_check(tp,sg,fc) end
59c6f5280b 2024-07-01   57: 
59c6f5280b 2024-07-01   58: ---素材检查(奇迹同调融合)
59c6f5280b 2024-07-01   59: ---@param tp integer
59c6f5280b 2024-07-01   60: ---@param sg Group
59c6f5280b 2024-07-01   61: ---@param fc Card
59c6f5280b 2024-07-01   62: function Card.synchro_fusion_check(tp,sg,fc) end
59c6f5280b 2024-07-01   63: 
59c6f5280b 2024-07-01   64: ---素材检查(究极融合)
59c6f5280b 2024-07-01   65: ---@param tp integer
59c6f5280b 2024-07-01   66: ---@param sg Group
59c6f5280b 2024-07-01   67: ---@param fc Card
59c6f5280b 2024-07-01   68: function Card.ultimate_fusion_check(tp,sg,fc) end
59c6f5280b 2024-07-01   69: 
59c6f5280b 2024-07-01   70: ---当作装备卡装备(异热同心武器)
59c6f5280b 2024-07-01   71: ---@param c Card
59c6f5280b 2024-07-01   72: ---@param tp integer
59c6f5280b 2024-07-01   73: ---@param tc Card
59c6f5280b 2024-07-01   74: function Card.zw_equip_monster(c,tp,tc) end
59c6f5280b 2024-07-01   75: 
59c6f5280b 2024-07-01   76: 
59c6f5280b 2024-07-01   77: ---返回c的当前卡号(可能因为效果改变)
59c6f5280b 2024-07-01   78: ---@return integer
59c6f5280b 2024-07-01   79: ---@return integer|nil
59c6f5280b 2024-07-01   80: ---@param c Card
59c6f5280b 2024-07-01   81: function Card.GetCode(c) end
59c6f5280b 2024-07-01   82: 
59c6f5280b 2024-07-01   83: ---返回c的卡片记载的卡号
59c6f5280b 2024-07-01   84: ---@return integer
59c6f5280b 2024-07-01   85: ---@param c Card
59c6f5280b 2024-07-01   86: function Card.GetOriginalCode(c) end
59c6f5280b 2024-07-01   87: 
59c6f5280b 2024-07-01   88: ---返回c规则上的卡号(这张卡规则上当作...使用)
59c6f5280b 2024-07-01   89: ---@return integer
59c6f5280b 2024-07-01   90: ---@return integer
59c6f5280b 2024-07-01   91: ---@param c Card
59c6f5280b 2024-07-01   92: function Card.GetOriginalCodeRule(c) end
59c6f5280b 2024-07-01   93: 
59c6f5280b 2024-07-01   94: ---返回c作为融合素材时的卡号(包括c原本的卡号)
59c6f5280b 2024-07-01   95: ---@return integer
59c6f5280b 2024-07-01   96: ---@return integer|nil
59c6f5280b 2024-07-01   97: ---@return ...|nil
59c6f5280b 2024-07-01   98: ---@param c Card
59c6f5280b 2024-07-01   99: function Card.GetFusionCode(c) end
59c6f5280b 2024-07-01  100: 
59c6f5280b 2024-07-01  101: ---返回c作为link素材的卡号(包括c原本的卡号)
59c6f5280b 2024-07-01  102: ---@return integer
59c6f5280b 2024-07-01  103: ---@return integer|nil
59c6f5280b 2024-07-01  104: ---@return ...|nil
59c6f5280b 2024-07-01  105: ---@param c Card
59c6f5280b 2024-07-01  106: function Card.GetLinkCode(c) end
59c6f5280b 2024-07-01  107: 
59c6f5280b 2024-07-01  108: ---检查c作为融合素材时能否当作卡号为code的卡,额外参数是其他code
59c6f5280b 2024-07-01  109: ---@return boolean
59c6f5280b 2024-07-01  110: ---@param c Card
59c6f5280b 2024-07-01  111: ---@param code integer
59c6f5280b 2024-07-01  112: ---@param ...? integer
59c6f5280b 2024-07-01  113: function Card.IsFusionCode(c,code,...) end
59c6f5280b 2024-07-01  114: 
59c6f5280b 2024-07-01  115: ---检查c作为link素材时能否当作卡号为code的卡,额外参数是其他code
59c6f5280b 2024-07-01  116: ---@return boolean
59c6f5280b 2024-07-01  117: ---@param c Card
59c6f5280b 2024-07-01  118: ---@param code integer
59c6f5280b 2024-07-01  119: ---@param ...? integer
59c6f5280b 2024-07-01  120: function Card.IsLinkCode(c,code,...) end
59c6f5280b 2024-07-01  121: 
59c6f5280b 2024-07-01  122: ---检查c是否是卡名含有setname的卡
59c6f5280b 2024-07-01  123: ---@return boolean
59c6f5280b 2024-07-01  124: ---@param c Card
59c6f5280b 2024-07-01  125: ---@param ... integer
59c6f5280b 2024-07-01  126: function Card.IsSetCard(c,...) end
59c6f5280b 2024-07-01  127: 
59c6f5280b 2024-07-01  128: ---检查c是否是原本卡名含有setname的卡
59c6f5280b 2024-07-01  129: ---@return boolean
59c6f5280b 2024-07-01  130: ---@param c Card
59c6f5280b 2024-07-01  131: ---@param ... integer
59c6f5280b 2024-07-01  132: function Card.IsOriginalSetCard(c,...) end
59c6f5280b 2024-07-01  133: 
59c6f5280b 2024-07-01  134: ---检查c位置变化之前是否是名字含有setname的卡
59c6f5280b 2024-07-01  135: ---@return boolean
59c6f5280b 2024-07-01  136: ---@param c Card
59c6f5280b 2024-07-01  137: ---@param ... integer
59c6f5280b 2024-07-01  138: function Card.IsPreviousSetCard(c,...) end
59c6f5280b 2024-07-01  139: 
59c6f5280b 2024-07-01  140: ---检查c作为融合素材时能否当作名字含有setname的卡
59c6f5280b 2024-07-01  141: ---@return boolean
59c6f5280b 2024-07-01  142: ---@param c Card
59c6f5280b 2024-07-01  143: ---@param ... integer
59c6f5280b 2024-07-01  144: function Card.IsFusionSetCard(c,...) end
59c6f5280b 2024-07-01  145: 
59c6f5280b 2024-07-01  146: ---检查c作为link素材时能否当作名字含有setname的卡
59c6f5280b 2024-07-01  147: ---@return boolean
59c6f5280b 2024-07-01  148: ---@param c Card
59c6f5280b 2024-07-01  149: ---@param ... integer
59c6f5280b 2024-07-01  150: function Card.IsLinkSetCard(c,...) end
59c6f5280b 2024-07-01  151: 
59c6f5280b 2024-07-01  152: ---返回c的当前类型
59c6f5280b 2024-07-01  153: ---@return integer
59c6f5280b 2024-07-01  154: ---@param c Card
59c6f5280b 2024-07-01  155: function Card.GetType(c) end
59c6f5280b 2024-07-01  156: 
59c6f5280b 2024-07-01  157: ---返回c的卡片记载的类型
59c6f5280b 2024-07-01  158: ---@return integer
59c6f5280b 2024-07-01  159: ---@param c Card
59c6f5280b 2024-07-01  160: function Card.GetOriginalType(c) end
59c6f5280b 2024-07-01  161: 
59c6f5280b 2024-07-01  162: ---返回c用作融合素材时的类型(与GetType的区别在于对于魔陷区的怪兽卡,返回其原本类型)
59c6f5280b 2024-07-01  163: ---@return integer
59c6f5280b 2024-07-01  164: ---@param c Card
59c6f5280b 2024-07-01  165: function Card.GetFusionType(c) end
59c6f5280b 2024-07-01  166: 
59c6f5280b 2024-07-01  167: ---返回c用作同调素材时的类型(与GetType的区别在于对于魔陷区的怪兽卡,返回其原本类型)
59c6f5280b 2024-07-01  168: ---@return integer
59c6f5280b 2024-07-01  169: ---@param c Card
59c6f5280b 2024-07-01  170: function Card.GetSynchroType(c) end
59c6f5280b 2024-07-01  171: 
59c6f5280b 2024-07-01  172: ---返回c用作同调素材时的类型(与GetType的区别在于对于魔陷区的怪兽卡,返回其原本类型)
59c6f5280b 2024-07-01  173: ---@return integer
59c6f5280b 2024-07-01  174: ---@param c Card
59c6f5280b 2024-07-01  175: function Card.GetXyzType(c) end
59c6f5280b 2024-07-01  176: 
59c6f5280b 2024-07-01  177: ---返回c用作link素材时的类型(与GetType的区别在于对于魔陷区的怪兽卡,返回其原本类型)
59c6f5280b 2024-07-01  178: ---@return integer
59c6f5280b 2024-07-01  179: ---@param c Card
59c6f5280b 2024-07-01  180: function Card.GetLinkType(c) end
59c6f5280b 2024-07-01  181: 
59c6f5280b 2024-07-01  182: ---返回c的当前等级
59c6f5280b 2024-07-01  183: ---@return integer
59c6f5280b 2024-07-01  184: ---@param c Card
59c6f5280b 2024-07-01  185: function Card.GetLevel(c) end
59c6f5280b 2024-07-01  186: 
59c6f5280b 2024-07-01  187: ---返回c的当前阶级
59c6f5280b 2024-07-01  188: ---@return integer
59c6f5280b 2024-07-01  189: ---@param c Card
59c6f5280b 2024-07-01  190: function Card.GetRank(c) end
59c6f5280b 2024-07-01  191: 
59c6f5280b 2024-07-01  192: ---返回c的连接标记数量
59c6f5280b 2024-07-01  193: ---@return integer
59c6f5280b 2024-07-01  194: ---@param c Card
59c6f5280b 2024-07-01  195: function Card.GetLink(c) end
59c6f5280b 2024-07-01  196: 
59c6f5280b 2024-07-01  197: ---返回c的对于同调怪兽sc的同调用等级
59c6f5280b 2024-07-01  198: ---此函数除了某些特定卡如调节支援士,返回值与Card.GetLevel(c)相同
59c6f5280b 2024-07-01  199: ---@return integer
59c6f5280b 2024-07-01  200: ---@param c Card
59c6f5280b 2024-07-01  201: ---@param sc Card
59c6f5280b 2024-07-01  202: function Card.GetSynchroLevel(c,sc) end
59c6f5280b 2024-07-01  203: 
59c6f5280b 2024-07-01  204: ---返回c的对于仪式怪兽rc仪式解放等级
59c6f5280b 2024-07-01  205: ---此函数除了某些特定卡如仪式供物,返回值与Card.GetLevel(c)相同
59c6f5280b 2024-07-01  206: ---@return integer
59c6f5280b 2024-07-01  207: ---@param c Card
59c6f5280b 2024-07-01  208: ---@param rc Card
59c6f5280b 2024-07-01  209: function Card.GetRitualLevel(c,rc) end
59c6f5280b 2024-07-01  210: 
59c6f5280b 2024-07-01  211: ---返回c的卡片记载的等级
59c6f5280b 2024-07-01  212: ---@return integer
59c6f5280b 2024-07-01  213: ---@param c Card
59c6f5280b 2024-07-01  214: function Card.GetOriginalLevel(c) end
59c6f5280b 2024-07-01  215: 
59c6f5280b 2024-07-01  216: ---返回c的卡片记载的阶级
59c6f5280b 2024-07-01  217: ---@return integer
59c6f5280b 2024-07-01  218: ---@param c Card
59c6f5280b 2024-07-01  219: function Card.GetOriginalRank(c) end
59c6f5280b 2024-07-01  220: 
59c6f5280b 2024-07-01  221: ---检查c对于XYZ怪兽xyzc的XYZ用等级是否是lv
59c6f5280b 2024-07-01  222: ---@return boolean
59c6f5280b 2024-07-01  223: ---@param c Card
59c6f5280b 2024-07-01  224: ---@param xyzc Card
59c6f5280b 2024-07-01  225: ---@param lv integer
59c6f5280b 2024-07-01  226: function Card.IsXyzLevel(c,xyzc,lv) end
59c6f5280b 2024-07-01  227: 
59c6f5280b 2024-07-01  228: ---返回c的左灵摆刻度
59c6f5280b 2024-07-01  229: ---@return integer
59c6f5280b 2024-07-01  230: ---@param c Card
59c6f5280b 2024-07-01  231: function Card.GetLeftScale(c) end
59c6f5280b 2024-07-01  232: 
59c6f5280b 2024-07-01  233: ---返回c的原本的左灵摆刻度
59c6f5280b 2024-07-01  234: ---@return integer
59c6f5280b 2024-07-01  235: ---@param c Card
59c6f5280b 2024-07-01  236: function Card.GetOriginalLeftScale(c) end
59c6f5280b 2024-07-01  237: 
59c6f5280b 2024-07-01  238: ---返回c的右灵摆刻度
59c6f5280b 2024-07-01  239: ---@return integer
59c6f5280b 2024-07-01  240: ---@param c Card
59c6f5280b 2024-07-01  241: function Card.GetRightScale(c) end
59c6f5280b 2024-07-01  242: 
59c6f5280b 2024-07-01  243: ---返回c的原本的右灵摆刻度
59c6f5280b 2024-07-01  244: ---@return integer
59c6f5280b 2024-07-01  245: ---@param c Card
59c6f5280b 2024-07-01  246: function Card.GetOriginalRightScale(c) end
59c6f5280b 2024-07-01  247: 
59c6f5280b 2024-07-01  248: ---返回c的当前灵摆刻度。如果在左灵摆区域则返回左刻度,在右灵摆区域或是不在灵摆区域则返回右刻度
59c6f5280b 2024-07-01  249: ---@return integer
59c6f5280b 2024-07-01  250: ---@param c Card
59c6f5280b 2024-07-01  251: function Card.GetCurrentScale(c) end
59c6f5280b 2024-07-01  252: 
59c6f5280b 2024-07-01  253: ---检查c是否是连接标记为 dir 的卡
59c6f5280b 2024-07-01  254: ---@return boolean
59c6f5280b 2024-07-01  255: ---@param c Card
59c6f5280b 2024-07-01  256: ---@param dir integer
59c6f5280b 2024-07-01  257: function Card.IsLinkMarker(c,dir) end
59c6f5280b 2024-07-01  258: 
59c6f5280b 2024-07-01  259: ---返回c所连接区的卡片组
59c6f5280b 2024-07-01  260: ---@return Group
59c6f5280b 2024-07-01  261: ---@param c Card
59c6f5280b 2024-07-01  262: function Card.GetLinkedGroup(c) end
59c6f5280b 2024-07-01  263: 
59c6f5280b 2024-07-01  264: ---返回c所连接区的怪兽卡数量
59c6f5280b 2024-07-01  265: ---@return integer
59c6f5280b 2024-07-01  266: ---@param c Card
59c6f5280b 2024-07-01  267: function Card.GetLinkedGroupCount(c) end
59c6f5280b 2024-07-01  268: 
59c6f5280b 2024-07-01  269: ---返回c的[以 player 来看的场上的]连接区域
59c6f5280b 2024-07-01  270: ---@return integer
59c6f5280b 2024-07-01  271: ---@param c Card
59c6f5280b 2024-07-01  272: ---@param player? integer default: c:GetControler()
59c6f5280b 2024-07-01  273: function Card.GetLinkedZone(c,player) end
59c6f5280b 2024-07-01  274: 
59c6f5280b 2024-07-01  275: ---返回和c互相连接状态的卡片组
59c6f5280b 2024-07-01  276: ---@return Group
59c6f5280b 2024-07-01  277: ---@param c Card
59c6f5280b 2024-07-01  278: function Card.GetMutualLinkedGroup(c) end
59c6f5280b 2024-07-01  279: 
59c6f5280b 2024-07-01  280: ---返回和c互相连接状态的卡片组的数量
59c6f5280b 2024-07-01  281: ---@return integer
59c6f5280b 2024-07-01  282: ---@param c Card
59c6f5280b 2024-07-01  283: function Card.GetMutualLinkedGroupCount(c) end
59c6f5280b 2024-07-01  284: 
59c6f5280b 2024-07-01  285: ---返回[以 player 来看的]与卡片 c 互相连接的卡 所在的区域
59c6f5280b 2024-07-01  286: ---@return integer
59c6f5280b 2024-07-01  287: ---@param c Card
59c6f5280b 2024-07-01  288: ---@param player? integer default: c:GetControler()
59c6f5280b 2024-07-01  289: function Card.GetMutualLinkedZone(c,player) end
59c6f5280b 2024-07-01  290: 
59c6f5280b 2024-07-01  291: ---检查c是否是连接状态
59c6f5280b 2024-07-01  292: ---@return boolean
59c6f5280b 2024-07-01  293: ---@param c Card
59c6f5280b 2024-07-01  294: function Card.IsLinkState(c) end
59c6f5280b 2024-07-01  295: 
59c6f5280b 2024-07-01  296: ---检查c是否是额外连接状态
59c6f5280b 2024-07-01  297: ---@return boolean
59c6f5280b 2024-07-01  298: ---@param c Card
59c6f5280b 2024-07-01  299: function Card.IsExtraLinkState(c) end
59c6f5280b 2024-07-01  300: 
59c6f5280b 2024-07-01  301: ---返回与c同一纵列的c以外的卡片组,后2个参数会计算卡片c左边 left 列 和右边 right 列的所有卡,
59c6f5280b 2024-07-01  302: ---比如c在中间的格子,那么 c:GetColumnGroup(2,2) 就相当于获取了除场地魔法以外的 场上的所有卡
59c6f5280b 2024-07-01  303: ---@return Group
59c6f5280b 2024-07-01  304: ---@param c Card
59c6f5280b 2024-07-01  305: ---@param left? integer default: 0
59c6f5280b 2024-07-01  306: ---@param right? integer default: 0
59c6f5280b 2024-07-01  307: function Card.GetColumnGroup(c,left,right) end
59c6f5280b 2024-07-01  308: 
59c6f5280b 2024-07-01  309: ---用法同上,只是返回的是卡片的数量
59c6f5280b 2024-07-01  310: ---@return integer
59c6f5280b 2024-07-01  311: ---@param c Card
59c6f5280b 2024-07-01  312: ---@param left? integer default: 0
59c6f5280b 2024-07-01  313: ---@param right? integer default: 0
59c6f5280b 2024-07-01  314: function Card.GetColumnGroupCount(c,left,right) end
59c6f5280b 2024-07-01  315: 
59c6f5280b 2024-07-01  316: ---返回[以 player 来看的] location 范围内与 c 同一纵列[包含左边 left 列和右边 right 列]的区域,
59c6f5280b 2024-07-01  317: ---location 的值是 LOCATION_MZONE,LOCATION_SZONE,LOCATIOIN_ONFIELD
59c6f5280b 2024-07-01  318: ---@return integer
59c6f5280b 2024-07-01  319: ---@param c Card
59c6f5280b 2024-07-01  320: ---@param location integer
59c6f5280b 2024-07-01  321: ---@param left? integer
59c6f5280b 2024-07-01  322: ---@param right? integer
59c6f5280b 2024-07-01  323: ---@param player? integer
59c6f5280b 2024-07-01  324: function Card.GetColumnZone(c,location,left,right,player) end
59c6f5280b 2024-07-01  325: 
59c6f5280b 2024-07-01  326: ---检查与c同一纵列的区域是否全都有卡
59c6f5280b 2024-07-01  327: ---@return boolean
59c6f5280b 2024-07-01  328: ---@param c Card
59c6f5280b 2024-07-01  329: function Card.IsAllColumn(c) end
59c6f5280b 2024-07-01  330: 
59c6f5280b 2024-07-01  331: ---返回c的当前属性
59c6f5280b 2024-07-01  332: ---注:对某些多属性怪兽如光与暗之龙,此函数的返回值可能是几个属性的组合值
59c6f5280b 2024-07-01  333: ---@return integer
59c6f5280b 2024-07-01  334: ---@param c Card
59c6f5280b 2024-07-01  335: function Card.GetAttribute(c) end
59c6f5280b 2024-07-01  336: 
59c6f5280b 2024-07-01  337: ---返回c的卡片记载的属性
59c6f5280b 2024-07-01  338: ---@return integer
59c6f5280b 2024-07-01  339: ---@param c Card
59c6f5280b 2024-07-01  340: function Card.GetOriginalAttribute(c) end
59c6f5280b 2024-07-01  341: 
59c6f5280b 2024-07-01  342: ---返回c[由player融合召唤时]用作融合素材时的属性
59c6f5280b 2024-07-01  343: ---@return integer
59c6f5280b 2024-07-01  344: ---@param c Card
59c6f5280b 2024-07-01  345: ---@param player? integer
59c6f5280b 2024-07-01  346: function Card.GetFusionAttribute(c,player) end
59c6f5280b 2024-07-01  347: 
59c6f5280b 2024-07-01  348: ---返回c[由player连接召唤时]用作连接素材时的属性
59c6f5280b 2024-07-01  349: ---@return integer
59c6f5280b 2024-07-01  350: ---@param c Card
59c6f5280b 2024-07-01  351: ---@param player? integer
59c6f5280b 2024-07-01  352: function Card.GetLinkAttribute(c,player) end
59c6f5280b 2024-07-01  353: 
59c6f5280b 2024-07-01  354: ---检查c在墓地中会变成什么属性。
59c6f5280b 2024-07-01  355: ---第二个参数可选,指示假设送去墓地是由于哪个玩家。
59c6f5280b 2024-07-01  356: ---@return integer
59c6f5280b 2024-07-01  357: ---@param c Card
59c6f5280b 2024-07-01  358: ---@param reasonPlayer? integer
59c6f5280b 2024-07-01  359: function Card.GetAttributeInGrave(c,reasonPlayer) end
59c6f5280b 2024-07-01  360: 
59c6f5280b 2024-07-01  361: ---返回c的当前种族
59c6f5280b 2024-07-01  362: ---注:对某些多种族怪兽如动画效果的魔术猿,此函数的返回值可能是几个种族的组合值
59c6f5280b 2024-07-01  363: ---@return integer
59c6f5280b 2024-07-01  364: ---@param c Card
59c6f5280b 2024-07-01  365: function Card.GetRace(c) end
59c6f5280b 2024-07-01  366: 
59c6f5280b 2024-07-01  367: ---返回c的卡片记载的种族
59c6f5280b 2024-07-01  368: ---@return integer
59c6f5280b 2024-07-01  369: ---@param c Card
59c6f5280b 2024-07-01  370: function Card.GetOriginalRace(c) end
59c6f5280b 2024-07-01  371: 
59c6f5280b 2024-07-01  372: ---返回c[由player连接召唤时]作为连接素材时的种族
59c6f5280b 2024-07-01  373: ---@return integer
59c6f5280b 2024-07-01  374: ---@param c Card
59c6f5280b 2024-07-01  375: ---@param player? integer
59c6f5280b 2024-07-01  376: function Card.GetLinkRace(c,player) end
59c6f5280b 2024-07-01  377: 
59c6f5280b 2024-07-01  378: ---检查c在墓地中会变成什么种族。
59c6f5280b 2024-07-01  379: ---第二个参数可选,指示假设送去墓地是由于哪个玩家。
59c6f5280b 2024-07-01  380: ---@return integer
59c6f5280b 2024-07-01  381: ---@param c Card
59c6f5280b 2024-07-01  382: ---@param reasonPlayer? integer
59c6f5280b 2024-07-01  383: function Card.GetRaceInGrave(c,reasonPlayer) end
59c6f5280b 2024-07-01  384: 
59c6f5280b 2024-07-01  385: ---返回c的当前攻击力
59c6f5280b 2024-07-01  386: ---@return integer
59c6f5280b 2024-07-01  387: ---@param c Card
59c6f5280b 2024-07-01  388: function Card.GetAttack(c) end
59c6f5280b 2024-07-01  389: 
59c6f5280b 2024-07-01  390: ---返回c的原本攻击力
59c6f5280b 2024-07-01  391: ---@return integer
59c6f5280b 2024-07-01  392: ---@param c Card
59c6f5280b 2024-07-01  393: function Card.GetBaseAttack(c) end
59c6f5280b 2024-07-01  394: 
59c6f5280b 2024-07-01  395: ---返回c的卡片记载的攻击力,返回值是负数表示是"?"
59c6f5280b 2024-07-01  396: ---@return integer
59c6f5280b 2024-07-01  397: ---@param c Card
59c6f5280b 2024-07-01  398: function Card.GetTextAttack(c) end
59c6f5280b 2024-07-01  399: 
59c6f5280b 2024-07-01  400: ---返回c的当前守备力
59c6f5280b 2024-07-01  401: ---@return integer
59c6f5280b 2024-07-01  402: ---@param c Card
59c6f5280b 2024-07-01  403: function Card.GetDefense(c) end
59c6f5280b 2024-07-01  404: 
59c6f5280b 2024-07-01  405: ---返回c的原本守备力
59c6f5280b 2024-07-01  406: ---@return integer
59c6f5280b 2024-07-01  407: ---@param c Card
59c6f5280b 2024-07-01  408: function Card.GetBaseDefense(c) end
59c6f5280b 2024-07-01  409: 
59c6f5280b 2024-07-01  410: ---返回c的卡片记载的守备力,返回值是负数表示是"?"
59c6f5280b 2024-07-01  411: ---@return integer
59c6f5280b 2024-07-01  412: ---@param c Card
59c6f5280b 2024-07-01  413: function Card.GetTextDefense(c) end
59c6f5280b 2024-07-01  414: 
59c6f5280b 2024-07-01  415: ---返回c位置变化之前在场上的卡号
59c6f5280b 2024-07-01  416: ---@return integer
59c6f5280b 2024-07-01  417: ---@return integer|nil
59c6f5280b 2024-07-01  418: ---@param c Card
59c6f5280b 2024-07-01  419: function Card.GetPreviousCodeOnField(c) end
59c6f5280b 2024-07-01  420: 
59c6f5280b 2024-07-01  421: ---返回c位置变化之前在场上的类型
59c6f5280b 2024-07-01  422: ---@return integer
59c6f5280b 2024-07-01  423: ---@param c Card
59c6f5280b 2024-07-01  424: function Card.GetPreviousTypeOnField(c) end
59c6f5280b 2024-07-01  425: 
59c6f5280b 2024-07-01  426: ---返回c位置变化之前在场上的等级
59c6f5280b 2024-07-01  427: ---@return integer
59c6f5280b 2024-07-01  428: ---@param c Card
59c6f5280b 2024-07-01  429: function Card.GetPreviousLevelOnField(c) end
59c6f5280b 2024-07-01  430: 
59c6f5280b 2024-07-01  431: ---返回c位置变化之前在场上的阶级
59c6f5280b 2024-07-01  432: ---@return integer
59c6f5280b 2024-07-01  433: ---@param c Card
59c6f5280b 2024-07-01  434: function Card.GetPreviousRankOnField(c) end
59c6f5280b 2024-07-01  435: 
59c6f5280b 2024-07-01  436: ---返回c位置变化之前在场上的属性
59c6f5280b 2024-07-01  437: ---@return integer
59c6f5280b 2024-07-01  438: ---@param c Card
59c6f5280b 2024-07-01  439: function Card.GetPreviousAttributeOnField(c) end
59c6f5280b 2024-07-01  440: 
59c6f5280b 2024-07-01  441: ---返回c位置变化之前在场上的种族
59c6f5280b 2024-07-01  442: ---@return integer
59c6f5280b 2024-07-01  443: ---@param c Card
59c6f5280b 2024-07-01  444: function Card.GetPreviousRaceOnField(c) end
59c6f5280b 2024-07-01  445: 
59c6f5280b 2024-07-01  446: ---返回c位置变化之前在场上的攻击力
59c6f5280b 2024-07-01  447: ---@return integer
59c6f5280b 2024-07-01  448: ---@param c Card
59c6f5280b 2024-07-01  449: function Card.GetPreviousAttackOnField(c) end
59c6f5280b 2024-07-01  450: 
59c6f5280b 2024-07-01  451: ---返回c位置变化之前在场上的守备力
59c6f5280b 2024-07-01  452: ---@return integer
59c6f5280b 2024-07-01  453: ---@param c Card
59c6f5280b 2024-07-01  454: function Card.GetPreviousDefenseOnField(c) end
59c6f5280b 2024-07-01  455: 
59c6f5280b 2024-07-01  456: ---返回c位置变化之前在场上叠放的卡片数量
59c6f5280b 2024-07-01  457: ---@return integer
59c6f5280b 2024-07-01  458: ---@param c Card
59c6f5280b 2024-07-01  459: function Card.GetPreviousOverlayCountOnField(c) end
59c6f5280b 2024-07-01  460: 
59c6f5280b 2024-07-01  461: ---返回c的持有者
59c6f5280b 2024-07-01  462: ---@return integer
59c6f5280b 2024-07-01  463: ---@param c Card
59c6f5280b 2024-07-01  464: function Card.GetOwner(c) end
59c6f5280b 2024-07-01  465: 
59c6f5280b 2024-07-01  466: ---返回c的当前控制者
59c6f5280b 2024-07-01  467: ---@return integer
59c6f5280b 2024-07-01  468: ---@param c Card
59c6f5280b 2024-07-01  469: function Card.GetControler(c) end
59c6f5280b 2024-07-01  470: 
59c6f5280b 2024-07-01  471: ---返回c的位置变化之前的控制者
59c6f5280b 2024-07-01  472: ---@return integer
59c6f5280b 2024-07-01  473: ---@param c Card
59c6f5280b 2024-07-01  474: function Card.GetPreviousControler(c) end
59c6f5280b 2024-07-01  475: 
59c6f5280b 2024-07-01  476: ---设置c来到当前位置的原因为reason
59c6f5280b 2024-07-01  477: ---@return boolean
59c6f5280b 2024-07-01  478: ---@param c Card
59c6f5280b 2024-07-01  479: ---@param reason integer
59c6f5280b 2024-07-01  480: function Card.SetReason(c,reason) end
59c6f5280b 2024-07-01  481: 
59c6f5280b 2024-07-01  482: ---返回c的位置变化原因
59c6f5280b 2024-07-01  483: ---@return integer
59c6f5280b 2024-07-01  484: ---@param c Card
59c6f5280b 2024-07-01  485: function Card.GetReason(c) end
59c6f5280b 2024-07-01  486: 
59c6f5280b 2024-07-01  487: ---返回导致c的位置变化的卡
59c6f5280b 2024-07-01  488: ---此函数仅在某卡被战斗破坏时,因为上级召唤被解放,或者成为特殊召唤使用的素材时有效
59c6f5280b 2024-07-01  489: ---@return Card
59c6f5280b 2024-07-01  490: ---@param c Card
59c6f5280b 2024-07-01  491: function Card.GetReasonCard(c) end
59c6f5280b 2024-07-01  492: 
59c6f5280b 2024-07-01  493: ---返回导致c的位置变化的玩家
59c6f5280b 2024-07-01  494: ---@return integer
59c6f5280b 2024-07-01  495: ---@param c Card
59c6f5280b 2024-07-01  496: function Card.GetReasonPlayer(c) end
59c6f5280b 2024-07-01  497: 
59c6f5280b 2024-07-01  498: ---返回导致c的位置变化的效果
59c6f5280b 2024-07-01  499: ---@return Effect
59c6f5280b 2024-07-01  500: ---@param c Card
59c6f5280b 2024-07-01  501: function Card.GetReasonEffect(c) end
59c6f5280b 2024-07-01  502: 
59c6f5280b 2024-07-01  503: ---返回c当前的表示形式
59c6f5280b 2024-07-01  504: ---@return integer
59c6f5280b 2024-07-01  505: ---@param c Card
59c6f5280b 2024-07-01  506: function Card.GetPosition(c) end
59c6f5280b 2024-07-01  507: 
59c6f5280b 2024-07-01  508: ---返回c位置变化前的表示形式
59c6f5280b 2024-07-01  509: ---@return integer
59c6f5280b 2024-07-01  510: ---@param c Card
59c6f5280b 2024-07-01  511: function Card.GetPreviousPosition(c) end
59c6f5280b 2024-07-01  512: 
59c6f5280b 2024-07-01  513: ---返回c在本次战斗发生之前的表示形式
59c6f5280b 2024-07-01  514: ---@return integer
59c6f5280b 2024-07-01  515: ---@param c Card
59c6f5280b 2024-07-01  516: function Card.GetBattlePosition(c) end
59c6f5280b 2024-07-01  517: 
59c6f5280b 2024-07-01  518: ---返回c当前的所在位置
59c6f5280b 2024-07-01  519: ---@return integer
59c6f5280b 2024-07-01  520: ---@param c Card
59c6f5280b 2024-07-01  521: function Card.GetLocation(c) end
59c6f5280b 2024-07-01  522: 
59c6f5280b 2024-07-01  523: ---返回c位置变化前的所在的位置
59c6f5280b 2024-07-01  524: ---@return integer
59c6f5280b 2024-07-01  525: ---@param c Card
59c6f5280b 2024-07-01  526: function Card.GetPreviousLocation(c) end
59c6f5280b 2024-07-01  527: 
59c6f5280b 2024-07-01  528: ---返回c在当前位置的序号
59c6f5280b 2024-07-01  529: ---在场上时,序号代表所在的格子,从左往右分别是0-4,场地魔法格的序号为5,左右灵摆区域为6-7
59c6f5280b 2024-07-01  530: ---在其它地方时,序号表示的是第几张卡,最下面的卡的序号为0
59c6f5280b 2024-07-01  531: ---@return integer
59c6f5280b 2024-07-01  532: ---@param c Card
59c6f5280b 2024-07-01  533: function Card.GetSequence(c) end
59c6f5280b 2024-07-01  534: 
59c6f5280b 2024-07-01  535: ---返回c位置变化前的序号
59c6f5280b 2024-07-01  536: ---@return integer
59c6f5280b 2024-07-01  537: ---@param c Card
59c6f5280b 2024-07-01  538: function Card.GetPreviousSequence(c) end
59c6f5280b 2024-07-01  539: 
59c6f5280b 2024-07-01  540: ---检查c是否被卡名含有setname的卡特殊召唤
59c6f5280b 2024-07-01  541: ---@return boolean
59c6f5280b 2024-07-01  542: ---@param c Card
59c6f5280b 2024-07-01  543: ---@param ... integer
59c6f5280b 2024-07-01  544: function Card.IsSpecialSummonSetCard(c,...) end
59c6f5280b 2024-07-01  545: 
59c6f5280b 2024-07-01  546: ---返回c的特殊召唤的信息
59c6f5280b 2024-07-01  547: ---SUMMON_INFO_CODE
59c6f5280b 2024-07-01  548: ---SUMMON_INFO_CODE2
59c6f5280b 2024-07-01  549: ---SUMMON_INFO_TYPE
59c6f5280b 2024-07-01  550: ---SUMMON_INFO_LEVEL
59c6f5280b 2024-07-01  551: ---SUMMON_INFO_RANK
59c6f5280b 2024-07-01  552: ---SUMMON_INFO_ATTRIBUTE
59c6f5280b 2024-07-01  553: ---SUMMON_INFO_RACE
59c6f5280b 2024-07-01  554: ---SUMMON_INFO_ATTACK
59c6f5280b 2024-07-01  555: ---SUMMON_INFO_DEFENSE
59c6f5280b 2024-07-01  556: ---SUMMON_INFO_REASON_EFFET
59c6f5280b 2024-07-01  557: ---@return ...
59c6f5280b 2024-07-01  558: ---@param c Card
59c6f5280b 2024-07-01  559: ---@param ... integer
59c6f5280b 2024-07-01  560: function Card.GetSpecialSummonInfo(c,...) end
59c6f5280b 2024-07-01  561: 
59c6f5280b 2024-07-01  562: ---返回c的召唤/特殊召唤的方式
59c6f5280b 2024-07-01  563: ---@return integer
59c6f5280b 2024-07-01  564: ---@param c Card
59c6f5280b 2024-07-01  565: function Card.GetSummonType(c) end
59c6f5280b 2024-07-01  566: 
59c6f5280b 2024-07-01  567: ---返回c的召唤/特殊召唤的位置
59c6f5280b 2024-07-01  568: ---@return integer
59c6f5280b 2024-07-01  569: ---@param c Card
59c6f5280b 2024-07-01  570: function Card.GetSummonLocation(c) end
59c6f5280b 2024-07-01  571: 
59c6f5280b 2024-07-01  572: ---返回召唤/特殊召唤 c 上场的玩家
59c6f5280b 2024-07-01  573: ---@return integer
59c6f5280b 2024-07-01  574: ---@param c Card
59c6f5280b 2024-07-01  575: function Card.GetSummonPlayer(c) end
59c6f5280b 2024-07-01  576: 
59c6f5280b 2024-07-01  577: ---返回c位置变化的目的地
59c6f5280b 2024-07-01  578: ---此函数仅在处理位置转移代替效果时有效
59c6f5280b 2024-07-01  579: ---@return integer
59c6f5280b 2024-07-01  580: ---@param c Card
59c6f5280b 2024-07-01  581: function Card.GetDestination(c) end
59c6f5280b 2024-07-01  582: 
59c6f5280b 2024-07-01  583: ---返回c离场时因改变去向的效果(如大宇宙)的目的地
59c6f5280b 2024-07-01  584: ---@return integer
59c6f5280b 2024-07-01  585: ---@param c Card
59c6f5280b 2024-07-01  586: function Card.GetLeaveFieldDest(c) end
59c6f5280b 2024-07-01  587: 
59c6f5280b 2024-07-01  588: ---返回c转移到当前位置的回合
59c6f5280b 2024-07-01  589: ---@return integer
59c6f5280b 2024-07-01  590: ---@param c Card
59c6f5280b 2024-07-01  591: function Card.GetTurnID(c) end
59c6f5280b 2024-07-01  592: 
59c6f5280b 2024-07-01  593: ---返回c转移到当前位置的时间标识
59c6f5280b 2024-07-01  594: ---此数值唯一,越小表示c是越早出现在那个位置
59c6f5280b 2024-07-01  595: ---卡片从里侧翻开也会改变此数值
59c6f5280b 2024-07-01  596: ---@return integer
59c6f5280b 2024-07-01  597: ---@param c Card
59c6f5280b 2024-07-01  598: function Card.GetFieldID(c) end
59c6f5280b 2024-07-01  599: 
59c6f5280b 2024-07-01  600: ---返回c转移到当前位置的真实的时间标识
59c6f5280b 2024-07-01  601: ---卡片从里侧翻开不会改变此数值
59c6f5280b 2024-07-01  602: ---@return integer
59c6f5280b 2024-07-01  603: ---@param c Card
59c6f5280b 2024-07-01  604: function Card.GetRealFieldID(c) end
59c6f5280b 2024-07-01  605: 
59c6f5280b 2024-07-01  606: ---检查c是否在规则上当做code使用
59c6f5280b 2024-07-01  607: ---@return boolean
59c6f5280b 2024-07-01  608: ---@param c Card
59c6f5280b 2024-07-01  609: ---@param code integer
59c6f5280b 2024-07-01  610: function Card.IsOriginalCodeRule(c,code) end
59c6f5280b 2024-07-01  611: 
59c6f5280b 2024-07-01  612: ---检查c的卡号是否是 code1[, 或者为 code2...]
59c6f5280b 2024-07-01  613: ---@return boolean
59c6f5280b 2024-07-01  614: ---@param c Card
59c6f5280b 2024-07-01  615: ---@param code1 integer
59c6f5280b 2024-07-01  616: ---@param code2? integer
59c6f5280b 2024-07-01  617: ---@param ...? integer
59c6f5280b 2024-07-01  618: function Card.IsCode(c,code1,code2,...) end
59c6f5280b 2024-07-01  619: 
59c6f5280b 2024-07-01  620: ---检查c是否属于类型type
59c6f5280b 2024-07-01  621: ---@return boolean
59c6f5280b 2024-07-01  622: ---@param c Card
59c6f5280b 2024-07-01  623: ---@param type integer
59c6f5280b 2024-07-01  624: function Card.IsType(c,type) end
59c6f5280b 2024-07-01  625: 
59c6f5280b 2024-07-01  626: ---检查c用作融合素材时是否属于类型type(与IsType的区别在于对于魔陷区的怪兽卡,用其原本类型作判断)
59c6f5280b 2024-07-01  627: ---@return boolean
59c6f5280b 2024-07-01  628: ---@param c Card
59c6f5280b 2024-07-01  629: ---@param type integer
59c6f5280b 2024-07-01  630: function Card.IsFusionType(c,type) end
59c6f5280b 2024-07-01  631: 
59c6f5280b 2024-07-01  632: ---检查c用作同调素材时是否属于类型type(与IsType的区别在于对于魔陷区的怪兽卡,用其原本类型作判断)
59c6f5280b 2024-07-01  633: ---@return boolean
59c6f5280b 2024-07-01  634: ---@param c Card
59c6f5280b 2024-07-01  635: ---@param type integer
59c6f5280b 2024-07-01  636: function Card.IsSynchroType(c,type) end
59c6f5280b 2024-07-01  637: 
59c6f5280b 2024-07-01  638: ---检查c用作XYZ素材时是否属于类型type(与IsType的区别在于对于魔陷区的怪兽卡,用其原本类型作判断)
59c6f5280b 2024-07-01  639: ---@return boolean
59c6f5280b 2024-07-01  640: ---@param c Card
59c6f5280b 2024-07-01  641: ---@param type integer
59c6f5280b 2024-07-01  642: function Card.IsXyzType(c,type) end
59c6f5280b 2024-07-01  643: 
59c6f5280b 2024-07-01  644: ---检查c用作连接素材时是否属于类型type(与IsType的区别在于对于魔陷区的怪兽卡,用其原本类型作判断)
59c6f5280b 2024-07-01  645: ---@return boolean
59c6f5280b 2024-07-01  646: ---@param c Card
59c6f5280b 2024-07-01  647: ---@param type integer
59c6f5280b 2024-07-01  648: function Card.IsLinkType(c,type) end
59c6f5280b 2024-07-01  649: 
59c6f5280b 2024-07-01  650: ---检查c是否是等级 level1[, 或者为 level2...]
59c6f5280b 2024-07-01  651: ---@return boolean
59c6f5280b 2024-07-01  652: ---@param c Card
59c6f5280b 2024-07-01  653: ---@param level1 integer
59c6f5280b 2024-07-01  654: ---@param level2? integer
59c6f5280b 2024-07-01  655: ---@param ...? integer
59c6f5280b 2024-07-01  656: function Card.IsLevel(c,level1,level2,...) end
59c6f5280b 2024-07-01  657: 
59c6f5280b 2024-07-01  658: ---检查c是否是阶级 rank1[, 或者为 rank2...]
59c6f5280b 2024-07-01  659: ---@return boolean
59c6f5280b 2024-07-01  660: ---@param c Card
59c6f5280b 2024-07-01  661: ---@param rank1 integer
59c6f5280b 2024-07-01  662: ---@param rank2? integer
59c6f5280b 2024-07-01  663: ---@param ...? integer
59c6f5280b 2024-07-01  664: function Card.IsRank(c,rank1,rank2,...) end
59c6f5280b 2024-07-01  665: 
59c6f5280b 2024-07-01  666: ---检查c的连接标记数量是否是 link1[, 或者为 link2...]
59c6f5280b 2024-07-01  667: ---@return boolean
59c6f5280b 2024-07-01  668: ---@param c Card
59c6f5280b 2024-07-01  669: ---@param link1 integer
59c6f5280b 2024-07-01  670: ---@param link2? integer
59c6f5280b 2024-07-01  671: ---@param ...? integer
59c6f5280b 2024-07-01  672: function Card.IsLink(c,link1,link2,...) end
59c6f5280b 2024-07-01  673: 
59c6f5280b 2024-07-01  674: ---检查c的攻击力是否是 atk1[, 或者为 atk2...],如果c不是怪兽卡,或者不在 LOCATION_MZONE 则都返回false
59c6f5280b 2024-07-01  675: ---@return boolean
59c6f5280b 2024-07-01  676: ---@param c Card
59c6f5280b 2024-07-01  677: ---@param atk1 integer
59c6f5280b 2024-07-01  678: ---@param atk2? integer
59c6f5280b 2024-07-01  679: ---@param ...? integer
59c6f5280b 2024-07-01  680: function Card.IsAttack(c,atk1,atk2,...) end
59c6f5280b 2024-07-01  681: 
59c6f5280b 2024-07-01  682: ---检查c的守备力是否是 def1[, 或者为 def2...],如果c不是怪兽卡,或者不在 LOCATION_MZONE 则都返回false
59c6f5280b 2024-07-01  683: ---@return boolean
59c6f5280b 2024-07-01  684: ---@param c Card
59c6f5280b 2024-07-01  685: ---@param def integer
59c6f5280b 2024-07-01  686: ---@param atk2? integer
59c6f5280b 2024-07-01  687: ---@param ...? integer
59c6f5280b 2024-07-01  688: function Card.IsDefense(c,def,atk2,...) end
59c6f5280b 2024-07-01  689: 
59c6f5280b 2024-07-01  690: ---检查c是否属于种族race
59c6f5280b 2024-07-01  691: ---@return boolean
59c6f5280b 2024-07-01  692: ---@param c Card
59c6f5280b 2024-07-01  693: ---@param race integer
59c6f5280b 2024-07-01  694: function Card.IsRace(c,race) end
59c6f5280b 2024-07-01  695: 
59c6f5280b 2024-07-01  696: ---检查c[由player连接召唤时]用作连接素材时是否属于种族race
59c6f5280b 2024-07-01  697: ---@return boolean
59c6f5280b 2024-07-01  698: ---@param c Card
59c6f5280b 2024-07-01  699: ---@param race integer
59c6f5280b 2024-07-01  700: ---@param player? integer
59c6f5280b 2024-07-01  701: function Card.IsLinkRace(c,race,player) end
59c6f5280b 2024-07-01  702: 
59c6f5280b 2024-07-01  703: ---检查c是否属于属性attribute
59c6f5280b 2024-07-01  704: ---@return boolean
59c6f5280b 2024-07-01  705: ---@param c Card
59c6f5280b 2024-07-01  706: ---@param attribute integer
59c6f5280b 2024-07-01  707: function Card.IsAttribute(c,attribute) end
59c6f5280b 2024-07-01  708: 
59c6f5280b 2024-07-01  709: ---检查c[由player融合召唤时]用作融合素材是否属于属性attribute
59c6f5280b 2024-07-01  710: ---@return boolean
59c6f5280b 2024-07-01  711: ---@param c Card
59c6f5280b 2024-07-01  712: ---@param attribute integer
59c6f5280b 2024-07-01  713: ---@param player? integer
59c6f5280b 2024-07-01  714: function Card.IsFusionAttribute(c,attribute,player) end
59c6f5280b 2024-07-01  715: 
59c6f5280b 2024-07-01  716: ---检查c[由player连接召唤时]用作连接素材是否属于属性attribute
59c6f5280b 2024-07-01  717: ---@return boolean
59c6f5280b 2024-07-01  718: ---@param c Card
59c6f5280b 2024-07-01  719: ---@param attribute integer
59c6f5280b 2024-07-01  720: ---@param player? integer
59c6f5280b 2024-07-01  721: function Card.IsLinkAttribute(c,attribute,player) end
59c6f5280b 2024-07-01  722: 
59c6f5280b 2024-07-01  723: ---检查c是否有attribute以外的属性
59c6f5280b 2024-07-01  724: ---(如暗黑神鸟同时具有暗和风属性,not IsAttribute(暗)是false,但IsNonAttribute(暗)是true)
59c6f5280b 2024-07-01  725: ---@return boolean
59c6f5280b 2024-07-01  726: ---@param c Card
59c6f5280b 2024-07-01  727: ---@param attribute integer
59c6f5280b 2024-07-01  728: function Card.IsNonAttribute(c,attribute) end
59c6f5280b 2024-07-01  729: 
59c6f5280b 2024-07-01  730: ---检查c原本是否为融合·同调·XYZ·连接怪兽。这个函数只检查类型,不关心被检查的怪兽的现状。
59c6f5280b 2024-07-01  731: ---@return boolean
59c6f5280b 2024-07-01  732: ---@param c Card
59c6f5280b 2024-07-01  733: function Card.IsExtraDeckMonster(c) end
59c6f5280b 2024-07-01  734: 
59c6f5280b 2024-07-01  735: ---检查c是否包含原因reason
59c6f5280b 2024-07-01  736: ---@return boolean
59c6f5280b 2024-07-01  737: ---@param c Card
59c6f5280b 2024-07-01  738: ---@param reason integer
59c6f5280b 2024-07-01  739: function Card.IsReason(c,reason) end
59c6f5280b 2024-07-01  740: 
59c6f5280b 2024-07-01  741: ---检查c的召唤类型是否是sumtype
59c6f5280b 2024-07-01  742: ---@return boolean
59c6f5280b 2024-07-01  743: ---@param c Card
59c6f5280b 2024-07-01  744: ---@param sumtype integer
59c6f5280b 2024-07-01  745: function Card.IsSummonType(c,sumtype) end
59c6f5280b 2024-07-01  746: 
59c6f5280b 2024-07-01  747: ---检查c召唤·特殊召唤的位置是否为loc
59c6f5280b 2024-07-01  748: ---@return boolean
59c6f5280b 2024-07-01  749: ---@param c Card
59c6f5280b 2024-07-01  750: ---@param loc integer
59c6f5280b 2024-07-01  751: function Card.IsSummonLocation(c,loc) end
59c6f5280b 2024-07-01  752: 
59c6f5280b 2024-07-01  753: ---检查将c召唤·特殊召唤的玩家是否为player
59c6f5280b 2024-07-01  754: ---@return boolean
59c6f5280b 2024-07-01  755: ---@param c Card
59c6f5280b 2024-07-01  756: ---@param player integer
59c6f5280b 2024-07-01  757: function Card.IsSummonPlayer(c,player) end
59c6f5280b 2024-07-01  758: 
59c6f5280b 2024-07-01  759: ---检查c是否包含某个状态码
59c6f5280b 2024-07-01  760: ---@return boolean
59c6f5280b 2024-07-01  761: ---@param c Card
59c6f5280b 2024-07-01  762: ---@param status integer
59c6f5280b 2024-07-01  763: function Card.IsStatus(c,status) end
59c6f5280b 2024-07-01  764: 
59c6f5280b 2024-07-01  765: ---检查c是否可以当成非调整来使用
59c6f5280b 2024-07-01  766: ---@return boolean
59c6f5280b 2024-07-01  767: ---@param c Card
59c6f5280b 2024-07-01  768: function Card.IsNotTuner(c) end
59c6f5280b 2024-07-01  769: 
59c6f5280b 2024-07-01  770: ---检查c是否是调整怪兽。
59c6f5280b 2024-07-01  771: ---除了检查TYPE_TUNER以外,还会检查其身上所有能让其变为调整怪兽的效果。
59c6f5280b 2024-07-01  772: ---@return boolean
59c6f5280b 2024-07-01  773: ---@param c Card
59c6f5280b 2024-07-01  774: function Card.IsTuner(c) end
59c6f5280b 2024-07-01  775: 
59c6f5280b 2024-07-01  776: ---给c设置或者取消状态码
59c6f5280b 2024-07-01  777: ---除非妳清楚的了解每个状态码的含意,否则不要轻易使用此函数
59c6f5280b 2024-07-01  778: ---@param c Card
59c6f5280b 2024-07-01  779: ---@param state integer
59c6f5280b 2024-07-01  780: ---@param enable boolean
59c6f5280b 2024-07-01  781: function Card.SetStatus(c,state,enable) end
59c6f5280b 2024-07-01  782: 
59c6f5280b 2024-07-01  783: ---检查c属否处于再召唤状态
59c6f5280b 2024-07-01  784: ---@return boolean
59c6f5280b 2024-07-01  785: ---@param c Card
59c6f5280b 2024-07-01  786: function Card.IsDualState(c) end
59c6f5280b 2024-07-01  787: 
59c6f5280b 2024-07-01  788: ---把c设置成再召唤状态
59c6f5280b 2024-07-01  789: ---@param c Card
59c6f5280b 2024-07-01  790: function Card.EnableDualState(c) end
59c6f5280b 2024-07-01  791: 
59c6f5280b 2024-07-01  792: ---设置c的回合计数器(光之护封剑等)
59c6f5280b 2024-07-01  793: ---@param c Card
59c6f5280b 2024-07-01  794: ---@param counter integer
59c6f5280b 2024-07-01  795: function Card.SetTurnCounter(c,counter) end
59c6f5280b 2024-07-01  796: 
59c6f5280b 2024-07-01  797: ---返回c的回合计数器
59c6f5280b 2024-07-01  798: ---@return integer
59c6f5280b 2024-07-01  799: ---@param c Card
59c6f5280b 2024-07-01  800: function Card.GetTurnCounter(c) end
59c6f5280b 2024-07-01  801: 
59c6f5280b 2024-07-01  802: ---把g中的所有卡作为c的素材(上级召唤,特殊召唤)
59c6f5280b 2024-07-01  803: ---@param c Card
59c6f5280b 2024-07-01  804: ---@param g Group|nil
59c6f5280b 2024-07-01  805: function Card.SetMaterial(c,g) end
59c6f5280b 2024-07-01  806: 
59c6f5280b 2024-07-01  807: ---返回c出场使用的素材
59c6f5280b 2024-07-01  808: ---@return Group
59c6f5280b 2024-07-01  809: ---@param c Card
59c6f5280b 2024-07-01  810: function Card.GetMaterial(c) end
59c6f5280b 2024-07-01  811: 
59c6f5280b 2024-07-01  812: ---返回c出场使用的素材数量
59c6f5280b 2024-07-01  813: ---@return integer
59c6f5280b 2024-07-01  814: ---@param c Card
59c6f5280b 2024-07-01  815: function Card.GetMaterialCount(c) end
59c6f5280b 2024-07-01  816: 
59c6f5280b 2024-07-01  817: ---返回c当前装备着的卡片组
59c6f5280b 2024-07-01  818: ---@return Group
59c6f5280b 2024-07-01  819: ---@param c Card
59c6f5280b 2024-07-01  820: function Card.GetEquipGroup(c) end
59c6f5280b 2024-07-01  821: 
59c6f5280b 2024-07-01  822: ---返回c当前装备着的卡片数量
59c6f5280b 2024-07-01  823: ---@return integer
59c6f5280b 2024-07-01  824: ---@param c Card
59c6f5280b 2024-07-01  825: function Card.GetEquipCount(c) end
59c6f5280b 2024-07-01  826: 
59c6f5280b 2024-07-01  827: ---返回c当前的装备对象
59c6f5280b 2024-07-01  828: ---@return Card
59c6f5280b 2024-07-01  829: ---@param c Card
59c6f5280b 2024-07-01  830: function Card.GetEquipTarget(c) end
59c6f5280b 2024-07-01  831: 
59c6f5280b 2024-07-01  832: ---返回c之前的装备对象
59c6f5280b 2024-07-01  833: ---@return Card
59c6f5280b 2024-07-01  834: ---@param c Card
59c6f5280b 2024-07-01  835: function Card.GetPreviousEquipTarget(c) end
59c6f5280b 2024-07-01  836: 
59c6f5280b 2024-07-01  837: ---检查c2是否是c1的正确的装备对象
59c6f5280b 2024-07-01  838: ---##由EFFECT_EQUIP_LIMIT效果或同盟状态确定
59c6f5280b 2024-07-01  839: ---@return boolean
59c6f5280b 2024-07-01  840: ---@param c1 Card
59c6f5280b 2024-07-01  841: ---@param c2 Card
59c6f5280b 2024-07-01  842: function Card.CheckEquipTarget(c1,c2) end
59c6f5280b 2024-07-01  843: 
59c6f5280b 2024-07-01  844: ---检查ec是否为c的有效同盟装备对象。会检查EFFECT_UNION_LIMIT影响和新旧同盟影响。
59c6f5280b 2024-07-01  845: ---@return Card
59c6f5280b 2024-07-01  846: ---@param c Card
59c6f5280b 2024-07-01  847: ---@param ec Card
59c6f5280b 2024-07-01  848: function Card.CheckUnionTarget(c,ec) end
59c6f5280b 2024-07-01  849: 
59c6f5280b 2024-07-01  850: ---返回c当前装备的同盟卡数量、旧同盟卡数量
59c6f5280b 2024-07-01  851: ---@return integer
59c6f5280b 2024-07-01  852: ---@return integer
59c6f5280b 2024-07-01  853: ---@param c Card
59c6f5280b 2024-07-01  854: function Card.GetUnionCount(c) end
59c6f5280b 2024-07-01  855: 
59c6f5280b 2024-07-01  856: ---返回c当前叠放着的卡片组
59c6f5280b 2024-07-01  857: ---@return Group
59c6f5280b 2024-07-01  858: ---@param c Card
59c6f5280b 2024-07-01  859: function Card.GetOverlayGroup(c) end
59c6f5280b 2024-07-01  860: 
59c6f5280b 2024-07-01  861: ---返回c当前叠放着的卡片数量
59c6f5280b 2024-07-01  862: ---@return integer
59c6f5280b 2024-07-01  863: ---@param c Card
59c6f5280b 2024-07-01  864: function Card.GetOverlayCount(c) end
59c6f5280b 2024-07-01  865: 
59c6f5280b 2024-07-01  866: ---返回以c为XYZ素材的卡
59c6f5280b 2024-07-01  867: ---@return Card
59c6f5280b 2024-07-01  868: ---@param c Card
59c6f5280b 2024-07-01  869: function Card.GetOverlayTarget(c) end
59c6f5280b 2024-07-01  870: 
59c6f5280b 2024-07-01  871: ---检查玩家player能否以reason为原因,至少移除c叠放的count张卡
59c6f5280b 2024-07-01  872: ---@return boolean
59c6f5280b 2024-07-01  873: ---@param c Card
59c6f5280b 2024-07-01  874: ---@param player integer
59c6f5280b 2024-07-01  875: ---@param count integer
59c6f5280b 2024-07-01  876: ---@param reason integer
59c6f5280b 2024-07-01  877: function Card.CheckRemoveOverlayCard(c,player,count,reason) end
59c6f5280b 2024-07-01  878: 
59c6f5280b 2024-07-01  879: ---以reason为原因,让玩家player移除c叠放的min-max张卡,返回值表示移除的数量
59c6f5280b 2024-07-01  880: ---@return integer
59c6f5280b 2024-07-01  881: ---@param c Card
59c6f5280b 2024-07-01  882: ---@param player integer
59c6f5280b 2024-07-01  883: ---@param min integer
59c6f5280b 2024-07-01  884: ---@param max integer
59c6f5280b 2024-07-01  885: ---@param reason integer
59c6f5280b 2024-07-01  886: function Card.RemoveOverlayCard(c,player,min,max,reason) end
59c6f5280b 2024-07-01  887: 
59c6f5280b 2024-07-01  888: ---返回c本回合攻击过的卡片组
59c6f5280b 2024-07-01  889: ---@return Group
59c6f5280b 2024-07-01  890: ---@param c Card
59c6f5280b 2024-07-01  891: function Card.GetAttackedGroup(c) end
59c6f5280b 2024-07-01  892: 
59c6f5280b 2024-07-01  893: ---返回c本回合攻击过的卡片数量
59c6f5280b 2024-07-01  894: ---@return integer
59c6f5280b 2024-07-01  895: ---@param c Card
59c6f5280b 2024-07-01  896: function Card.GetAttackedGroupCount(c) end
59c6f5280b 2024-07-01  897: 
59c6f5280b 2024-07-01  898: ---返回c本回合攻击过的次数
59c6f5280b 2024-07-01  899: ---注:如果此值与上一个函数的返回值不同,那么说明此卡本回合进行过直接攻击
59c6f5280b 2024-07-01  900: ---@return integer
59c6f5280b 2024-07-01  901: ---@param c Card
59c6f5280b 2024-07-01  902: function Card.GetAttackedCount(c) end
59c6f5280b 2024-07-01  903: 
59c6f5280b 2024-07-01  904: ---返回与c本回合进行过战斗的卡片组
59c6f5280b 2024-07-01  905: ---进行过战斗指发生过伤害的计算,用于剑斗兽等卡的判定
59c6f5280b 2024-07-01  906: ---@return Group
59c6f5280b 2024-07-01  907: ---@param c Card
59c6f5280b 2024-07-01  908: function Card.GetBattledGroup(c) end
59c6f5280b 2024-07-01  909: 
59c6f5280b 2024-07-01  910: ---返回与c本回合进行过战斗的的卡片数量
59c6f5280b 2024-07-01  911: ---@return integer
59c6f5280b 2024-07-01  912: ---@param c Card
59c6f5280b 2024-07-01  913: function Card.GetBattledGroupCount(c) end
59c6f5280b 2024-07-01  914: 
59c6f5280b 2024-07-01  915: ---返回c本回合攻击宣言的次数
59c6f5280b 2024-07-01  916: ---注:攻击被无效不会被计入攻击过的次数,但是会计入攻击宣言的次数
59c6f5280b 2024-07-01  917: ---@return integer
59c6f5280b 2024-07-01  918: ---@param c Card
59c6f5280b 2024-07-01  919: function Card.GetAttackAnnouncedCount(c) end
59c6f5280b 2024-07-01  920: 
59c6f5280b 2024-07-01  921: ---检查c是否直接攻击过
59c6f5280b 2024-07-01  922: ---@return boolean
59c6f5280b 2024-07-01  923: ---@param c Card
59c6f5280b 2024-07-01  924: function Card.IsDirectAttacked(c) end
59c6f5280b 2024-07-01  925: 
59c6f5280b 2024-07-01  926: ---把c2作为c1的永续对象
59c6f5280b 2024-07-01  927: ---c1和c2的联系会在c1或c2任意一卡离场或变成里侧表示时reset
59c6f5280b 2024-07-01  928: ---@param c1 Card
59c6f5280b 2024-07-01  929: ---@param c2 Card
59c6f5280b 2024-07-01  930: function Card.SetCardTarget(c1,c2) end
59c6f5280b 2024-07-01  931: 
59c6f5280b 2024-07-01  932: ---返回c当前所有的永续对象
59c6f5280b 2024-07-01  933: ---@return Group
59c6f5280b 2024-07-01  934: ---@param c Card
59c6f5280b 2024-07-01  935: function Card.GetCardTarget(c) end
59c6f5280b 2024-07-01  936: 
59c6f5280b 2024-07-01  937: ---返回c当前第一个永续对象,没有则返回 nil
59c6f5280b 2024-07-01  938: ---@return Card
59c6f5280b 2024-07-01  939: ---@param c Card
59c6f5280b 2024-07-01  940: function Card.GetFirstCardTarget(c) end
59c6f5280b 2024-07-01  941: 
59c6f5280b 2024-07-01  942: ---返回c当前的永续对象的数量
59c6f5280b 2024-07-01  943: ---@return integer
59c6f5280b 2024-07-01  944: ---@param c Card
59c6f5280b 2024-07-01  945: function Card.GetCardTargetCount(c) end
59c6f5280b 2024-07-01  946: 
59c6f5280b 2024-07-01  947: ---检查c2是否取c1为永续对象
59c6f5280b 2024-07-01  948: ---@return boolean
59c6f5280b 2024-07-01  949: ---@param c1 Card
59c6f5280b 2024-07-01  950: ---@param c2 Card
59c6f5280b 2024-07-01  951: function Card.IsHasCardTarget(c1,c2) end
59c6f5280b 2024-07-01  952: 
59c6f5280b 2024-07-01  953: ---取消c2为c1的永续对象
59c6f5280b 2024-07-01  954: ---@param c1 Card
59c6f5280b 2024-07-01  955: ---@param c2 Card
59c6f5280b 2024-07-01  956: function Card.CancelCardTarget(c1,c2) end
59c6f5280b 2024-07-01  957: 
59c6f5280b 2024-07-01  958: ---返回取c作为永续对象的所有卡
59c6f5280b 2024-07-01  959: ---@return Group
59c6f5280b 2024-07-01  960: ---@param c Card
59c6f5280b 2024-07-01  961: function Card.GetOwnerTarget(c) end
59c6f5280b 2024-07-01  962: 
59c6f5280b 2024-07-01  963: ---返回取c作为永续对象的卡的数量
59c6f5280b 2024-07-01  964: ---@return integer
59c6f5280b 2024-07-01  965: ---@param c Card
59c6f5280b 2024-07-01  966: function Card.GetOwnerTargetCount(c) end
59c6f5280b 2024-07-01  967: 
59c6f5280b 2024-07-01  968: ---返回c的“卡片发动”的效果,即类型为EFFECT_TYPE_ACTIVATE的效果
59c6f5280b 2024-07-01  969: ---仅对魔法和陷阱有效
59c6f5280b 2024-07-01  970: ---@return Effect
59c6f5280b 2024-07-01  971: ---@return ...? Effect
59c6f5280b 2024-07-01  972: ---@param c Card
59c6f5280b 2024-07-01  973: function Card.GetActivateEffect(c) end
59c6f5280b 2024-07-01  974: 
59c6f5280b 2024-07-01  975: ---返回c的可以发动时机正确的“卡的发动”的效果,neglect_con=true则无视发动条件,neglect_cost=true则无视发动cost
59c6f5280b 2024-07-01  976: ---copy_info=false或者自由时点的效果则只返回这个效果 e
59c6f5280b 2024-07-01  977: ---否则还返回这个效果的触发时点的信息 e,eg,ep,ev,re,r,rp
59c6f5280b 2024-07-01  978: ---@return Effect
59c6f5280b 2024-07-01  979: ---@return Group|nil
59c6f5280b 2024-07-01  980: ---@return integer|nil
59c6f5280b 2024-07-01  981: ---@return integer|nil
59c6f5280b 2024-07-01  982: ---@return Effect|nil
59c6f5280b 2024-07-01  983: ---@return integer|nil
59c6f5280b 2024-07-01  984: ---@return integer|nil
59c6f5280b 2024-07-01  985: ---@param c Card
59c6f5280b 2024-07-01  986: ---@param neglect_con boolean
59c6f5280b 2024-07-01  987: ---@param neglect_cost boolean
59c6f5280b 2024-07-01  988: ---@param copy_info boolean
59c6f5280b 2024-07-01  989: function Card.CheckActivateEffect(c,neglect_con,neglect_cost,copy_info) end
59c6f5280b 2024-07-01  990: 
59c6f5280b 2024-07-01  991: ---如果卡片 c 受到同调素材限制效果 EFFECT_TUNER_MATERIAL_LIMIT 影响,则返回 Effect e,function target,int value,int min,int max ;否则返回nil
59c6f5280b 2024-07-01  992: ---@return nil|Effect
59c6f5280b 2024-07-01  993: ---@return function|nil
59c6f5280b 2024-07-01  994: ---@return integer|nil
59c6f5280b 2024-07-01  995: ---@return integer|nil
59c6f5280b 2024-07-01  996: ---@return integer|nil
59c6f5280b 2024-07-01  997: ---@param c Card
59c6f5280b 2024-07-01  998: function Card.GetTunerLimit(c) end
59c6f5280b 2024-07-01  999: 
59c6f5280b 2024-07-01 1000: ---如果卡片 c 受到手卡同调效果 EFFECT_HAND_SYNCHRO 影响,则返回 Effect e,function target,int min,int max ;否则返回nil
59c6f5280b 2024-07-01 1001: ---@return nil|Effect
59c6f5280b 2024-07-01 1002: ---@return function|nil
59c6f5280b 2024-07-01 1003: ---@return integer|nil
59c6f5280b 2024-07-01 1004: ---@return integer|nil
59c6f5280b 2024-07-01 1005: ---@param c Card
59c6f5280b 2024-07-01 1006: function Card.GetHandSynchro(c) end
59c6f5280b 2024-07-01 1007: 
59c6f5280b 2024-07-01 1008: ---把效果e注册给c,返回效果的全局id,并设置e的Handler为c
59c6f5280b 2024-07-01 1009: ---默认情况下注册时如果c带有免疫e的效果那么注册会失败
59c6f5280b 2024-07-01 1010: ---如果forced为true则不会检查c对e的免疫效果
59c6f5280b 2024-07-01 1011: ---@return integer
59c6f5280b 2024-07-01 1012: ---@param c Card
59c6f5280b 2024-07-01 1013: ---@param e Effect
59c6f5280b 2024-07-01 1014: ---@param forced? boolean default: false
59c6f5280b 2024-07-01 1015: function Card.RegisterEffect(c,e,forced) end
59c6f5280b 2024-07-01 1016: 
59c6f5280b 2024-07-01 1017: ---检查c是否受到效果种类是code的效果的影响
59c6f5280b 2024-07-01 1018: ---没有则返回nil
59c6f5280b 2024-07-01 1019: ---有则返回那些效果
59c6f5280b 2024-07-01 1020: ---@return Effect
59c6f5280b 2024-07-01 1021: ---@return ...? Effect
59c6f5280b 2024-07-01 1022: ---@param c Card
59c6f5280b 2024-07-01 1023: ---@param code integer
59c6f5280b 2024-07-01 1024: ---@param player? integer
59c6f5280b 2024-07-01 1025: function Card.IsHasEffect(c,code,player) end
59c6f5280b 2024-07-01 1026: 
59c6f5280b 2024-07-01 1027: ---以重置类型为reset_type、重置种类为reset_code手动重置c受到的效果的影响
59c6f5280b 2024-07-01 1028: ---reset_type只能是以下类型,对应的重置种类为
59c6f5280b 2024-07-01 1029: ---RESET_EVENT       发生事件重置        reset_code为事件
59c6f5280b 2024-07-01 1030: ---RESET_PHASE       阶段结束重置        reset_code为阶段
59c6f5280b 2024-07-01 1031: ---RESET_CODE        重置指定code的效果  reset_code为效果的种类code,只能重置EFFECT_TYPE_SINGLE的永续型效果
59c6f5280b 2024-07-01 1032: ---RESET_COPY        重置复制的效果      reset_code为copy_id
59c6f5280b 2024-07-01 1033: ---RESET_CARD        重置卡片的效果      reset_code为效果owner的卡号
59c6f5280b 2024-07-01 1034: ---@param c Card
59c6f5280b 2024-07-01 1035: ---@param reset_code integer
59c6f5280b 2024-07-01 1036: ---@param reset_type integer
59c6f5280b 2024-07-01 1037: function Card.ResetEffect(c,reset_code,reset_type) end
59c6f5280b 2024-07-01 1038: 
59c6f5280b 2024-07-01 1039: ---返回c受到影响的种类是code的效果的数量
59c6f5280b 2024-07-01 1040: ---@return integer
59c6f5280b 2024-07-01 1041: ---@param c Card
59c6f5280b 2024-07-01 1042: ---@param code integer
59c6f5280b 2024-07-01 1043: function Card.GetEffectCount(c,code) end
59c6f5280b 2024-07-01 1044: 
59c6f5280b 2024-07-01 1045: ---为c注册一个标识用效果
59c6f5280b 2024-07-01 1046: ---注:注册给卡的标识用效果不会用于系统,
59c6f5280b 2024-07-01 1047: ---即使code与内置效果code重合也不会影响,
59c6f5280b 2024-07-01 1048: ---并且类型总是EFFECT_TYPE_SINGLE,reset方法,property和一般的效果相同,
59c6f5280b 2024-07-01 1049: ---并且不会无效化,不受卡的免疫效果影响
59c6f5280b 2024-07-01 1050: ---@return Effect
59c6f5280b 2024-07-01 1051: ---@param c Card
59c6f5280b 2024-07-01 1052: ---@param code integer
59c6f5280b 2024-07-01 1053: ---@param reset_flag integer
59c6f5280b 2024-07-01 1054: ---@param property integer
59c6f5280b 2024-07-01 1055: ---@param reset_count integer
59c6f5280b 2024-07-01 1056: ---@param label? integer
59c6f5280b 2024-07-01 1057: ---@param desc? integer
59c6f5280b 2024-07-01 1058: function Card.RegisterFlagEffect(c,code,reset_flag,property,reset_count,label,desc) end
59c6f5280b 2024-07-01 1059: 
59c6f5280b 2024-07-01 1060: ---返回c的种类是code的标识效果的数量
59c6f5280b 2024-07-01 1061: ---@return integer
59c6f5280b 2024-07-01 1062: ---@param c Card
59c6f5280b 2024-07-01 1063: ---@param code integer
59c6f5280b 2024-07-01 1064: function Card.GetFlagEffect(c,code) end
59c6f5280b 2024-07-01 1065: 
59c6f5280b 2024-07-01 1066: ---手动清除c的种类是code的标识效果
59c6f5280b 2024-07-01 1067: ---@param c Card
59c6f5280b 2024-07-01 1068: ---@param code integer
59c6f5280b 2024-07-01 1069: function Card.ResetFlagEffect(c,code) end
59c6f5280b 2024-07-01 1070: 
59c6f5280b 2024-07-01 1071: ---返回c是否存在种类为code的标识效果,若有则设置第一个的Label属性为label
59c6f5280b 2024-07-01 1072: ---@return boolean
59c6f5280b 2024-07-01 1073: ---@param c Card
59c6f5280b 2024-07-01 1074: ---@param code integer
59c6f5280b 2024-07-01 1075: ---@param label integer
59c6f5280b 2024-07-01 1076: function Card.SetFlagEffectLabel(c,code,label) end
59c6f5280b 2024-07-01 1077: 
59c6f5280b 2024-07-01 1078: ---返回c的种类为code的每个标识效果的Label,没有此效果则返回nil
59c6f5280b 2024-07-01 1079: ---@return integer
59c6f5280b 2024-07-01 1080: ---@return ...? integer
59c6f5280b 2024-07-01 1081: ---@param c Card
59c6f5280b 2024-07-01 1082: ---@param code integer
59c6f5280b 2024-07-01 1083: function Card.GetFlagEffectLabel(c,code) end
59c6f5280b 2024-07-01 1084: 
59c6f5280b 2024-07-01 1085: ---为c1建立与c2的联系,此联系仅会由于c1发生RESET_EVENT的事件reset
59c6f5280b 2024-07-01 1086: ---@param c1 Card
59c6f5280b 2024-07-01 1087: ---@param c2 Card
59c6f5280b 2024-07-01 1088: ---@param reset_flag integer
59c6f5280b 2024-07-01 1089: function Card.CreateRelation(c1,c2,reset_flag) end
59c6f5280b 2024-07-01 1090: 
59c6f5280b 2024-07-01 1091: ---手动释放c1对于c2的联系
59c6f5280b 2024-07-01 1092: ---@param c1 Card
59c6f5280b 2024-07-01 1093: ---@param c2 Card
59c6f5280b 2024-07-01 1094: function Card.ReleaseRelation(c1,c2) end
59c6f5280b 2024-07-01 1095: 
59c6f5280b 2024-07-01 1096: ---为卡片c和效果e建立联系
59c6f5280b 2024-07-01 1097: ---@param c Card
59c6f5280b 2024-07-01 1098: ---@param e Effect
59c6f5280b 2024-07-01 1099: function Card.CreateEffectRelation(c,e) end
59c6f5280b 2024-07-01 1100: 
59c6f5280b 2024-07-01 1101: ---手动释放c与效果e的联系
59c6f5280b 2024-07-01 1102: ---@param c Card
59c6f5280b 2024-07-01 1103: ---@param e Effect
59c6f5280b 2024-07-01 1104: function Card.ReleaseEffectRelation(c,e) end
59c6f5280b 2024-07-01 1105: 
59c6f5280b 2024-07-01 1106: ---清空c所有联系的效果
59c6f5280b 2024-07-01 1107: ---@param c Card
59c6f5280b 2024-07-01 1108: function Card.ClearEffectRelation(c) end
59c6f5280b 2024-07-01 1109: 
59c6f5280b 2024-07-01 1110: ---检查c是否和效果e有联系
59c6f5280b 2024-07-01 1111: ---注:每次发动进入连锁的效果时,发动效果的卡,以及发动效果时指定的对象
59c6f5280b 2024-07-01 1112: ---(用Duel.SetTargetCard或者Duel.SelectTarget指定的,包括取对象和不取对象)
59c6f5280b 2024-07-01 1113: ---会自动与那个效果建立联系,一旦离场,联系会重置
59c6f5280b 2024-07-01 1114: ---@return boolean
59c6f5280b 2024-07-01 1115: ---@param c Card
59c6f5280b 2024-07-01 1116: ---@param e Effect
59c6f5280b 2024-07-01 1117: function Card.IsRelateToEffect(c,e) end
59c6f5280b 2024-07-01 1118: 
59c6f5280b 2024-07-01 1119: ---检查c是否和连锁chainc有联系
59c6f5280b 2024-07-01 1120: ---注:每次发动进入连锁的效果时,发动效果的卡,以及发动效果时指定的对象
59c6f5280b 2024-07-01 1121: ---(用Duel.SetTargetCard或者Duel.SelectTarget指定的,包括取对象和不取对象)
59c6f5280b 2024-07-01 1122: ---会自动与那个效果建立联系,一旦离场,联系会重置
59c6f5280b 2024-07-01 1123: ---@return boolean
59c6f5280b 2024-07-01 1124: ---@param c Card
59c6f5280b 2024-07-01 1125: ---@param chainc? integer default: 0
59c6f5280b 2024-07-01 1126: function Card.IsRelateToChain(c,chainc) end
59c6f5280b 2024-07-01 1127: 
59c6f5280b 2024-07-01 1128: ---检查c1是否和c2有联系
59c6f5280b 2024-07-01 1129: ---@return boolean
59c6f5280b 2024-07-01 1130: ---@param c1 Card
59c6f5280b 2024-07-01 1131: ---@param c2 Card
59c6f5280b 2024-07-01 1132: function Card.IsRelateToCard(c1,c2) end
59c6f5280b 2024-07-01 1133: 
59c6f5280b 2024-07-01 1134: ---检查c是否和本次战斗关联
59c6f5280b 2024-07-01 1135: ---注:此效果通常用于伤害计算后伤害阶段结束前,用于检查战斗的卡是否离场过
59c6f5280b 2024-07-01 1136: ---@return boolean
59c6f5280b 2024-07-01 1137: ---@param c Card
59c6f5280b 2024-07-01 1138: function Card.IsRelateToBattle(c) end
59c6f5280b 2024-07-01 1139: 
59c6f5280b 2024-07-01 1140: ---为c添加卡号是code的卡的可复制的效果,并且添加额外的reset条件
59c6f5280b 2024-07-01 1141: ---返回值是表示复制效果的代号id
59c6f5280b 2024-07-01 1142: ---@return integer
59c6f5280b 2024-07-01 1143: ---@param c Card
59c6f5280b 2024-07-01 1144: ---@param code integer
59c6f5280b 2024-07-01 1145: ---@param reset_flag integer
59c6f5280b 2024-07-01 1146: ---@param reset_count? integer default: 1
59c6f5280b 2024-07-01 1147: function Card.CopyEffect(c,code,reset_flag,reset_count) end
59c6f5280b 2024-07-01 1148: 
59c6f5280b 2024-07-01 1149: ---把c的效果替换为卡号是code的卡的效果,并且添加额外的reset条件
59c6f5280b 2024-07-01 1150: ---返回值是表示替换效果的代号id
59c6f5280b 2024-07-01 1151: ---@return integer
59c6f5280b 2024-07-01 1152: ---@param c Card
59c6f5280b 2024-07-01 1153: ---@param code integer
59c6f5280b 2024-07-01 1154: ---@param reset_flag integer
59c6f5280b 2024-07-01 1155: ---@param reset_count? integer default: 1
59c6f5280b 2024-07-01 1156: function Card.ReplaceEffect(c,code,reset_flag,reset_count) end
59c6f5280b 2024-07-01 1157: 
59c6f5280b 2024-07-01 1158: ---为c添加苏生限制
59c6f5280b 2024-07-01 1159: ---##实际上是不可复制、不会被无效的EFFECT_UNSUMMONABLE_CARD和EFFECT_REVIVE_LIMIT效果
59c6f5280b 2024-07-01 1160: ---@param c Card
59c6f5280b 2024-07-01 1161: function Card.EnableReviveLimit(c) end
59c6f5280b 2024-07-01 1162: 
59c6f5280b 2024-07-01 1163: ---使c完成正规的召唤手续
59c6f5280b 2024-07-01 1164: ---##此函数也可通过 c:SetStatus(STATUS_PROC_COMPLETE,true)实现
59c6f5280b 2024-07-01 1165: ---@param c Card
59c6f5280b 2024-07-01 1166: function Card.CompleteProcedure(c) end
59c6f5280b 2024-07-01 1167: 
59c6f5280b 2024-07-01 1168: ---检查c是否处于无效状态
59c6f5280b 2024-07-01 1169: ---@return boolean
59c6f5280b 2024-07-01 1170: ---@param c Card
59c6f5280b 2024-07-01 1171: function Card.IsDisabled(c) end
59c6f5280b 2024-07-01 1172: 
59c6f5280b 2024-07-01 1173: ---检查c是否是可被[效果 e]破坏的
59c6f5280b 2024-07-01 1174: ---@return boolean
59c6f5280b 2024-07-01 1175: ---@param c Card
59c6f5280b 2024-07-01 1176: ---@param e? Effect
59c6f5280b 2024-07-01 1177: function Card.IsDestructable(c,e) end
59c6f5280b 2024-07-01 1178: 
59c6f5280b 2024-07-01 1179: ---检查c是否是可通常召唤的卡
59c6f5280b 2024-07-01 1180: ---@return boolean
59c6f5280b 2024-07-01 1181: ---@param c Card
59c6f5280b 2024-07-01 1182: function Card.IsSummonableCard(c) end
59c6f5280b 2024-07-01 1183: 
59c6f5280b 2024-07-01 1184: ---检查c是否能以正规方法特殊召唤。
59c6f5280b 2024-07-01 1185: ---c必须有可特殊召唤的方式。
59c6f5280b 2024-07-01 1186: ---@return boolean
59c6f5280b 2024-07-01 1187: ---@param c Card
59c6f5280b 2024-07-01 1188: function Card.IsSpecialSummonableCard(c) end
59c6f5280b 2024-07-01 1189: 
59c6f5280b 2024-07-01 1190: ---检查c是否是可[用 sum_type 方式]融合召唤的卡
59c6f5280b 2024-07-01 1191: ---@return boolean
59c6f5280b 2024-07-01 1192: ---@param c Card
59c6f5280b 2024-07-01 1193: ---@param sum_type? integer
59c6f5280b 2024-07-01 1194: function Card.IsFusionSummonableCard(c,sum_type) end
59c6f5280b 2024-07-01 1195: 
59c6f5280b 2024-07-01 1196: ---检查是否可以对c[用 sum_type 方式]进行特殊召唤手续
59c6f5280b 2024-07-01 1197: ---@return boolean
59c6f5280b 2024-07-01 1198: ---@param c Card
59c6f5280b 2024-07-01 1199: ---@param sum_type? integer
59c6f5280b 2024-07-01 1200: function Card.IsSpecialSummonable(c,sum_type) end
59c6f5280b 2024-07-01 1201: 
59c6f5280b 2024-07-01 1202: ---检查是否可以以tuner作为调整,场上的卡[或mg]为同调素材对c进行同调召唤手续
59c6f5280b 2024-07-01 1203: ---如果tuner是nil,此函数与Card.IsSpecialSummonable作用相同
59c6f5280b 2024-07-01 1204: ---@return boolean
59c6f5280b 2024-07-01 1205: ---@param c Card
59c6f5280b 2024-07-01 1206: ---@param tuner Card|nil
59c6f5280b 2024-07-01 1207: ---@param mg? Group
59c6f5280b 2024-07-01 1208: function Card.IsSynchroSummonable(c,tuner,mg) end
59c6f5280b 2024-07-01 1209: 
59c6f5280b 2024-07-01 1210: ---检查是否可以在场上的卡[或mg][中选出 min-max 个XYZ素材]对c进行XYZ召唤手续
59c6f5280b 2024-07-01 1211: ---如果mg为nil,此函数与 c:IsSpecialSummonable(SUMMON_TYPE_XYZ)作用相同
59c6f5280b 2024-07-01 1212: ---@return boolean
59c6f5280b 2024-07-01 1213: ---@param c Card
59c6f5280b 2024-07-01 1214: ---@param mg Group|nil
59c6f5280b 2024-07-01 1215: ---@param min? integer default: 0
59c6f5280b 2024-07-01 1216: ---@param max? integer default: 0
59c6f5280b 2024-07-01 1217: function Card.IsXyzSummonable(c,mg,min,max) end
59c6f5280b 2024-07-01 1218: 
59c6f5280b 2024-07-01 1219: ---检查是否可以在场上的卡[或mg][中选出 min-max 个连接素材]对c进行连接召唤手续
59c6f5280b 2024-07-01 1220: ---如果mg为nil,此函数与 c:IsSpecialSummonable(SUMMON_TYPE_LINK)作用相同
59c6f5280b 2024-07-01 1221: ---@return boolean
59c6f5280b 2024-07-01 1222: ---@param c Card
59c6f5280b 2024-07-01 1223: ---@param mg Group|nil
59c6f5280b 2024-07-01 1224: ---@param min? integer default: 0
59c6f5280b 2024-07-01 1225: ---@param max? integer default: 0
59c6f5280b 2024-07-01 1226: function Card.IsLinkSummonable(c,mg,min,max) end
59c6f5280b 2024-07-01 1227: 
59c6f5280b 2024-07-01 1228: ---检查c是否可以进行通常召唤(不包含通常召唤的set),ignore_count=true则不检查召唤次数限制
59c6f5280b 2024-07-01 1229: ---e~=nil则检查c是否可以以效果e进行通常召唤,min表示至少需要的祭品数(用于区分妥协召唤与上级召唤),zone 表示必须要召唤到的区域
59c6f5280b 2024-07-01 1230: ---@return boolean
59c6f5280b 2024-07-01 1231: ---@param c Card
59c6f5280b 2024-07-01 1232: ---@param ignore_count boolean
59c6f5280b 2024-07-01 1233: ---@param e Effect|nil
59c6f5280b 2024-07-01 1234: ---@param min? integer default: 0
59c6f5280b 2024-07-01 1235: ---@param zone? integer default: 0x1f
59c6f5280b 2024-07-01 1236: function Card.IsSummonable(c,ignore_count,e,min,zone) end
59c6f5280b 2024-07-01 1237: 
59c6f5280b 2024-07-01 1238: ---检查c是否可进行通常召唤的set,ignore_count=true则不检查召唤次数限制
59c6f5280b 2024-07-01 1239: ---e~=nil则检查c是否可以以效果e进行通常召唤的set,min表示至少需要的祭品数(用于区分妥协召唤set与上级召唤set),zone 表示必须要放置到的区域
59c6f5280b 2024-07-01 1240: ---@return boolean
59c6f5280b 2024-07-01 1241: ---@param c Card
59c6f5280b 2024-07-01 1242: ---@param ignore_count boolean
59c6f5280b 2024-07-01 1243: ---@param e Effect|nil
59c6f5280b 2024-07-01 1244: ---@param min? integer default: 0
59c6f5280b 2024-07-01 1245: ---@param zone? integer default: 0x1f
59c6f5280b 2024-07-01 1246: function Card.IsMSetable(c,ignore_count,e,min,zone) end
59c6f5280b 2024-07-01 1247: 
59c6f5280b 2024-07-01 1248: ---检查c是否可以set到魔法陷阱区,ignore_field=true则无视魔陷区格子是否能使用的限制
59c6f5280b 2024-07-01 1249: ---@return boolean
59c6f5280b 2024-07-01 1250: ---@param c Card
59c6f5280b 2024-07-01 1251: ---@param ignore_field? boolean default: false
59c6f5280b 2024-07-01 1252: function Card.IsSSetable(c,ignore_field) end
59c6f5280b 2024-07-01 1253: 
59c6f5280b 2024-07-01 1254: ---检查c是否可以被玩家sumplayer用效果e[以sumtype方式和sumpos表示形式]特殊召唤[到玩家 toplayer 的区域zone]
59c6f5280b 2024-07-01 1255: ---如果nocheck是true则不检查c的召唤条件,如果nolimit是true则不检查c的苏生限制
59c6f5280b 2024-07-01 1256: ---@return boolean
59c6f5280b 2024-07-01 1257: ---@param c Card
59c6f5280b 2024-07-01 1258: ---@param e Effect
59c6f5280b 2024-07-01 1259: ---@param sumtype integer
59c6f5280b 2024-07-01 1260: ---@param sumplayer integer
59c6f5280b 2024-07-01 1261: ---@param nocheck boolean
59c6f5280b 2024-07-01 1262: ---@param nolimit boolean
59c6f5280b 2024-07-01 1263: ---@param sumpos? integer default: POS_FACEUP
59c6f5280b 2024-07-01 1264: ---@param toplayer? integer default: sumplayer
59c6f5280b 2024-07-01 1265: ---@param zone? integer default: 0xff
59c6f5280b 2024-07-01 1266: function Card.IsCanBeSpecialSummoned(c,e,sumtype,sumplayer,nocheck,nolimit,sumpos,toplayer,zone) end
59c6f5280b 2024-07-01 1267: 
59c6f5280b 2024-07-01 1268: ---检查c是否可以送去手卡
59c6f5280b 2024-07-01 1269: ---注:仅当卡片或者玩家受到“不能加入手卡”的效果的影响时(如雷王)此函数才返回false
59c6f5280b 2024-07-01 1270: ---##以下几个函数类似
59c6f5280b 2024-07-01 1271: ---@return boolean
59c6f5280b 2024-07-01 1272: ---@param c Card
59c6f5280b 2024-07-01 1273: function Card.IsAbleToHand(c) end
59c6f5280b 2024-07-01 1274: 
59c6f5280b 2024-07-01 1275: ---检查c是否可以送去卡组
59c6f5280b 2024-07-01 1276: ---@return boolean
59c6f5280b 2024-07-01 1277: ---@param c Card
59c6f5280b 2024-07-01 1278: function Card.IsAbleToDeck(c) end
59c6f5280b 2024-07-01 1279: 
59c6f5280b 2024-07-01 1280: ---检查c是否可以送去额外卡组
59c6f5280b 2024-07-01 1281: ---对于非融合、同调等额外怪兽或者非灵摆怪兽此函数均返回false
59c6f5280b 2024-07-01 1282: ---@return boolean
59c6f5280b 2024-07-01 1283: ---@param c Card
59c6f5280b 2024-07-01 1284: function Card.IsAbleToExtra(c) end
59c6f5280b 2024-07-01 1285: 
59c6f5280b 2024-07-01 1286: ---检查c是否可以送去墓地
59c6f5280b 2024-07-01 1287: ---@return boolean
59c6f5280b 2024-07-01 1288: ---@param c Card
59c6f5280b 2024-07-01 1289: function Card.IsAbleToGrave(c) end
59c6f5280b 2024-07-01 1290: 
59c6f5280b 2024-07-01 1291: ---检查c是否可以被玩家player除外
59c6f5280b 2024-07-01 1292: ---@return boolean
59c6f5280b 2024-07-01 1293: ---@param c Card
59c6f5280b 2024-07-01 1294: ---@param player? integer
59c6f5280b 2024-07-01 1295: ---@param pos? integer
59c6f5280b 2024-07-01 1296: ---@param reason? integer
59c6f5280b 2024-07-01 1297: function Card.IsAbleToRemove(c,player,pos,reason) end
59c6f5280b 2024-07-01 1298: 
59c6f5280b 2024-07-01 1299: ---检查c是否可以作为cost送去手卡
59c6f5280b 2024-07-01 1300: ---注:此函数会在Card.IsAbleToHand的基础上追加检测c的实际目的地
59c6f5280b 2024-07-01 1301: ---当c送往手卡会被送去其它地方时(如缩退回路适用中,或者c是融合、同调 等额外怪兽的一种),此函数返回false
59c6f5280b 2024-07-01 1302: ---##以下几个函数类似
59c6f5280b 2024-07-01 1303: ---@return boolean
59c6f5280b 2024-07-01 1304: ---@param c Card
59c6f5280b 2024-07-01 1305: function Card.IsAbleToHandAsCost(c) end
59c6f5280b 2024-07-01 1306: 
59c6f5280b 2024-07-01 1307: ---检查c是否可以作为cost送去卡组
59c6f5280b 2024-07-01 1308: ---@return boolean
59c6f5280b 2024-07-01 1309: ---@param c Card
59c6f5280b 2024-07-01 1310: function Card.IsAbleToDeckAsCost(c) end
59c6f5280b 2024-07-01 1311: 
59c6f5280b 2024-07-01 1312: ---检查c是否可以作为cost送去额外卡组,主卡组的灵摆卡会返回false
59c6f5280b 2024-07-01 1313: ---@return boolean
59c6f5280b 2024-07-01 1314: ---@param c Card
59c6f5280b 2024-07-01 1315: function Card.IsAbleToExtraAsCost(c) end
59c6f5280b 2024-07-01 1316: 
59c6f5280b 2024-07-01 1317: ---检查c是否可以作为cost送去卡组或额外卡组(用于新宇侠、剑斗兽融合怪兽的召唤手续检测)等价于 (c:IsAbleToDeckAsCost() or c:IsAbleToExtraAsCost())
59c6f5280b 2024-07-01 1318: ---@return boolean
59c6f5280b 2024-07-01 1319: ---@param c Card
59c6f5280b 2024-07-01 1320: function Card.IsAbleToDeckOrExtraAsCost(c) end
59c6f5280b 2024-07-01 1321: 
59c6f5280b 2024-07-01 1322: ---检查c是否可以作为cost送去墓地
59c6f5280b 2024-07-01 1323: ---@return boolean
59c6f5280b 2024-07-01 1324: ---@param c Card
59c6f5280b 2024-07-01 1325: function Card.IsAbleToGraveAsCost(c) end
59c6f5280b 2024-07-01 1326: 
59c6f5280b 2024-07-01 1327: ---检查c是否可以作为cost除外
59c6f5280b 2024-07-01 1328: ---@return boolean
59c6f5280b 2024-07-01 1329: ---@param c Card
59c6f5280b 2024-07-01 1330: function Card.IsAbleToRemoveAsCost(c) end
59c6f5280b 2024-07-01 1331: 
59c6f5280b 2024-07-01 1332: ---检查c是否可以被以原因reason解放(非上级召唤用)
59c6f5280b 2024-07-01 1333: ---@return boolean
59c6f5280b 2024-07-01 1334: ---@param c Card
59c6f5280b 2024-07-01 1335: ---@param reason? integer default: REASON_COST
59c6f5280b 2024-07-01 1336: function Card.IsReleasable(c,reason) end
59c6f5280b 2024-07-01 1337: 
59c6f5280b 2024-07-01 1338: ---检查c是否可以被效果解放
59c6f5280b 2024-07-01 1339: ---@return boolean
59c6f5280b 2024-07-01 1340: ---@param c Card
59c6f5280b 2024-07-01 1341: function Card.IsReleasableByEffect(c) end
59c6f5280b 2024-07-01 1342: 
59c6f5280b 2024-07-01 1343: ---检查c是否可以以reason原因丢弃
59c6f5280b 2024-07-01 1344: ---注:此函数仅用于检测,
59c6f5280b 2024-07-01 1345: ---以REASON_DISCARD作为原因把一张手卡送墓并不会导致那张卡不能丢弃
59c6f5280b 2024-07-01 1346: ---@return boolean
59c6f5280b 2024-07-01 1347: ---@param c Card
59c6f5280b 2024-07-01 1348: ---@param reason? integer default: REASON_COST
59c6f5280b 2024-07-01 1349: function Card.IsDiscardable(c,reason) end
59c6f5280b 2024-07-01 1350: 
59c6f5280b 2024-07-01 1351: ---检查c是否可以攻击
59c6f5280b 2024-07-01 1352: ---@return boolean
59c6f5280b 2024-07-01 1353: ---@param c Card
59c6f5280b 2024-07-01 1354: function Card.IsAttackable(c) end
59c6f5280b 2024-07-01 1355: 
59c6f5280b 2024-07-01 1356: ---检查c是否可以连续攻击,c的攻击宣言次数>=ac则返回false
59c6f5280b 2024-07-01 1357: ---monsteronly = true 则表示只能对怪兽攻击
59c6f5280b 2024-07-01 1358: ---注:当c因为闪光之双剑等效果进行过多次攻击之后此函数返回false
59c6f5280b 2024-07-01 1359: ---@return boolean
59c6f5280b 2024-07-01 1360: ---@param c Card
59c6f5280b 2024-07-01 1361: ---@param ac? integer
59c6f5280b 2024-07-01 1362: ---@param monsteronly? boolean
59c6f5280b 2024-07-01 1363: function Card.IsChainAttackable(c,ac,monsteronly) end
59c6f5280b 2024-07-01 1364: 
59c6f5280b 2024-07-01 1365: ---检查c是否是表侧表示
59c6f5280b 2024-07-01 1366: ---@return boolean
59c6f5280b 2024-07-01 1367: ---@param c Card
59c6f5280b 2024-07-01 1368: function Card.IsFaceup(c) end
59c6f5280b 2024-07-01 1369: 
59c6f5280b 2024-07-01 1370: ---检查c是否是表侧表示,在手卡墓地主卡组等处始终返回true
59c6f5280b 2024-07-01 1371: ---@return boolean
59c6f5280b 2024-07-01 1372: ---@param c Card
59c6f5280b 2024-07-01 1373: function Card.IsFaceupEx(c) end
59c6f5280b 2024-07-01 1374: 
59c6f5280b 2024-07-01 1375: ---检查c是否是攻击表示
59c6f5280b 2024-07-01 1376: ---@return boolean
59c6f5280b 2024-07-01 1377: ---@param c Card
59c6f5280b 2024-07-01 1378: function Card.IsAttackPos(c) end
59c6f5280b 2024-07-01 1379: 
59c6f5280b 2024-07-01 1380: ---检查c是否是里侧表示
59c6f5280b 2024-07-01 1381: ---@return boolean
59c6f5280b 2024-07-01 1382: ---@param c Card
59c6f5280b 2024-07-01 1383: function Card.IsFacedown(c) end
59c6f5280b 2024-07-01 1384: 
59c6f5280b 2024-07-01 1385: ---检查c是否是守备表示
59c6f5280b 2024-07-01 1386: ---@return boolean
59c6f5280b 2024-07-01 1387: ---@param c Card
59c6f5280b 2024-07-01 1388: function Card.IsDefensePos(c) end
59c6f5280b 2024-07-01 1389: 
59c6f5280b 2024-07-01 1390: ---检查c是否是表示形式pos
59c6f5280b 2024-07-01 1391: ---@return boolean
59c6f5280b 2024-07-01 1392: ---@param c Card
59c6f5280b 2024-07-01 1393: ---@param pos integer
59c6f5280b 2024-07-01 1394: function Card.IsPosition(c,pos) end
59c6f5280b 2024-07-01 1395: 
59c6f5280b 2024-07-01 1396: ---检查c位置变化之前是否是表示形式pos
59c6f5280b 2024-07-01 1397: ---@return boolean
59c6f5280b 2024-07-01 1398: ---@param c Card
59c6f5280b 2024-07-01 1399: ---@param pos integer
59c6f5280b 2024-07-01 1400: function Card.IsPreviousPosition(c,pos) end
59c6f5280b 2024-07-01 1401: 
59c6f5280b 2024-07-01 1402: ---检查c的当前控制着是否是controler
59c6f5280b 2024-07-01 1403: ---@return boolean
59c6f5280b 2024-07-01 1404: ---@param c Card
59c6f5280b 2024-07-01 1405: ---@param controler integer
59c6f5280b 2024-07-01 1406: function Card.IsControler(c,controler) end
59c6f5280b 2024-07-01 1407: 
59c6f5280b 2024-07-01 1408: ---检查c的上一个控制者是否为player
59c6f5280b 2024-07-01 1409: ---@return boolean
59c6f5280b 2024-07-01 1410: ---@param c Card
59c6f5280b 2024-07-01 1411: ---@param player integer
59c6f5280b 2024-07-01 1412: function Card.IsPreviousControler(c,player) end
59c6f5280b 2024-07-01 1413: 
59c6f5280b 2024-07-01 1414: ---检查c是否在场
59c6f5280b 2024-07-01 1415: ---注:当怪兽召唤,反转召唤,特殊召唤时召唤成功之前,此函数返回false
59c6f5280b 2024-07-01 1416: ---@return boolean
59c6f5280b 2024-07-01 1417: ---@param c Card
59c6f5280b 2024-07-01 1418: function Card.IsOnField(c) end
59c6f5280b 2024-07-01 1419: 
59c6f5280b 2024-07-01 1420: ---检查c当前位置是否是location
59c6f5280b 2024-07-01 1421: ---注:当怪兽召唤,反转召唤,特殊召唤时召唤成功之前,
59c6f5280b 2024-07-01 1422: ---并且location=LOCATION_MZONE时,此函数返回false
59c6f5280b 2024-07-01 1423: ---@return boolean
59c6f5280b 2024-07-01 1424: ---@param c Card
59c6f5280b 2024-07-01 1425: ---@param location integer
59c6f5280b 2024-07-01 1426: function Card.IsLocation(c,location) end
59c6f5280b 2024-07-01 1427: 
59c6f5280b 2024-07-01 1428: ---检查c之前的位置是否是location
59c6f5280b 2024-07-01 1429: ---@return boolean
59c6f5280b 2024-07-01 1430: ---@param c Card
59c6f5280b 2024-07-01 1431: ---@param location integer
59c6f5280b 2024-07-01 1432: function Card.IsPreviousLocation(c,location) end
59c6f5280b 2024-07-01 1433: 
59c6f5280b 2024-07-01 1434: ---检查c是否是等级level以下(至少为1)
59c6f5280b 2024-07-01 1435: ---@return boolean
59c6f5280b 2024-07-01 1436: ---@param c Card
59c6f5280b 2024-07-01 1437: ---@param level integer
59c6f5280b 2024-07-01 1438: function Card.IsLevelBelow(c,level) end
59c6f5280b 2024-07-01 1439: 
59c6f5280b 2024-07-01 1440: ---检查c是否是等级level以上
59c6f5280b 2024-07-01 1441: ---@return boolean
59c6f5280b 2024-07-01 1442: ---@param c Card
59c6f5280b 2024-07-01 1443: ---@param level integer
59c6f5280b 2024-07-01 1444: function Card.IsLevelAbove(c,level) end
59c6f5280b 2024-07-01 1445: 
59c6f5280b 2024-07-01 1446: ---检查c是否是阶级rank以下(至少为1)
59c6f5280b 2024-07-01 1447: ---@return boolean
59c6f5280b 2024-07-01 1448: ---@param c Card
59c6f5280b 2024-07-01 1449: ---@param rank integer
59c6f5280b 2024-07-01 1450: function Card.IsRankBelow(c,rank) end
59c6f5280b 2024-07-01 1451: 
59c6f5280b 2024-07-01 1452: ---检查c是否是阶级rank以上
59c6f5280b 2024-07-01 1453: ---@return boolean
59c6f5280b 2024-07-01 1454: ---@param c Card
59c6f5280b 2024-07-01 1455: ---@param rank integer
59c6f5280b 2024-07-01 1456: function Card.IsRankAbove(c,rank) end
59c6f5280b 2024-07-01 1457: 
59c6f5280b 2024-07-01 1458: ---检查c是否连接标记数量是link以下(至少为1)
59c6f5280b 2024-07-01 1459: ---@return boolean
59c6f5280b 2024-07-01 1460: ---@param c Card
59c6f5280b 2024-07-01 1461: ---@param link integer
59c6f5280b 2024-07-01 1462: function Card.IsLinkBelow(c,link) end
59c6f5280b 2024-07-01 1463: 
59c6f5280b 2024-07-01 1464: ---检查c是否连接标记数量是link以上
59c6f5280b 2024-07-01 1465: ---@return boolean
59c6f5280b 2024-07-01 1466: ---@param c Card
59c6f5280b 2024-07-01 1467: ---@param link integer
59c6f5280b 2024-07-01 1468: function Card.IsLinkAbove(c,link) end
59c6f5280b 2024-07-01 1469: 
59c6f5280b 2024-07-01 1470: ---检查c是否是攻击力atk以下(至少为0)
59c6f5280b 2024-07-01 1471: ---@return boolean
59c6f5280b 2024-07-01 1472: ---@param c Card
59c6f5280b 2024-07-01 1473: ---@param atk integer
59c6f5280b 2024-07-01 1474: function Card.IsAttackBelow(c,atk) end
59c6f5280b 2024-07-01 1475: 
59c6f5280b 2024-07-01 1476: ---检查c是否是攻击力atk以上
59c6f5280b 2024-07-01 1477: ---@return boolean
59c6f5280b 2024-07-01 1478: ---@param c Card
59c6f5280b 2024-07-01 1479: ---@param atk integer
59c6f5280b 2024-07-01 1480: function Card.IsAttackAbove(c,atk) end
59c6f5280b 2024-07-01 1481: 
59c6f5280b 2024-07-01 1482: ---检查c是否是守备力def以下(至少为0)
59c6f5280b 2024-07-01 1483: ---@return boolean
59c6f5280b 2024-07-01 1484: ---@param c Card
59c6f5280b 2024-07-01 1485: ---@param def integer
59c6f5280b 2024-07-01 1486: function Card.IsDefenseBelow(c,def) end
59c6f5280b 2024-07-01 1487: 
59c6f5280b 2024-07-01 1488: ---检查c是否是守备力def以上
59c6f5280b 2024-07-01 1489: ---@return boolean
59c6f5280b 2024-07-01 1490: ---@param c Card
59c6f5280b 2024-07-01 1491: ---@param def integer
59c6f5280b 2024-07-01 1492: function Card.IsDefenseAbove(c,def) end
59c6f5280b 2024-07-01 1493: 
59c6f5280b 2024-07-01 1494: ---检查c是否处于公开状态
59c6f5280b 2024-07-01 1495: ---@return boolean
59c6f5280b 2024-07-01 1496: ---@param c Card
59c6f5280b 2024-07-01 1497: function Card.IsPublic(c) end
59c6f5280b 2024-07-01 1498: 
59c6f5280b 2024-07-01 1499: ---检查c是否处于被宣言禁止状态
59c6f5280b 2024-07-01 1500: ---@return boolean
59c6f5280b 2024-07-01 1501: ---@param c Card
59c6f5280b 2024-07-01 1502: function Card.IsForbidden(c) end
59c6f5280b 2024-07-01 1503: 
59c6f5280b 2024-07-01 1504: ---检查c是否可以改变控制权
59c6f5280b 2024-07-01 1505: ---注:仅当卡收到了“不能改变控制权”的效果的影响时,此函数返回false
59c6f5280b 2024-07-01 1506: ---@return boolean
59c6f5280b 2024-07-01 1507: ---@param c Card
59c6f5280b 2024-07-01 1508: function Card.IsAbleToChangeControler(c) end
59c6f5280b 2024-07-01 1509: 
59c6f5280b 2024-07-01 1510: ---检查c的控制权是否可以改变。
59c6f5280b 2024-07-01 1511: ---ignore_mzone=true 会忽视转移控制权后的玩家场上是否有空格位, zone 表示必须要使用的位置
59c6f5280b 2024-07-01 1512: ---@return boolean
59c6f5280b 2024-07-01 1513: ---@param c Card
59c6f5280b 2024-07-01 1514: ---@param ignore_mzone? boolean default: false
59c6f5280b 2024-07-01 1515: ---@param zone? integer default: 0xff
59c6f5280b 2024-07-01 1516: function Card.IsControlerCanBeChanged(c,ignore_mzone,zone) end
59c6f5280b 2024-07-01 1517: 
59c6f5280b 2024-07-01 1518: ---为c放置count个countertype类型的指示物,singly为true表示逐个添加至上限为止
59c6f5280b 2024-07-01 1519: ---@return boolean
59c6f5280b 2024-07-01 1520: ---@param c Card
59c6f5280b 2024-07-01 1521: ---@param countertype integer
59c6f5280b 2024-07-01 1522: ---@param count integer
59c6f5280b 2024-07-01 1523: ---@param singly? integer default: false
59c6f5280b 2024-07-01 1524: function Card.AddCounter(c,countertype,count,singly) end
59c6f5280b 2024-07-01 1525: 
59c6f5280b 2024-07-01 1526: ---让玩家player以原因reason移除c上的count个countertype类型的指示物, countertype=0 则清除c的所有指示物
59c6f5280b 2024-07-01 1527: ---@param c Card
59c6f5280b 2024-07-01 1528: ---@param player integer
59c6f5280b 2024-07-01 1529: ---@param countertype integer
59c6f5280b 2024-07-01 1530: ---@param count integer
59c6f5280b 2024-07-01 1531: ---@param reason integer
59c6f5280b 2024-07-01 1532: function Card.RemoveCounter(c,player,countertype,count,reason) end
59c6f5280b 2024-07-01 1533: 
59c6f5280b 2024-07-01 1534: ---返回c上的countertype类型的指示物的数量, countertype=0 则返回c上所有类型的指示物数量之和
59c6f5280b 2024-07-01 1535: ---@return integer
59c6f5280b 2024-07-01 1536: ---@param c Card
59c6f5280b 2024-07-01 1537: ---@param countertype integer
59c6f5280b 2024-07-01 1538: function Card.GetCounter(c,countertype) end
59c6f5280b 2024-07-01 1539: 
59c6f5280b 2024-07-01 1540: ---允许c[在位置location]放置那个需要“可以放置”才能放置的指示物countertype
59c6f5280b 2024-07-01 1541: ---location的默认值与c的种类有关,灵摆怪兽需要指定能否在怪兽区域或灵摆区域放置指示物
59c6f5280b 2024-07-01 1542: ---@param c Card
59c6f5280b 2024-07-01 1543: ---@param countertype integer
59c6f5280b 2024-07-01 1544: ---@param location? integer
59c6f5280b 2024-07-01 1545: function Card.EnableCounterPermit(c,countertype,location) end
59c6f5280b 2024-07-01 1546: 
59c6f5280b 2024-07-01 1547: ---设定c放置countertype类型指示物的上限
59c6f5280b 2024-07-01 1548: ---@param c Card
59c6f5280b 2024-07-01 1549: ---@param countertype integer
59c6f5280b 2024-07-01 1550: ---@param count integer
59c6f5280b 2024-07-01 1551: function Card.SetCounterLimit(c,countertype,count) end
59c6f5280b 2024-07-01 1552: 
59c6f5280b 2024-07-01 1553: ---检查c是否可以用效果改变表示形式
59c6f5280b 2024-07-01 1554: ---@return boolean
59c6f5280b 2024-07-01 1555: ---@param c Card
59c6f5280b 2024-07-01 1556: function Card.IsCanChangePosition(c) end
59c6f5280b 2024-07-01 1557: 
59c6f5280b 2024-07-01 1558: ---检查c是否可以转成里侧表示
59c6f5280b 2024-07-01 1559: ---@return boolean
59c6f5280b 2024-07-01 1560: ---@param c Card
59c6f5280b 2024-07-01 1561: function Card.IsCanTurnSet(c) end
59c6f5280b 2024-07-01 1562: 
59c6f5280b 2024-07-01 1563: ---检查c是否可以[逐个(singly=true)在 location 区域]放置count个countertype类型的指示物
59c6f5280b 2024-07-01 1564: ---@return boolean
59c6f5280b 2024-07-01 1565: ---@param c Card
59c6f5280b 2024-07-01 1566: ---@param countertype integer
59c6f5280b 2024-07-01 1567: ---@param count integer
59c6f5280b 2024-07-01 1568: ---@param singly? integer default: false
59c6f5280b 2024-07-01 1569: ---@param location? integer
59c6f5280b 2024-07-01 1570: function Card.IsCanAddCounter(c,countertype,count,singly,location) end
59c6f5280b 2024-07-01 1571: 
59c6f5280b 2024-07-01 1572: ---检查玩家player是否可以以原因reason移除c上的count个countertype类型的指示物
59c6f5280b 2024-07-01 1573: ---@return boolean
59c6f5280b 2024-07-01 1574: ---@param c Card
59c6f5280b 2024-07-01 1575: ---@param player integer
59c6f5280b 2024-07-01 1576: ---@param countertype integer
59c6f5280b 2024-07-01 1577: ---@param count integer
59c6f5280b 2024-07-01 1578: ---@param reason integer
59c6f5280b 2024-07-01 1579: function Card.IsCanRemoveCounter(c,player,countertype,count,reason) end
59c6f5280b 2024-07-01 1580: 
59c6f5280b 2024-07-01 1581: ---检查c上是否可以放置countertype类型的指示物
59c6f5280b 2024-07-01 1582: ---@return boolean
59c6f5280b 2024-07-01 1583: ---@param c Card
59c6f5280b 2024-07-01 1584: ---@param countertype integer
59c6f5280b 2024-07-01 1585: function Card.IsCanHaveCounter(c,countertype) end
59c6f5280b 2024-07-01 1586: 
59c6f5280b 2024-07-01 1587: ---检查c是否可以作为XYZ素材
59c6f5280b 2024-07-01 1588: ---@return boolean
59c6f5280b 2024-07-01 1589: ---@param c Card
59c6f5280b 2024-07-01 1590: ---@param player? integer
59c6f5280b 2024-07-01 1591: function Card.IsCanOverlay(c,player) end
59c6f5280b 2024-07-01 1592: 
59c6f5280b 2024-07-01 1593: ---检查c是否可以成为[融合怪兽fc的]融合素材
59c6f5280b 2024-07-01 1594: ---@return boolean
59c6f5280b 2024-07-01 1595: ---@param c Card
59c6f5280b 2024-07-01 1596: ---@param fc? Card
59c6f5280b 2024-07-01 1597: function Card.IsCanBeFusionMaterial(c,fc) end
59c6f5280b 2024-07-01 1598: 
59c6f5280b 2024-07-01 1599: ---检查c是否可以成为[以 tuner 为调整的同调怪兽sc的]同调素材
59c6f5280b 2024-07-01 1600: ---@return boolean
59c6f5280b 2024-07-01 1601: ---@param c Card
59c6f5280b 2024-07-01 1602: ---@param sc? Card
59c6f5280b 2024-07-01 1603: ---@param tuner? Card
59c6f5280b 2024-07-01 1604: function Card.IsCanBeSynchroMaterial(c,sc,tuner) end
59c6f5280b 2024-07-01 1605: 
59c6f5280b 2024-07-01 1606: ---检查c是否可以作为[仪式怪兽sc的]仪式素材,没有指定sc的场合,必须填nil
59c6f5280b 2024-07-01 1607: ---@return boolean
59c6f5280b 2024-07-01 1608: ---@param c Card
59c6f5280b 2024-07-01 1609: ---@param sc Card|nil
59c6f5280b 2024-07-01 1610: function Card.IsCanBeRitualMaterial(c,sc) end
59c6f5280b 2024-07-01 1611: 
59c6f5280b 2024-07-01 1612: ---检查c是否可以成为[XYZ怪兽sc的]XYZ素材,没有指定sc的场合,必须填nil
59c6f5280b 2024-07-01 1613: ---@return boolean
59c6f5280b 2024-07-01 1614: ---@param c Card
59c6f5280b 2024-07-01 1615: ---@param sc Card|nil
59c6f5280b 2024-07-01 1616: function Card.IsCanBeXyzMaterial(c,sc) end
59c6f5280b 2024-07-01 1617: 
59c6f5280b 2024-07-01 1618: ---检查c是否可以成为[连接怪兽sc的]连接素材,没有指定sc的场合,必须填nil
59c6f5280b 2024-07-01 1619: ---@return boolean
59c6f5280b 2024-07-01 1620: ---@param c Card
59c6f5280b 2024-07-01 1621: ---@param sc Card|nil
59c6f5280b 2024-07-01 1622: function Card.IsCanBeLinkMaterial(c,sc) end
59c6f5280b 2024-07-01 1623: 
59c6f5280b 2024-07-01 1624: ---检查场上[或g]是否包含了c需要[必须包含gc在内]的一组融合素材
59c6f5280b 2024-07-01 1625: ---##根据c的种类为EFFECT_FUSION_MATERIAL的效果的Condition函数检查
59c6f5280b 2024-07-01 1626: ---@return boolean
59c6f5280b 2024-07-01 1627: ---@param c Card
59c6f5280b 2024-07-01 1628: ---@param g? Group|nil
59c6f5280b 2024-07-01 1629: ---@param gc? Card|nil
59c6f5280b 2024-07-01 1630: ---@param chkf? integer default: PLAYER_NONE
59c6f5280b 2024-07-01 1631: ---@param not_material? boolean default: false
59c6f5280b 2024-07-01 1632: function Card.CheckFusionMaterial(c,g,gc,chkf,not_material) end
59c6f5280b 2024-07-01 1633: 
59c6f5280b 2024-07-01 1634: ---检查c能否代替融合怪兽fc的记述卡名的素材
59c6f5280b 2024-07-01 1635: ---@return boolean
59c6f5280b 2024-07-01 1636: ---@param c Card
59c6f5280b 2024-07-01 1637: ---@param fc Card
59c6f5280b 2024-07-01 1638: function Card.CheckFusionSubstitute(c,fc) end
59c6f5280b 2024-07-01 1639: 
59c6f5280b 2024-07-01 1640: ---检查c是否免疫效果e(即不受效果e的影响)
59c6f5280b 2024-07-01 1641: ---@return boolean
59c6f5280b 2024-07-01 1642: ---@param c Card
59c6f5280b 2024-07-01 1643: ---@param e Effect
59c6f5280b 2024-07-01 1644: function Card.IsImmuneToEffect(c,e) end
59c6f5280b 2024-07-01 1645: 
59c6f5280b 2024-07-01 1646: ---检查c的效果是否能被e无效。
59c6f5280b 2024-07-01 1647: ---已经被无效的卡,或原本就没有效果的卡,或不受e影响的卡不能被无效。
59c6f5280b 2024-07-01 1648: ---第三个参数可选,指示其是否为怪兽效果。
59c6f5280b 2024-07-01 1649: ---@return boolean
59c6f5280b 2024-07-01 1650: ---@param c Card
59c6f5280b 2024-07-01 1651: ---@param e Effect
59c6f5280b 2024-07-01 1652: ---@param isMonsterEffect? boolean
59c6f5280b 2024-07-01 1653: function Card.IsCanBeDisabledByEffect(c,e,isMonsterEffect) end
59c6f5280b 2024-07-01 1654: 
59c6f5280b 2024-07-01 1655: ---检查c是否可以成为效果[e的]对象
59c6f5280b 2024-07-01 1656: ---@return boolean
59c6f5280b 2024-07-01 1657: ---@param c Card
59c6f5280b 2024-07-01 1658: ---@param e? Effect
59c6f5280b 2024-07-01 1659: function Card.IsCanBeEffectTarget(c,e) end
59c6f5280b 2024-07-01 1660: 
59c6f5280b 2024-07-01 1661: ---检查c1是否可以成为c2的攻击目标
59c6f5280b 2024-07-01 1662: ---@return boolean
59c6f5280b 2024-07-01 1663: ---@param c1 Card
59c6f5280b 2024-07-01 1664: ---@param c2 Card
59c6f5280b 2024-07-01 1665: function Card.IsCanBeBattleTarget(c1,c2) end
59c6f5280b 2024-07-01 1666: 
59c6f5280b 2024-07-01 1667: ---为魔陷卡c添加怪兽数值,type 为怪兽类型,不能是没有等级的怪兽
59c6f5280b 2024-07-01 1668: ---注:在数据库中有记录的数值视为原本数值
59c6f5280b 2024-07-01 1669: ---@param c Card
59c6f5280b 2024-07-01 1670: ---@param type integer
59c6f5280b 2024-07-01 1671: ---@param attribute? integer
59c6f5280b 2024-07-01 1672: ---@param race? integer
59c6f5280b 2024-07-01 1673: ---@param level? integer
59c6f5280b 2024-07-01 1674: ---@param atk? integer
59c6f5280b 2024-07-01 1675: ---@param def? integer
59c6f5280b 2024-07-01 1676: function Card.AddMonsterAttribute(c,type,attribute,race,level,atk,def) end
59c6f5280b 2024-07-01 1677: 
59c6f5280b 2024-07-01 1678: ---取消送墓确定状态,cancel=false则重新设置送墓确定状态
59c6f5280b 2024-07-01 1679: ---注:送墓确定状态指的是在场上发动的不留场的魔法和陷阱后,这些卡片的状态
59c6f5280b 2024-07-01 1680: ---送墓确定状态中的卡无法返回手卡和卡组,并且连锁结束时送去墓地
59c6f5280b 2024-07-01 1681: ---此函数的作用是取消此状态使其留场,用于光之护封剑和废铁稻草人等卡
59c6f5280b 2024-07-01 1682: ---@param c Card
59c6f5280b 2024-07-01 1683: ---@param cancel? boolean default: true
59c6f5280b 2024-07-01 1684: function Card.CancelToGrave(c,cancel) end
59c6f5280b 2024-07-01 1685: 
59c6f5280b 2024-07-01 1686: ---返回通常召唤c所需要的祭品的最小和最大数量
59c6f5280b 2024-07-01 1687: ---@return integer
59c6f5280b 2024-07-01 1688: ---@return integer
59c6f5280b 2024-07-01 1689: ---@param c Card
59c6f5280b 2024-07-01 1690: function Card.GetTributeRequirement(c) end
59c6f5280b 2024-07-01 1691: 
59c6f5280b 2024-07-01 1692: ---返回与c进行战斗的卡,没有则返回nil
59c6f5280b 2024-07-01 1693: ---@return Card
59c6f5280b 2024-07-01 1694: ---@param c Card
59c6f5280b 2024-07-01 1695: function Card.GetBattleTarget(c) end
59c6f5280b 2024-07-01 1696: 
59c6f5280b 2024-07-01 1697: ---返回c可攻击的卡片组以及能否直接攻击
59c6f5280b 2024-07-01 1698: ---@return Group
59c6f5280b 2024-07-01 1699: ---@return boolean
59c6f5280b 2024-07-01 1700: ---@param c Card
59c6f5280b 2024-07-01 1701: function Card.GetAttackableTarget(c) end
59c6f5280b 2024-07-01 1702: 
59c6f5280b 2024-07-01 1703: ---为c设置类型为type的卡片提示信息
59c6f5280b 2024-07-01 1704: ---type只能为以下值,对应的value类型为
59c6f5280b 2024-07-01 1705: ---CHINT_TURN              回合数
59c6f5280b 2024-07-01 1706: ---CHINT_CARD              卡片id
59c6f5280b 2024-07-01 1707: ---CHINT_RACE              种族
59c6f5280b 2024-07-01 1708: ---CHINT_ATTRIBUTE         属性
59c6f5280b 2024-07-01 1709: ---CHINT_NUMBER            数字
59c6f5280b 2024-07-01 1710: ---CHINT_DESC              描述
59c6f5280b 2024-07-01 1711: ---@param c Card
59c6f5280b 2024-07-01 1712: ---@param type integer
59c6f5280b 2024-07-01 1713: ---@param value integer
59c6f5280b 2024-07-01 1714: function Card.SetHint(c,type,value) end
59c6f5280b 2024-07-01 1715: 
59c6f5280b 2024-07-01 1716: ---设置c在卡组中正面表示(POS_FACEUP_DEFENSE)
59c6f5280b 2024-07-01 1717: ---@param c Card
59c6f5280b 2024-07-01 1718: function Card.ReverseInDeck(c) end
59c6f5280b 2024-07-01 1719: 
59c6f5280b 2024-07-01 1720: ---设置c以unique_code只能在场上[或怪兽区域或魔陷区域,由unique_location决定]只能存在1张,function 的返回值类型必须是int
59c6f5280b 2024-07-01 1721: ---s不为0会检查自己场上的唯一性,o不为0则检查对方场上的唯一性
59c6f5280b 2024-07-01 1722: ---@param c Card
59c6f5280b 2024-07-01 1723: ---@param s integer
59c6f5280b 2024-07-01 1724: ---@param o integer
59c6f5280b 2024-07-01 1725: ---@param unique_code function|integer
59c6f5280b 2024-07-01 1726: ---@param unique_location? integer default: LOCATIOIN_ONFIELD
59c6f5280b 2024-07-01 1727: function Card.SetUniqueOnField(c,s,o,unique_code,unique_location) end
59c6f5280b 2024-07-01 1728: 
59c6f5280b 2024-07-01 1729: ---检查c在check_player场上的唯一性
59c6f5280b 2024-07-01 1730: ---@return boolean
59c6f5280b 2024-07-01 1731: ---@param c Card
59c6f5280b 2024-07-01 1732: ---@param check_player integer
59c6f5280b 2024-07-01 1733: ---@param check_location? integer default: LOCATION_ONFIELD
59c6f5280b 2024-07-01 1734: ---@param icard? Card|nil
59c6f5280b 2024-07-01 1735: function Card.CheckUniqueOnField(c,check_player,check_location,icard) end
59c6f5280b 2024-07-01 1736: 
59c6f5280b 2024-07-01 1737: ---重置c受到的卡号为code1[, code2...]的卡片的效果的影响
59c6f5280b 2024-07-01 1738: ---@param c Card
59c6f5280b 2024-07-01 1739: ---@param code1? integer
59c6f5280b 2024-07-01 1740: ---@param ...? any
59c6f5280b 2024-07-01 1741: function Card.ResetNegateEffect(c,code1,...) end
59c6f5280b 2024-07-01 1742: 
59c6f5280b 2024-07-01 1743: ---把c的assume_type的数值当作assume_value使用(基因组斗士)
59c6f5280b 2024-07-01 1744: ---@param c Card
59c6f5280b 2024-07-01 1745: ---@param assume_type integer
59c6f5280b 2024-07-01 1746: ---@param assume_value integer
59c6f5280b 2024-07-01 1747: function Card.AssumeProperty(c,assume_type,assume_value) end
59c6f5280b 2024-07-01 1748: 
59c6f5280b 2024-07-01 1749: ---设置c一回合只能进行1次特殊召唤(灵兽,波动龙)
59c6f5280b 2024-07-01 1750: ---相同的spsummon_code共用1个次数
59c6f5280b 2024-07-01 1751: ---@param c Card
59c6f5280b 2024-07-01 1752: ---@param spsummon_code integer
59c6f5280b 2024-07-01 1753: function Card.SetSPSummonOnce(c,spsummon_code) end
59c6f5280b 2024-07-01 1754: 
59c6f5280b 2024-07-01 1755: ---设置全局标记global_flag
59c6f5280b 2024-07-01 1756: ---@param global_flag integer
59c6f5280b 2024-07-01 1757: function Duel.EnableGlobalFlag(global_flag) end
59c6f5280b 2024-07-01 1758: 
59c6f5280b 2024-07-01 1759: ---返回玩家player的当前LP
59c6f5280b 2024-07-01 1760: ---@return integer
59c6f5280b 2024-07-01 1761: ---@param player integer
59c6f5280b 2024-07-01 1762: function Duel.GetLP(player) end
59c6f5280b 2024-07-01 1763: 
59c6f5280b 2024-07-01 1764: ---设置玩家player的当前LP为lp
59c6f5280b 2024-07-01 1765: ---@param player integer
59c6f5280b 2024-07-01 1766: ---@param lp integer
59c6f5280b 2024-07-01 1767: function Duel.SetLP(player,lp) end
59c6f5280b 2024-07-01 1768: 
59c6f5280b 2024-07-01 1769: ---返回当前的回合玩家是否为playerid
59c6f5280b 2024-07-01 1770: ---@return boolean
59c6f5280b 2024-07-01 1771: ---@param playerid integer
59c6f5280b 2024-07-01 1772: function Duel.IsTurnPlayer(playerid) end
59c6f5280b 2024-07-01 1773: 
59c6f5280b 2024-07-01 1774: ---返回当前的回合玩家
59c6f5280b 2024-07-01 1775: ---@return integer
59c6f5280b 2024-07-01 1776: function Duel.GetTurnPlayer() end
59c6f5280b 2024-07-01 1777: 
59c6f5280b 2024-07-01 1778: ---返回[player所经过的]当前的回合数
59c6f5280b 2024-07-01 1779: ---@return integer
59c6f5280b 2024-07-01 1780: ---@param player? integer
59c6f5280b 2024-07-01 1781: function Duel.GetTurnCount(player) end
59c6f5280b 2024-07-01 1782: 
59c6f5280b 2024-07-01 1783: ---返回玩家player每回合的规则抽卡数量
59c6f5280b 2024-07-01 1784: ---@return integer
59c6f5280b 2024-07-01 1785: ---@param player integer
59c6f5280b 2024-07-01 1786: function Duel.GetDrawCount(player) end
59c6f5280b 2024-07-01 1787: 
59c6f5280b 2024-07-01 1788: ---把效果e作为玩家player的效果注册给全局环境
59c6f5280b 2024-07-01 1789: ---@param e Effect
59c6f5280b 2024-07-01 1790: ---@param player integer
59c6f5280b 2024-07-01 1791: function Duel.RegisterEffect(e,player) end
59c6f5280b 2024-07-01 1792: 
59c6f5280b 2024-07-01 1793: ---为玩家player注册全局环境下的标识效果,并返回这个效果
59c6f5280b 2024-07-01 1794: ---此效果总是影响玩家的(EFFECT_FLAG_PLAYER_TARGET)并且不会被无效化
59c6f5280b 2024-07-01 1795: ---其余部分与Card.RegisterFlagEffect相同
59c6f5280b 2024-07-01 1796: ---@return Effect
59c6f5280b 2024-07-01 1797: ---@param player integer
59c6f5280b 2024-07-01 1798: ---@param code integer
59c6f5280b 2024-07-01 1799: ---@param reset_flag integer
59c6f5280b 2024-07-01 1800: ---@param property integer
59c6f5280b 2024-07-01 1801: ---@param reset_count integer default: 1
59c6f5280b 2024-07-01 1802: ---@param label? integer
59c6f5280b 2024-07-01 1803: function Duel.RegisterFlagEffect(player,code,reset_flag,property,reset_count,label) end
59c6f5280b 2024-07-01 1804: 
59c6f5280b 2024-07-01 1805: ---返回玩家 player 的 code 标识效果的数量
59c6f5280b 2024-07-01 1806: ---@return integer
59c6f5280b 2024-07-01 1807: ---@param player integer
59c6f5280b 2024-07-01 1808: ---@param code integer
59c6f5280b 2024-07-01 1809: function Duel.GetFlagEffect(player,code) end
59c6f5280b 2024-07-01 1810: 
59c6f5280b 2024-07-01 1811: ---手动reset玩家player的 code 标识效果
59c6f5280b 2024-07-01 1812: ---@param player integer
59c6f5280b 2024-07-01 1813: ---@param code integer
59c6f5280b 2024-07-01 1814: function Duel.ResetFlagEffect(player,code) end
59c6f5280b 2024-07-01 1815: 
59c6f5280b 2024-07-01 1816: ---返回player是否存在种类为code的标识效果,若有则设置第一个的Label属性为label
59c6f5280b 2024-07-01 1817: ---@return boolean
59c6f5280b 2024-07-01 1818: ---@param player integer
59c6f5280b 2024-07-01 1819: ---@param code integer
59c6f5280b 2024-07-01 1820: ---@param label integer
59c6f5280b 2024-07-01 1821: function Duel.SetFlagEffectLabel(player,code,label) end
59c6f5280b 2024-07-01 1822: 
59c6f5280b 2024-07-01 1823: ---返回玩家player的种类为code的每个标识效果的Label,没有此效果则返回nil
59c6f5280b 2024-07-01 1824: ---@return integer
59c6f5280b 2024-07-01 1825: ---@return ...? integer
59c6f5280b 2024-07-01 1826: ---@param player integer
59c6f5280b 2024-07-01 1827: ---@param code integer
59c6f5280b 2024-07-01 1828: function Duel.GetFlagEffectLabel(player,code) end
59c6f5280b 2024-07-01 1829: 
59c6f5280b 2024-07-01 1830: ---以reason原因破坏targets去dest,返回值是实际被破坏的数量
59c6f5280b 2024-07-01 1831: ---如果reason包含REASON_RULE,则破坏事件将不会检查卡片是否免疫效果,
59c6f5280b 2024-07-01 1832: ---不会触发代破效果并且无视“不能破坏”
59c6f5280b 2024-07-01 1833: ---如果设置reason_player,则视为被玩家reason_player移动
59c6f5280b 2024-07-01 1834: ---@return integer
59c6f5280b 2024-07-01 1835: ---@param targets Card|Group
59c6f5280b 2024-07-01 1836: ---@param reason integer
59c6f5280b 2024-07-01 1837: ---@param dest? integer
59c6f5280b 2024-07-01 1838: ---@param reason_player? integer
59c6f5280b 2024-07-01 1839: function Duel.Destroy(targets,reason,dest,reason_player) end
59c6f5280b 2024-07-01 1840: 
59c6f5280b 2024-07-01 1841: ---以reason原因,pos表示形式除外targets,返回值是实际被操作的数量
59c6f5280b 2024-07-01 1842: ---如果reason包含REASON_TEMPORARY,那么视为是暂时除外,可以通过Duel.ReturnToField返回到场上
59c6f5280b 2024-07-01 1843: ---如果设置reason_player,则视为被玩家reason_player移动
59c6f5280b 2024-07-01 1844: ---@return integer
59c6f5280b 2024-07-01 1845: ---@param targets Card|Group
59c6f5280b 2024-07-01 1846: ---@param pos integer
59c6f5280b 2024-07-01 1847: ---@param reason integer
59c6f5280b 2024-07-01 1848: ---@param reason_player? integer
59c6f5280b 2024-07-01 1849: function Duel.Remove(targets,pos,reason,reason_player) end
59c6f5280b 2024-07-01 1850: 
59c6f5280b 2024-07-01 1851: ---以reason原因把targets送去墓地,返回值是实际被操作的数量
59c6f5280b 2024-07-01 1852: ---如果设置reason_player,则视为被玩家reason_player移动
59c6f5280b 2024-07-01 1853: ---@return integer
59c6f5280b 2024-07-01 1854: ---@param targets Card|Group
59c6f5280b 2024-07-01 1855: ---@param reason integer
59c6f5280b 2024-07-01 1856: ---@param reason_player? integer
59c6f5280b 2024-07-01 1857: function Duel.SendtoGrave(targets,reason,reason_player) end
59c6f5280b 2024-07-01 1858: 
59c6f5280b 2024-07-01 1859: ---以reason原因把targets送去玩家player的手卡,返回值是实际被操作的数量
59c6f5280b 2024-07-01 1860: ---如果player是nil则返回卡的持有者的手卡
59c6f5280b 2024-07-01 1861: ---如果设置reason_player,则视为被玩家reason_player移动
59c6f5280b 2024-07-01 1862: ---@return integer
59c6f5280b 2024-07-01 1863: ---@param targets Card|Group
59c6f5280b 2024-07-01 1864: ---@param player integer|nil
59c6f5280b 2024-07-01 1865: ---@param reason integer
59c6f5280b 2024-07-01 1866: ---@param reason_player? integer
59c6f5280b 2024-07-01 1867: function Duel.SendtoHand(targets,player,reason,reason_player) end
59c6f5280b 2024-07-01 1868: 
59c6f5280b 2024-07-01 1869: ---以reason原因把targets送去玩家player的卡组,返回值是实际被操作的数量
59c6f5280b 2024-07-01 1870: ---如果player是nil则返回卡的持有者的卡组
59c6f5280b 2024-07-01 1871: ---如果seq=0,则是返回卡组最顶端;seq=1则是返回卡组最底端;
59c6f5280b 2024-07-01 1872: ---其余情况则是返回最顶端并且标记需要洗卡组
59c6f5280b 2024-07-01 1873: ---如果设置reason_player,则视为被玩家reason_player移动
59c6f5280b 2024-07-01 1874: ---如果设置send_activating,则可以移动发动中的魔法陷阱卡
59c6f5280b 2024-07-01 1875: ---@return integer
59c6f5280b 2024-07-01 1876: ---@param targets Card|Group
59c6f5280b 2024-07-01 1877: ---@param player integer|nil
59c6f5280b 2024-07-01 1878: ---@param seq integer
59c6f5280b 2024-07-01 1879: ---@param reason integer
59c6f5280b 2024-07-01 1880: ---@param reason_player? integer
59c6f5280b 2024-07-01 1881: ---@param send_activating? boolean
59c6f5280b 2024-07-01 1882: function Duel.SendtoDeck(targets,player,seq,reason,reason_player,send_activating) end
59c6f5280b 2024-07-01 1883: 
59c6f5280b 2024-07-01 1884: ---以reason原因把灵摆卡targets表侧表示送去玩家player的额外卡组,返回值是实际被操作的数量
59c6f5280b 2024-07-01 1885: ---如果player是nil则返回卡的持有者的额外卡组
59c6f5280b 2024-07-01 1886: ---@return integer
59c6f5280b 2024-07-01 1887: ---@param targets Card|Group
59c6f5280b 2024-07-01 1888: ---@param player integer|nil
59c6f5280b 2024-07-01 1889: ---@param reason integer
59c6f5280b 2024-07-01 1890: function Duel.SendtoExtraP(targets,player,reason) end
59c6f5280b 2024-07-01 1891: 
59c6f5280b 2024-07-01 1892: ---此函数返回之前一次卡片操作实际操作的卡片组。包括
59c6f5280b 2024-07-01 1893: ---Duel.Destroy, Duel.Remove, Duel.SendtoGrave, 
59c6f5280b 2024-07-01 1894: ---Duel.SendtoHand, Duel.SendtoDeck, Duel.SendtoExtraP, Duel.Release, 
59c6f5280b 2024-07-01 1895: ---Duel.ChangePosition, Duel.SpecialSummon, Duel.DiscardDeck
59c6f5280b 2024-07-01 1896: ---@return Group
59c6f5280b 2024-07-01 1897: function Duel.GetOperatedGroup() end
59c6f5280b 2024-07-01 1898: 
59c6f5280b 2024-07-01 1899: ---让玩家 player 以效果e对c[在区域 zone]进行通常召唤(非set),至少使用min个祭品
59c6f5280b 2024-07-01 1900: ---如果e=nil,那么就按照一般的通常召唤规则进行通常召唤
59c6f5280b 2024-07-01 1901: ---如果ignore_count=true,则忽略每回合的通常召唤次数限制
59c6f5280b 2024-07-01 1902: ---@param player integer
59c6f5280b 2024-07-01 1903: ---@param c Card
59c6f5280b 2024-07-01 1904: ---@param ignore_count boolean
59c6f5280b 2024-07-01 1905: ---@param e Effect|nil
59c6f5280b 2024-07-01 1906: ---@param min? integer default: 0
59c6f5280b 2024-07-01 1907: ---@param zone? integer default: 0x1f
59c6f5280b 2024-07-01 1908: function Duel.Summon(player,c,ignore_count,e,min,zone) end
59c6f5280b 2024-07-01 1909: 
59c6f5280b 2024-07-01 1910: ---让玩家player对c[用 sumtype 方式]进行特殊召唤手续(?)
59c6f5280b 2024-07-01 1911: ---@param player integer
59c6f5280b 2024-07-01 1912: ---@param c Card
59c6f5280b 2024-07-01 1913: ---@param sumtype? integer default: 0
59c6f5280b 2024-07-01 1914: function Duel.SpecialSummonRule(player,c,sumtype) end
59c6f5280b 2024-07-01 1915: 
59c6f5280b 2024-07-01 1916: ---让玩家player以tuner作为调整,场上的卡[或mg]为素材,对c进行同调召唤手续
59c6f5280b 2024-07-01 1917: ---@param player integer
59c6f5280b 2024-07-01 1918: ---@param c Card
59c6f5280b 2024-07-01 1919: ---@param tuner Card|nil
59c6f5280b 2024-07-01 1920: ---@param mg? Group|nil
59c6f5280b 2024-07-01 1921: ---@param minc? integer default: 0
59c6f5280b 2024-07-01 1922: ---@param maxc? integer default: 0
59c6f5280b 2024-07-01 1923: function Duel.SynchroSummon(player,c,tuner,mg,minc,maxc) end
59c6f5280b 2024-07-01 1924: 
59c6f5280b 2024-07-01 1925: ---让玩家player用场上的卡[或mg][选min-max个素材]对c进行XYZ召唤手续
59c6f5280b 2024-07-01 1926: ---mg非空且min为0则直接把mg全部作为XYZ素材
59c6f5280b 2024-07-01 1927: ---@param player integer
59c6f5280b 2024-07-01 1928: ---@param c Card
59c6f5280b 2024-07-01 1929: ---@param mg Group|nil
59c6f5280b 2024-07-01 1930: ---@param min? integer default: 0
59c6f5280b 2024-07-01 1931: ---@param max? integer default: 0
59c6f5280b 2024-07-01 1932: function Duel.XyzSummon(player,c,mg,min,max) end
59c6f5280b 2024-07-01 1933: 
59c6f5280b 2024-07-01 1934: ---让玩家player以mg[中除lcard以外的最少minc,最多maxc张卡]为素材将pcard连接召唤。
59c6f5280b 2024-07-01 1935: ---@param player integer
59c6f5280b 2024-07-01 1936: ---@param pcard Card
59c6f5280b 2024-07-01 1937: ---@param mg Group|nil
59c6f5280b 2024-07-01 1938: ---@param lcard? Card
59c6f5280b 2024-07-01 1939: ---@param minc? integer
59c6f5280b 2024-07-01 1940: ---@param maxc? integer
59c6f5280b 2024-07-01 1941: function Duel.LinkSummon(player,pcard,mg,lcard,minc,maxc) end
59c6f5280b 2024-07-01 1942: 
59c6f5280b 2024-07-01 1943: ---让玩家 player 以效果e对c[在区域 zone]进行通常召唤的Set,至少使用min个祭品
59c6f5280b 2024-07-01 1944: ---如果e=nil,那么就按照一般的通常召唤规则进行通常召唤
59c6f5280b 2024-07-01 1945: ---如果ignore_count=true,则忽略每回合的通常召唤次数限制
59c6f5280b 2024-07-01 1946: ---@param player integer
59c6f5280b 2024-07-01 1947: ---@param c Card
59c6f5280b 2024-07-01 1948: ---@param ignore_count boolean
59c6f5280b 2024-07-01 1949: ---@param e Effect|nil
59c6f5280b 2024-07-01 1950: ---@param min? integer default: 0
59c6f5280b 2024-07-01 1951: ---@param zone? integer default: 0x1f
59c6f5280b 2024-07-01 1952: function Duel.MSet(player,c,ignore_count,e,min,zone) end
59c6f5280b 2024-07-01 1953: 
59c6f5280b 2024-07-01 1954: ---让玩家player把targets盖放到target_player的魔法陷阱区, confirm 表示是否需要确认
59c6f5280b 2024-07-01 1955: ---若targets为Group,则返回成功操作的数量
59c6f5280b 2024-07-01 1956: ---@return integer
59c6f5280b 2024-07-01 1957: ---@param player integer
59c6f5280b 2024-07-01 1958: ---@param targets Card|Group
59c6f5280b 2024-07-01 1959: ---@param target_player? integer default: player
59c6f5280b 2024-07-01 1960: ---@param confirm? boolean default: true
59c6f5280b 2024-07-01 1961: function Duel.SSet(player,targets,target_player,confirm) end
59c6f5280b 2024-07-01 1962: 
59c6f5280b 2024-07-01 1963: ---根据code新建一个衍生物并返回,该衍生物的拥有者为player
59c6f5280b 2024-07-01 1964: ---@return Card
59c6f5280b 2024-07-01 1965: ---@param player integer
59c6f5280b 2024-07-01 1966: ---@param code integer
59c6f5280b 2024-07-01 1967: function Duel.CreateToken(player,code) end
59c6f5280b 2024-07-01 1968: 
59c6f5280b 2024-07-01 1969: ---让玩家 sumplayer 以sumtype方式,pos表示形式把targets特殊召唤到target_player场上[的区域 zone]
59c6f5280b 2024-07-01 1970: ---如果nocheck为true则无视卡的召唤条件,如果nolimit为true则无视卡的苏生限制
59c6f5280b 2024-07-01 1971: ---返回值是特殊召唤成功的卡的数量
59c6f5280b 2024-07-01 1972: ---@return integer
59c6f5280b 2024-07-01 1973: ---@param targets Card|Group
59c6f5280b 2024-07-01 1974: ---@param sumtype integer
59c6f5280b 2024-07-01 1975: ---@param sumplayer integer
59c6f5280b 2024-07-01 1976: ---@param target_player integer
59c6f5280b 2024-07-01 1977: ---@param nocheck boolean
59c6f5280b 2024-07-01 1978: ---@param nolimit boolean
59c6f5280b 2024-07-01 1979: ---@param pos integer
59c6f5280b 2024-07-01 1980: ---@param zone? integer default: 0xff
59c6f5280b 2024-07-01 1981: function Duel.SpecialSummon(targets,sumtype,sumplayer,target_player,nocheck,nolimit,pos,zone) end
59c6f5280b 2024-07-01 1982: 
59c6f5280b 2024-07-01 1983: ---此函数是Duel.SpecialSummon的分解过程,只特殊召唤一张卡c ,其他参数用法和 Duel.SpecialSummon 一样
59c6f5280b 2024-07-01 1984: ---此函数用于一个效果同时特殊召唤多张参数不同的卡
59c6f5280b 2024-07-01 1985: ---此函数必须和Duel.SpecialSummonComplete一起使用
59c6f5280b 2024-07-01 1986: ---返回值表示是否特殊召唤成功
59c6f5280b 2024-07-01 1987: ---@return boolean
59c6f5280b 2024-07-01 1988: ---@param c Card
59c6f5280b 2024-07-01 1989: ---@param sumtype integer
59c6f5280b 2024-07-01 1990: ---@param sumplayer integer
59c6f5280b 2024-07-01 1991: ---@param target_player integer
59c6f5280b 2024-07-01 1992: ---@param nocheck boolean
59c6f5280b 2024-07-01 1993: ---@param nolimit boolean
59c6f5280b 2024-07-01 1994: ---@param pos integer
59c6f5280b 2024-07-01 1995: ---@param zone? integer default: 0xff
59c6f5280b 2024-07-01 1996: function Duel.SpecialSummonStep(c,sumtype,sumplayer,target_player,nocheck,nolimit,pos,zone) end
59c6f5280b 2024-07-01 1997: 
59c6f5280b 2024-07-01 1998: ---此函数在确定复数个Duel.SpecialSummonStep调用完毕之后调用,用于触发事件
59c6f5280b 2024-07-01 1999: ---@return nil|integer
59c6f5280b 2024-07-01 2000: function Duel.SpecialSummonComplete() end
59c6f5280b 2024-07-01 2001: 
59c6f5280b 2024-07-01 2002: ---检查玩家player能否向卡片c添加count个countertype类型的指示物,如果 player 不是 0或者1,则返回false
59c6f5280b 2024-07-01 2003: ---@return boolean
59c6f5280b 2024-07-01 2004: ---@param player integer
59c6f5280b 2024-07-01 2005: ---@param countertype? integer
59c6f5280b 2024-07-01 2006: ---@param count? integer
59c6f5280b 2024-07-01 2007: ---@param c? Card
59c6f5280b 2024-07-01 2008: function Duel.IsCanAddCounter(player,countertype,count,c) end
59c6f5280b 2024-07-01 2009: 
59c6f5280b 2024-07-01 2010: ---让玩家player以reason为原因移除场上存在的countertype类型的count个指示物,返回值表示是否成功
59c6f5280b 2024-07-01 2011: ---s表示对player来说的己方的可移除指示物的位置,o表示对player来说的对方的可移除指示物的位置
59c6f5280b 2024-07-01 2012: ---@return boolean
59c6f5280b 2024-07-01 2013: ---@param player integer
59c6f5280b 2024-07-01 2014: ---@param s integer
59c6f5280b 2024-07-01 2015: ---@param o integer
59c6f5280b 2024-07-01 2016: ---@param countertype integer
59c6f5280b 2024-07-01 2017: ---@param count integer
59c6f5280b 2024-07-01 2018: ---@param reason integer
59c6f5280b 2024-07-01 2019: function Duel.RemoveCounter(player,s,o,countertype,count,reason) end
59c6f5280b 2024-07-01 2020: 
59c6f5280b 2024-07-01 2021: ---检查玩家player以reason为原因是否能移除场上的countertype类型的count个指示物
59c6f5280b 2024-07-01 2022: ---s表示对player来说的己方的可移除指示物的位置,o表示对player来说的对方的可移除指示物的位置
59c6f5280b 2024-07-01 2023: ---@return boolean
59c6f5280b 2024-07-01 2024: ---@param player integer
59c6f5280b 2024-07-01 2025: ---@param s integer
59c6f5280b 2024-07-01 2026: ---@param o integer
59c6f5280b 2024-07-01 2027: ---@param countertype integer
59c6f5280b 2024-07-01 2028: ---@param count integer
59c6f5280b 2024-07-01 2029: ---@param reason integer
59c6f5280b 2024-07-01 2030: function Duel.IsCanRemoveCounter(player,s,o,countertype,count,reason) end
59c6f5280b 2024-07-01 2031: 
59c6f5280b 2024-07-01 2032: ---返回场上存在的countertype类型的指示物的数量
59c6f5280b 2024-07-01 2033: ---s表示对player来说的己方的可移除指示物的位置,o表示对player来说的对方的可移除指示物的位置
59c6f5280b 2024-07-01 2034: ---@return integer
59c6f5280b 2024-07-01 2035: ---@param player integer
59c6f5280b 2024-07-01 2036: ---@param s integer
59c6f5280b 2024-07-01 2037: ---@param o integer
59c6f5280b 2024-07-01 2038: ---@param countertype integer
59c6f5280b 2024-07-01 2039: function Duel.GetCounter(player,s,o,countertype) end
59c6f5280b 2024-07-01 2040: 
59c6f5280b 2024-07-01 2041: ---改变targets的表示形式返回实际操作的数量,若只有2个参数,则不管什么表示形式,都变成 第二个参数 代表的形式
59c6f5280b 2024-07-01 2042: ---表侧攻击表示 = au
59c6f5280b 2024-07-01 2043: ---里侧攻击表示 = ad
59c6f5280b 2024-07-01 2044: ---表侧守备表示 = du
59c6f5280b 2024-07-01 2045: ---里侧守备表示 = dd
59c6f5280b 2024-07-01 2046: ---如果noflip=true则不触发反转效果(但会触发反转时的诱发效果)
59c6f5280b 2024-07-01 2047: ---如果setavailable=true则对象之后变成里侧也发动反转效果
59c6f5280b 2024-07-01 2048: ---@return integer
59c6f5280b 2024-07-01 2049: ---@param targets Card|Group
59c6f5280b 2024-07-01 2050: ---@param au integer
59c6f5280b 2024-07-01 2051: ---@param ad? integer default: au
59c6f5280b 2024-07-01 2052: ---@param du? integer default: au
59c6f5280b 2024-07-01 2053: ---@param dd? integer default: au
59c6f5280b 2024-07-01 2054: ---@param noflip? boolean default: false
59c6f5280b 2024-07-01 2055: ---@param setavailable? boolean default: false
59c6f5280b 2024-07-01 2056: function Duel.ChangePosition(targets,au,ad,du,dd,noflip,setavailable) end
59c6f5280b 2024-07-01 2057: 
59c6f5280b 2024-07-01 2058: ---以reason原因解放targets ,返回值是实际解放的数量
59c6f5280b 2024-07-01 2059: ---如果reason含有REASON_COST,则不会检查卡片是否不受效果影响
59c6f5280b 2024-07-01 2060: ---如果设置reason_player,则视为被玩家reason_player移动
59c6f5280b 2024-07-01 2061: ---@return integer
59c6f5280b 2024-07-01 2062: ---@param targets Card|Group
59c6f5280b 2024-07-01 2063: ---@param reason integer
59c6f5280b 2024-07-01 2064: ---@param reason_player? integer
59c6f5280b 2024-07-01 2065: function Duel.Release(targets,reason,reason_player) end
59c6f5280b 2024-07-01 2066: 
59c6f5280b 2024-07-01 2067: ---让玩家move_player把c移动的target_player的场上,返回值表示是否成功
59c6f5280b 2024-07-01 2068: ---dest只能是LOCATION_MZONE或者LOCATION_SZONE,pos表示可选表示形式, enable 表示是否立刻适用c的效果
59c6f5280b 2024-07-01 2069: ---@return boolean
59c6f5280b 2024-07-01 2070: ---@param c Card
59c6f5280b 2024-07-01 2071: ---@param move_player integer
59c6f5280b 2024-07-01 2072: ---@param target_player integer
59c6f5280b 2024-07-01 2073: ---@param dest integer
59c6f5280b 2024-07-01 2074: ---@param pos integer
59c6f5280b 2024-07-01 2075: ---@param enable boolean
59c6f5280b 2024-07-01 2076: ---@param zone? integer
59c6f5280b 2024-07-01 2077: function Duel.MoveToField(c,move_player,target_player,dest,pos,enable,zone) end
59c6f5280b 2024-07-01 2078: 
59c6f5280b 2024-07-01 2079: ---把c以表示形式pos返回到场上[的区域 zone],pos默认值是离场前的表示形式,返回值表示是否成功
59c6f5280b 2024-07-01 2080: ---c必须是以REASON_TEMPORARY原因离场,并且离场后没有离开过那个位置
59c6f5280b 2024-07-01 2081: ---@return boolean
59c6f5280b 2024-07-01 2082: ---@param c Card
59c6f5280b 2024-07-01 2083: ---@param pos? integer
59c6f5280b 2024-07-01 2084: ---@param zone? integer default: 0xff
59c6f5280b 2024-07-01 2085: function Duel.ReturnToField(c,pos,zone) end
59c6f5280b 2024-07-01 2086: 
59c6f5280b 2024-07-01 2087: ---移动c的序号,通常用于在场上换格子或者在卡组中移动到最上方或者最下方
59c6f5280b 2024-07-01 2088: ---@param c Card
59c6f5280b 2024-07-01 2089: ---@param seq integer
59c6f5280b 2024-07-01 2090: function Duel.MoveSequence(c,seq) end
59c6f5280b 2024-07-01 2091: 
59c6f5280b 2024-07-01 2092: ---交换c1和c2的位置
59c6f5280b 2024-07-01 2093: ---@param c1 Card
59c6f5280b 2024-07-01 2094: ---@param c2 Card
59c6f5280b 2024-07-01 2095: function Duel.SwapSequence(c1,c2) end
59c6f5280b 2024-07-01 2096: 
59c6f5280b 2024-07-01 2097: ---发动效果e(?)
59c6f5280b 2024-07-01 2098: ---@param e Effect
59c6f5280b 2024-07-01 2099: function Duel.Activate(e) end
59c6f5280b 2024-07-01 2100: 
59c6f5280b 2024-07-01 2101: ---设定连锁条件,f的函数原型为 bool f(e,ep,tp)
59c6f5280b 2024-07-01 2102: ---e表示要限制连锁的效果,ep表示要限制连锁的玩家,tp表示发动该效果的玩家
59c6f5280b 2024-07-01 2103: ---在cost或者target处理中调用此函数可以限制可以连锁的效果的种类(如超融合)
59c6f5280b 2024-07-01 2104: ---如果f返回false表示不能连锁,一旦设置连锁条件后发生了新的连锁那么连锁条件将会解除
59c6f5280b 2024-07-01 2105: ---@param f function
59c6f5280b 2024-07-01 2106: function Duel.SetChainLimit(f) end
59c6f5280b 2024-07-01 2107: 
59c6f5280b 2024-07-01 2108: ---功能同Duel.SetChainLimit,但是此函数设定的连锁条件直到连锁结束才会解除
59c6f5280b 2024-07-01 2109: ---@param f function
59c6f5280b 2024-07-01 2110: function Duel.SetChainLimitTillChainEnd(f) end
59c6f5280b 2024-07-01 2111: 
59c6f5280b 2024-07-01 2112: ---返回玩家player受到的连锁素材的效果,此函数仅用于融合类卡的效果
59c6f5280b 2024-07-01 2113: ---@return Effect|nil
59c6f5280b 2024-07-01 2114: ---@param player integer
59c6f5280b 2024-07-01 2115: function Duel.GetChainMaterial(player) end
59c6f5280b 2024-07-01 2116: 
59c6f5280b 2024-07-01 2117: ---确认玩家player卡组最上方count张卡
59c6f5280b 2024-07-01 2118: ---@param player integer
59c6f5280b 2024-07-01 2119: ---@param count integer
59c6f5280b 2024-07-01 2120: function Duel.ConfirmDecktop(player,count) end
59c6f5280b 2024-07-01 2121: 
59c6f5280b 2024-07-01 2122: ---确认玩家player额外卡组里侧的卡 最上方count张卡
59c6f5280b 2024-07-01 2123: ---@param player integer
59c6f5280b 2024-07-01 2124: ---@param count integer
59c6f5280b 2024-07-01 2125: function Duel.ConfirmExtratop(player,count) end
59c6f5280b 2024-07-01 2126: 
59c6f5280b 2024-07-01 2127: ---给玩家player确认targets
59c6f5280b 2024-07-01 2128: ---@param player integer
59c6f5280b 2024-07-01 2129: ---@param targets Card|Group
59c6f5280b 2024-07-01 2130: function Duel.ConfirmCards(player,targets) end
59c6f5280b 2024-07-01 2131: 
59c6f5280b 2024-07-01 2132: ---让玩家sort_player对玩家target_player的卡组最上方count张卡进行排序,最先选的卡在最上面,然后下面是第二张选择的卡,以此类推
59c6f5280b 2024-07-01 2133: ---最多只能排序16张卡
59c6f5280b 2024-07-01 2134: ---@param sort_player integer
59c6f5280b 2024-07-01 2135: ---@param target_player integer
59c6f5280b 2024-07-01 2136: ---@param count integer
59c6f5280b 2024-07-01 2137: function Duel.SortDecktop(sort_player,target_player,count) end
59c6f5280b 2024-07-01 2138: 
59c6f5280b 2024-07-01 2139: ---检查当前是否是event时点
59c6f5280b 2024-07-01 2140: ---若get_info=true并且是正确的时点,则还返回触发时点的信息 eg,ep,ev,re,r,rp
59c6f5280b 2024-07-01 2141: ---@return boolean
59c6f5280b 2024-07-01 2142: ---@return Group 可能为空
59c6f5280b 2024-07-01 2143: ---@return integer 可能为空
59c6f5280b 2024-07-01 2144: ---@return integer 可能为空 
59c6f5280b 2024-07-01 2145: ---@return Effect 可能为空
59c6f5280b 2024-07-01 2146: ---@return integer 可能为空
59c6f5280b 2024-07-01 2147: ---@return integer 可能为空
59c6f5280b 2024-07-01 2148: ---@param event integer
59c6f5280b 2024-07-01 2149: ---@param get_info? boolean
59c6f5280b 2024-07-01 2150: function Duel.CheckEvent(event,get_info) end
59c6f5280b 2024-07-01 2151: 
59c6f5280b 2024-07-01 2152: ---以eg,ep,ev,re,r,rp触发一个时点 code
59c6f5280b 2024-07-01 2153: ---@param eg Group|Card
59c6f5280b 2024-07-01 2154: ---@param code integer
59c6f5280b 2024-07-01 2155: ---@param re Effect
59c6f5280b 2024-07-01 2156: ---@param r integer
59c6f5280b 2024-07-01 2157: ---@param rp integer
59c6f5280b 2024-07-01 2158: ---@param ep integer
59c6f5280b 2024-07-01 2159: ---@param ev integer
59c6f5280b 2024-07-01 2160: function Duel.RaiseEvent(eg,code,re,r,rp,ep,ev) end
59c6f5280b 2024-07-01 2161: 
59c6f5280b 2024-07-01 2162: ---以eg,ep,ev,re,r,rp为卡片ec触发一个单体时点 code
59c6f5280b 2024-07-01 2163: ---@param ec Card
59c6f5280b 2024-07-01 2164: ---@param code integer
59c6f5280b 2024-07-01 2165: ---@param re Effect
59c6f5280b 2024-07-01 2166: ---@param r integer
59c6f5280b 2024-07-01 2167: ---@param rp integer
59c6f5280b 2024-07-01 2168: ---@param ep integer
59c6f5280b 2024-07-01 2169: ---@param ev integer
59c6f5280b 2024-07-01 2170: function Duel.RaiseSingleEvent(ec,code,re,r,rp,ep,ev) end
59c6f5280b 2024-07-01 2171: 
59c6f5280b 2024-07-01 2172: ---检查当前是否是timing提示时点
59c6f5280b 2024-07-01 2173: ---@return boolean
59c6f5280b 2024-07-01 2174: ---@param timing integer
59c6f5280b 2024-07-01 2175: function Duel.CheckTiming(timing) end
59c6f5280b 2024-07-01 2176: 
59c6f5280b 2024-07-01 2177: ---检查场地卡号是否是code [,来源玩家是否是 player][,生效区域是否在 loc 内]
59c6f5280b 2024-07-01 2178: ---场地卡号指当前生效的场地卡的卡号,或者海神的巫女把场地变化效果的值
59c6f5280b 2024-07-01 2179: ---来源玩家指当前生效的场地卡的控制者,或者海神的巫女等卡的控制者
59c6f5280b 2024-07-01 2180: ---@return boolean
59c6f5280b 2024-07-01 2181: ---@param code integer
59c6f5280b 2024-07-01 2182: ---@param player? integer default: PLAYER_ALL
59c6f5280b 2024-07-01 2183: ---@param loc? integer default: LOCATION_ONFIELD
59c6f5280b 2024-07-01 2184: function Duel.IsEnvironment(code,player,loc) end
59c6f5280b 2024-07-01 2185: 
59c6f5280b 2024-07-01 2186: ---当前效果处理完令player以win_reason决斗胜利
59c6f5280b 2024-07-01 2187: ---@param player integer
59c6f5280b 2024-07-01 2188: ---@param win_reason integer
59c6f5280b 2024-07-01 2189: function Duel.Win(player,win_reason) end
59c6f5280b 2024-07-01 2190: 
59c6f5280b 2024-07-01 2191: ---让玩家player以原因reason抽count张卡,返回实际抽的卡的数量
59c6f5280b 2024-07-01 2192: ---如果reason含有REASON_RULE则此次抽卡不受“不能抽卡”的效果的影响
59c6f5280b 2024-07-01 2193: ---@return integer
59c6f5280b 2024-07-01 2194: ---@param player integer
59c6f5280b 2024-07-01 2195: ---@param count integer
59c6f5280b 2024-07-01 2196: ---@param reason integer
59c6f5280b 2024-07-01 2197: function Duel.Draw(player,count,reason) end
59c6f5280b 2024-07-01 2198: 
59c6f5280b 2024-07-01 2199: ---以reason原因给与玩家player造成value的伤害,返回实际收到的伤害值
59c6f5280b 2024-07-01 2200: ---如果受到伤害变成回复等效果的影响时,返回值为0.
59c6f5280b 2024-07-01 2201: ---is_step为true则是伤害/恢复LP过程的分解,需要调用Duel.RDComplete()触发时点
59c6f5280b 2024-07-01 2202: ---@return integer
59c6f5280b 2024-07-01 2203: ---@param player integer
59c6f5280b 2024-07-01 2204: ---@param value integer
59c6f5280b 2024-07-01 2205: ---@param reason integer
59c6f5280b 2024-07-01 2206: ---@param is_step? boolean default: false
59c6f5280b 2024-07-01 2207: function Duel.Damage(player,value,reason,is_step) end
59c6f5280b 2024-07-01 2208: 
59c6f5280b 2024-07-01 2209: ---以reason原因使玩家player回复value的LP,返回实际的回复值
59c6f5280b 2024-07-01 2210: ---如果受到回复变成伤害等效果的影响时,返回值为0.
59c6f5280b 2024-07-01 2211: ---is_step为true则是伤害/恢复LP过程的分解,需要调用Duel.RDComplete()触发时点
59c6f5280b 2024-07-01 2212: ---@return integer
59c6f5280b 2024-07-01 2213: ---@param player integer
59c6f5280b 2024-07-01 2214: ---@param value integer
59c6f5280b 2024-07-01 2215: ---@param reason integer
59c6f5280b 2024-07-01 2216: ---@param is_step? boolean default: false
59c6f5280b 2024-07-01 2217: function Duel.Recover(player,value,reason,is_step) end
59c6f5280b 2024-07-01 2218: 
59c6f5280b 2024-07-01 2219: ---在调用Duel.Damage/Duel.Recover时,若is_step参数为true,则需调用此函数触发时点
59c6f5280b 2024-07-01 2220: function Duel.RDComplete() end
59c6f5280b 2024-07-01 2221: 
59c6f5280b 2024-07-01 2222: ---把c1作为玩家player的装备卡装备给c2,返回值表示是否成功
59c6f5280b 2024-07-01 2223: ---up=false则保持装备卡之前的表示形式
59c6f5280b 2024-07-01 2224: ---is_step=true则是装备过程的分解,需要配合Duel.EquipComplete使用
59c6f5280b 2024-07-01 2225: ---@return boolean
59c6f5280b 2024-07-01 2226: ---@param player integer
59c6f5280b 2024-07-01 2227: ---@param c1 Card
59c6f5280b 2024-07-01 2228: ---@param c2 Card
59c6f5280b 2024-07-01 2229: ---@param up? boolean default: true
59c6f5280b 2024-07-01 2230: ---@param is_step? boolean default: false
59c6f5280b 2024-07-01 2231: function Duel.Equip(player,c1,c2,up,is_step) end
59c6f5280b 2024-07-01 2232: 
59c6f5280b 2024-07-01 2233: ---在调用Duel.Equip时,若is_step参数为true,则需调用此函数触发时点
59c6f5280b 2024-07-01 2234: function Duel.EquipComplete() end
59c6f5280b 2024-07-01 2235: 
59c6f5280b 2024-07-01 2236: ---让玩家 player [直到 reset_count 次 reset_phase 时][在区域 zone]
59c6f5280b 2024-07-01 2237: ---得到 targets 的控制权,返回值表示是否成功
59c6f5280b 2024-07-01 2238: ---@return boolean
59c6f5280b 2024-07-01 2239: ---@param targets Card|Group
59c6f5280b 2024-07-01 2240: ---@param player integer
59c6f5280b 2024-07-01 2241: ---@param reset_phase? integer default: 0
59c6f5280b 2024-07-01 2242: ---@param reset_count? integer default: 0
59c6f5280b 2024-07-01 2243: ---@param zone? integer default: 0xff
59c6f5280b 2024-07-01 2244: function Duel.GetControl(targets,player,reset_phase,reset_count,zone) end
59c6f5280b 2024-07-01 2245: 
59c6f5280b 2024-07-01 2246: ---交换targets1与targets2的控制权,返回值表示是否成功
59c6f5280b 2024-07-01 2247: ---第三个第四个参数同 Duel.GetControl
59c6f5280b 2024-07-01 2248: ---@return boolean
59c6f5280b 2024-07-01 2249: ---@param targets1 Card|Group
59c6f5280b 2024-07-01 2250: ---@param targets2 Card|Group
59c6f5280b 2024-07-01 2251: ---@param reset_phase? integer default: 0
59c6f5280b 2024-07-01 2252: ---@param reset_count? integer default: 0
59c6f5280b 2024-07-01 2253: function Duel.SwapControl(targets1,targets2,reset_phase,reset_count) end
59c6f5280b 2024-07-01 2254: 
59c6f5280b 2024-07-01 2255: ---检查玩家player是否能支付cost点lp,must_pay表示不能用代替支付的效果
59c6f5280b 2024-07-01 2256: ---@return boolean
59c6f5280b 2024-07-01 2257: ---@param player integer
59c6f5280b 2024-07-01 2258: ---@param cost integer
59c6f5280b 2024-07-01 2259: ---@param must_pay? boolean default: false
59c6f5280b 2024-07-01 2260: function Duel.CheckLPCost(player,cost,must_pay) end
59c6f5280b 2024-07-01 2261: 
59c6f5280b 2024-07-01 2262: ---让玩家player支付cost点lp,must_pay表示不能用代替支付的效果
59c6f5280b 2024-07-01 2263: ---@param player integer
59c6f5280b 2024-07-01 2264: ---@param cost integer
59c6f5280b 2024-07-01 2265: ---@param must_pay? boolean default: false
59c6f5280b 2024-07-01 2266: function Duel.PayLPCost(player,cost,must_pay) end
59c6f5280b 2024-07-01 2267: 
59c6f5280b 2024-07-01 2268: ---以原因reason把玩家player的卡组最上端count张卡送去墓地,返回实际转移的数量
59c6f5280b 2024-07-01 2269: ---@return integer
59c6f5280b 2024-07-01 2270: ---@param player integer
59c6f5280b 2024-07-01 2271: ---@param count integer
59c6f5280b 2024-07-01 2272: ---@param reason integer
59c6f5280b 2024-07-01 2273: function Duel.DiscardDeck(player,count,reason) end
59c6f5280b 2024-07-01 2274: 
59c6f5280b 2024-07-01 2275: ---过滤函数让玩家player选择并以reason原因丢弃满足筛选条件f兵不等于ex的min-max张手卡
59c6f5280b 2024-07-01 2276: ---第7个参数开始为额外参数
59c6f5280b 2024-07-01 2277: ---@return integer
59c6f5280b 2024-07-01 2278: ---@param player integer
59c6f5280b 2024-07-01 2279: ---@param f function|nil
59c6f5280b 2024-07-01 2280: ---@param min integer
59c6f5280b 2024-07-01 2281: ---@param max integer
59c6f5280b 2024-07-01 2282: ---@param reason integer
59c6f5280b 2024-07-01 2283: ---@param ex Card|Group|nil
59c6f5280b 2024-07-01 2284: ---@param ... any
59c6f5280b 2024-07-01 2285: function Duel.DiscardHand(player,f,min,max,reason,ex,...) end
59c6f5280b 2024-07-01 2286: 
59c6f5280b 2024-07-01 2287: ---使下一个操作不检查是否需要洗切卡组或手卡
59c6f5280b 2024-07-01 2288: ---注:如果不调用此函数,
59c6f5280b 2024-07-01 2289: ---除了调用Duel.DiscardDeck和Duel.Draw之外从卡组中取出卡或者把卡加入手卡
59c6f5280b 2024-07-01 2290: ---或者把卡加入卡组(非最上端或最底端)时,系统会自动在效果处理结束时洗切卡组或手卡
59c6f5280b 2024-07-01 2291: ---如果不希望如此,比如从卡组顶端除外一张卡等操作,那么需要调用此函数
59c6f5280b 2024-07-01 2292: ---此函数仅保证紧接着的一次操作不会进行洗卡检测
59c6f5280b 2024-07-01 2293: ---@param disable? boolean default: true
59c6f5280b 2024-07-01 2294: function Duel.DisableShuffleCheck(disable) end
59c6f5280b 2024-07-01 2295: 
59c6f5280b 2024-07-01 2296: ---关闭卡片的自爆检查。不传参或传true为关闭,传false为启用自爆检查
59c6f5280b 2024-07-01 2297: ---@param enabled? boolean default: true
59c6f5280b 2024-07-01 2298: function Duel.DisableSelfDestroyCheck(enabled) end
59c6f5280b 2024-07-01 2299: 
59c6f5280b 2024-07-01 2300: ---启用选择卡组时显示真实序号
59c6f5280b 2024-07-01 2301: ---@param enabled? boolean default: true
59c6f5280b 2024-07-01 2302: function Duel.PreserveSelectDeckSequence(enabled) end
59c6f5280b 2024-07-01 2303: 
59c6f5280b 2024-07-01 2304: ---手动洗切玩家player的卡组
59c6f5280b 2024-07-01 2305: ---注:会重置洗卡检测的状态
59c6f5280b 2024-07-01 2306: ---@param player integer
59c6f5280b 2024-07-01 2307: function Duel.ShuffleDeck(player) end
59c6f5280b 2024-07-01 2308: 
59c6f5280b 2024-07-01 2309: ---手动洗切玩家player的额外卡组
59c6f5280b 2024-07-01 2310: ---@param player integer
59c6f5280b 2024-07-01 2311: function Duel.ShuffleExtra(player) end
59c6f5280b 2024-07-01 2312: 
59c6f5280b 2024-07-01 2313: ---手动洗切玩家player的手卡
59c6f5280b 2024-07-01 2314: ---注:会重置洗卡检测的状态
59c6f5280b 2024-07-01 2315: ---@param player integer
59c6f5280b 2024-07-01 2316: function Duel.ShuffleHand(player) end
59c6f5280b 2024-07-01 2317: 
59c6f5280b 2024-07-01 2318: ---洗切覆盖的卡片组 g (实例:魔术礼帽),若g中有表侧表示的卡,则此函数无效
59c6f5280b 2024-07-01 2319: ---此函数现在可以洗切魔陷区的覆盖卡
59c6f5280b 2024-07-01 2320: ---@param g Group
59c6f5280b 2024-07-01 2321: function Duel.ShuffleSetCard(g) end
59c6f5280b 2024-07-01 2322: 
59c6f5280b 2024-07-01 2323: ---将攻击怪兽变为c
59c6f5280b 2024-07-01 2324: ---若 ignore_count=true 则原来的攻击怪兽不视为攻击过
59c6f5280b 2024-07-01 2325: ---@param c Card
59c6f5280b 2024-07-01 2326: ---@param ignore_count? boolean default: false
59c6f5280b 2024-07-01 2327: function Duel.ChangeAttacker(c,ignore_count) end
59c6f5280b 2024-07-01 2328: 
59c6f5280b 2024-07-01 2329: ---将攻击对象变为c,c为nil表示直接攻击,返回值表示是否成功转移攻击对象
59c6f5280b 2024-07-01 2330: ---@return boolean
59c6f5280b 2024-07-01 2331: ---@param c Card|nil
59c6f5280b 2024-07-01 2332: function Duel.ChangeAttackTarget(c) end
59c6f5280b 2024-07-01 2333: 
59c6f5280b 2024-07-01 2334: ---令c1与c2进行战斗伤害计算(c1 攻击 c2)
59c6f5280b 2024-07-01 2335: ---若 new_attack=true 则视为 攻击的卡进行过攻击宣言(?)
59c6f5280b 2024-07-01 2336: ---@param c1 Card
59c6f5280b 2024-07-01 2337: ---@param c2 Card
59c6f5280b 2024-07-01 2338: ---@param new_attack? boolean default: false
59c6f5280b 2024-07-01 2339: function Duel.CalculateDamage(c1,c2,new_attack) end
59c6f5280b 2024-07-01 2340: 
59c6f5280b 2024-07-01 2341: ---返回玩家player在本次战斗中受到的伤害
59c6f5280b 2024-07-01 2342: ---@return integer
59c6f5280b 2024-07-01 2343: ---@param player integer
59c6f5280b 2024-07-01 2344: function Duel.GetBattleDamage(player) end
59c6f5280b 2024-07-01 2345: 
59c6f5280b 2024-07-01 2346: ---把玩家player在本次战斗中受到的伤害变成value,若 check=false 则原本战斗伤害就算为0也改变伤害
59c6f5280b 2024-07-01 2347: ---@param player integer
59c6f5280b 2024-07-01 2348: ---@param value integer
59c6f5280b 2024-07-01 2349: ---@param check? boolean default: true
59c6f5280b 2024-07-01 2350: function Duel.ChangeBattleDamage(player,value,check) end
59c6f5280b 2024-07-01 2351: 
59c6f5280b 2024-07-01 2352: ---把连锁chainc的对象换成g
59c6f5280b 2024-07-01 2353: ---@param chainc integer
59c6f5280b 2024-07-01 2354: ---@param g Group
59c6f5280b 2024-07-01 2355: function Duel.ChangeTargetCard(chainc,g) end
59c6f5280b 2024-07-01 2356: 
59c6f5280b 2024-07-01 2357: ---把连锁chainc的对象玩家换成player
59c6f5280b 2024-07-01 2358: ---@param chainc integer
59c6f5280b 2024-07-01 2359: ---@param player integer
59c6f5280b 2024-07-01 2360: function Duel.ChangeTargetPlayer(chainc,player) end
59c6f5280b 2024-07-01 2361: 
59c6f5280b 2024-07-01 2362: ---把连锁chainc的参数换成param
59c6f5280b 2024-07-01 2363: ---@param chainc integer
59c6f5280b 2024-07-01 2364: ---@param param integer
59c6f5280b 2024-07-01 2365: function Duel.ChangeTargetParam(chainc,param) end
59c6f5280b 2024-07-01 2366: 
59c6f5280b 2024-07-01 2367: ---中断当前效果,使之后的效果处理视为不同时处理,此函数会造成错时点
59c6f5280b 2024-07-01 2368: function Duel.BreakEffect() end
59c6f5280b 2024-07-01 2369: 
59c6f5280b 2024-07-01 2370: ---把连锁chainc的效果的处理函数换成f,用于实现“把效果变成”等的效果
59c6f5280b 2024-07-01 2371: ---f(e,tp,eg,ep,ev,re,r,rp)
59c6f5280b 2024-07-01 2372: ---@param chainc integer
59c6f5280b 2024-07-01 2373: ---@param f function
59c6f5280b 2024-07-01 2374: function Duel.ChangeChainOperation(chainc,f) end
59c6f5280b 2024-07-01 2375: 
59c6f5280b 2024-07-01 2376: ---使连锁chainc的发动无效,返回值表示是否成功
59c6f5280b 2024-07-01 2377: ---@return boolean
59c6f5280b 2024-07-01 2378: ---@param chainc integer
59c6f5280b 2024-07-01 2379: function Duel.NegateActivation(chainc) end
59c6f5280b 2024-07-01 2380: 
59c6f5280b 2024-07-01 2381: ---使连锁chainc的效果无效,返回值表示是否成功
59c6f5280b 2024-07-01 2382: ---@return boolean
59c6f5280b 2024-07-01 2383: ---@param chainc integer
59c6f5280b 2024-07-01 2384: ---@param forced? boolean
59c6f5280b 2024-07-01 2385: function Duel.NegateEffect(chainc,forced) end
59c6f5280b 2024-07-01 2386: 
59c6f5280b 2024-07-01 2387: ---使和卡片c有关的连锁都无效化,发生reset事件则重置,reset 默认包含 RESET_CHAIN
59c6f5280b 2024-07-01 2388: ---@param c Card
59c6f5280b 2024-07-01 2389: ---@param reset integer
59c6f5280b 2024-07-01 2390: function Duel.NegateRelatedChain(c,reset) end
59c6f5280b 2024-07-01 2391: 
59c6f5280b 2024-07-01 2392: ---使正在召唤·反转召唤·特殊召唤的targets的召唤无效
59c6f5280b 2024-07-01 2393: ---@param targets Card|Group
59c6f5280b 2024-07-01 2394: function Duel.NegateSummon(targets) end
59c6f5280b 2024-07-01 2395: 
59c6f5280b 2024-07-01 2396: ---手动增加1次玩家[对于卡片c]的已经通常召唤过的次数
59c6f5280b 2024-07-01 2397: ---@param c? Card
59c6f5280b 2024-07-01 2398: function Duel.IncreaseSummonedCount(c) end
59c6f5280b 2024-07-01 2399: 
59c6f5280b 2024-07-01 2400: ---检查回合玩家本回合是否还能通常召唤[卡片c]
59c6f5280b 2024-07-01 2401: ---@return boolean
59c6f5280b 2024-07-01 2402: ---@param c? Card
59c6f5280b 2024-07-01 2403: function Duel.CheckSummonedCount(c) end
59c6f5280b 2024-07-01 2404: 
59c6f5280b 2024-07-01 2405: ---返回玩家player的场上location可用的[区域 zone 里的]空格数
59c6f5280b 2024-07-01 2406: ---location只能是LOCATION_MZONE或者LOCATION_SZONE
59c6f5280b 2024-07-01 2407: ---reason为LOCATION_REASON_TOFIELD或LOCATION_REASON_CONTROL
59c6f5280b 2024-07-01 2408: ---##第三个第四个额外参数与凯撒斗技场等限制格子的效果有关
59c6f5280b 2024-07-01 2409: ---@return integer
59c6f5280b 2024-07-01 2410: ---@param player integer
59c6f5280b 2024-07-01 2411: ---@param location integer
59c6f5280b 2024-07-01 2412: ---@param use_player? integer
59c6f5280b 2024-07-01 2413: ---@param reason? integer
59c6f5280b 2024-07-01 2414: ---@param zone? integer default: 0xff
59c6f5280b 2024-07-01 2415: function Duel.GetLocationCount(player,location,use_player,reason,zone) end
59c6f5280b 2024-07-01 2416: 
59c6f5280b 2024-07-01 2417: ---返回玩家player场上[targets 离开后]可用的[区域 zone 里的]怪兽区数量
59c6f5280b 2024-07-01 2418: ---##第三个第四个额外参数与凯撒斗技场等限制格子的效果有关
59c6f5280b 2024-07-01 2419: ---@return integer
59c6f5280b 2024-07-01 2420: ---@return integer zone
59c6f5280b 2024-07-01 2421: ---@param player integer
59c6f5280b 2024-07-01 2422: ---@param targets? Group|Card
59c6f5280b 2024-07-01 2423: ---@param use_player? integer
59c6f5280b 2024-07-01 2424: ---@param reason? integer
59c6f5280b 2024-07-01 2425: ---@param zone? integer default: 0xff
59c6f5280b 2024-07-01 2426: function Duel.GetMZoneCount(player,targets,use_player,reason,zone) end
59c6f5280b 2024-07-01 2427: 
59c6f5280b 2024-07-01 2428: ---返回玩家player场上[假如因玩家 reason_player 的原因让 targets 离场后,把卡片 sc 在 zone 区域特殊召唤]可用的 能让额外卡组的怪兽 出场的空格数
59c6f5280b 2024-07-01 2429: ---@return integer
59c6f5280b 2024-07-01 2430: ---@param player integer
59c6f5280b 2024-07-01 2431: ---@param reason_player? integer default: player
59c6f5280b 2024-07-01 2432: ---@param targets? Group|Card|nil
59c6f5280b 2024-07-01 2433: ---@param sc? Card|integer
59c6f5280b 2024-07-01 2434: ---@param zone? integer default: 0xff
59c6f5280b 2024-07-01 2435: function Duel.GetLocationCountFromEx(player,reason_player,targets,sc,zone) end
59c6f5280b 2024-07-01 2436: 
59c6f5280b 2024-07-01 2437: ---返回玩家player场上[对于 use_player 来说]可用的怪兽区数量(?)
59c6f5280b 2024-07-01 2438: ---@return integer
59c6f5280b 2024-07-01 2439: ---@param player integer
59c6f5280b 2024-07-01 2440: ---@param use_player? integer
59c6f5280b 2024-07-01 2441: function Duel.GetUsableMZoneCount(player,use_player) end
59c6f5280b 2024-07-01 2442: 
59c6f5280b 2024-07-01 2443: ---返回以玩家player来看的 s_range 和 o_range 区域的处于连接状态的卡片组[其实只要后面2个参数不为0就行,只要不为0,都会变成LOCATION_MZONE](?)
59c6f5280b 2024-07-01 2444: ---@return Group
59c6f5280b 2024-07-01 2445: ---@param player integer
59c6f5280b 2024-07-01 2446: ---@param s_range integer
59c6f5280b 2024-07-01 2447: ---@param o_range integer
59c6f5280b 2024-07-01 2448: function Duel.GetLinkedGroup(player,s_range,o_range) end
59c6f5280b 2024-07-01 2449: 
59c6f5280b 2024-07-01 2450: ---返回以玩家player来看的 s_range 和 o_range 区域的处于连接状态的卡片的数量(?)
59c6f5280b 2024-07-01 2451: ---@return integer
59c6f5280b 2024-07-01 2452: ---@param player integer
59c6f5280b 2024-07-01 2453: ---@param s_range integer
59c6f5280b 2024-07-01 2454: ---@param o_range integer
59c6f5280b 2024-07-01 2455: function Duel.GetLinkedGroupCount(player,s_range,o_range) end
59c6f5280b 2024-07-01 2456: 
59c6f5280b 2024-07-01 2457: ---返回以玩家player来看的所有连接区域
59c6f5280b 2024-07-01 2458: ---@return integer
59c6f5280b 2024-07-01 2459: ---@param player integer
59c6f5280b 2024-07-01 2460: function Duel.GetLinkedZone(player) end
59c6f5280b 2024-07-01 2461: 
59c6f5280b 2024-07-01 2462: ---返回玩家player的场上位于location序号为seq的卡,常用于获得场地区域·灵摆区域的卡
59c6f5280b 2024-07-01 2463: ---注:召唤·反转召唤·特殊召唤 之际 的卡无法获取
59c6f5280b 2024-07-01 2464: ---@return Card
59c6f5280b 2024-07-01 2465: ---@param player integer
59c6f5280b 2024-07-01 2466: ---@param location integer
59c6f5280b 2024-07-01 2467: ---@param seq integer
59c6f5280b 2024-07-01 2468: function Duel.GetFieldCard(player,location,seq) end
59c6f5280b 2024-07-01 2469: 
59c6f5280b 2024-07-01 2470: ---检查玩家player的场上位于location序号为seq的空格是否可用
59c6f5280b 2024-07-01 2471: ---@return boolean
59c6f5280b 2024-07-01 2472: ---@param player integer
59c6f5280b 2024-07-01 2473: ---@param location integer
59c6f5280b 2024-07-01 2474: ---@param seq integer
59c6f5280b 2024-07-01 2475: function Duel.CheckLocation(player,location,seq) end
59c6f5280b 2024-07-01 2476: 
59c6f5280b 2024-07-01 2477: ---返回当前的连锁个数(即正在处理的连锁序号)
59c6f5280b 2024-07-01 2478: ---@return integer
59c6f5280b 2024-07-01 2479: function Duel.GetCurrentChain() end
59c6f5280b 2024-07-01 2480: 
59c6f5280b 2024-07-01 2481: ---返回当前已执行Target函数的连锁个数
59c6f5280b 2024-07-01 2482: ---@return integer
59c6f5280b 2024-07-01 2483: function Duel.GetReadyChain() end
59c6f5280b 2024-07-01 2484: 
59c6f5280b 2024-07-01 2485: ---返回连锁chainc的信息,如果chainc=0,则返回当前正在处理的连锁的信息
59c6f5280b 2024-07-01 2486: ---此函数根据传入的参数个数按顺序返回相应数量的返回值参数可以是:
59c6f5280b 2024-07-01 2487: ---CHAININFO_CHAIN_COUNT               连锁序号
59c6f5280b 2024-07-01 2488: ---CHAININFO_TRIGGERING_EFFECT         连锁的效果
59c6f5280b 2024-07-01 2489: ---CHAININFO_TRIGGERING_PLAYER         连锁的玩家
59c6f5280b 2024-07-01 2490: ---CHAININFO_TRIGGERING_CONTROLER      连锁发生位置所属玩家
59c6f5280b 2024-07-01 2491: ---CHAININFO_TRIGGERING_LOCATION       连锁发生位置
59c6f5280b 2024-07-01 2492: ---CHAININFO_TRIGGERING_SEQUENCE       连锁发生的位置的序号
59c6f5280b 2024-07-01 2493: ---CHAININFO_TARGET_CARDS              连锁的对象卡片组
59c6f5280b 2024-07-01 2494: ---CHAININFO_TARGET_PLAYER             连锁的对象玩家
59c6f5280b 2024-07-01 2495: ---CHAININFO_TARGET_PARAM              连锁的对象参数
59c6f5280b 2024-07-01 2496: ---CHAININFO_DISABLE_REASON            连锁被无效的原因效果
59c6f5280b 2024-07-01 2497: ---CHAININFO_DISABLE_PLAYER            连锁被无效的原因玩家
59c6f5280b 2024-07-01 2498: ---CHAININFO_CHAIN_ID                  连锁的唯一标识
59c6f5280b 2024-07-01 2499: ---CHAININFO_TYPE                      连锁卡片的类型(怪兽·魔法·陷阱)
59c6f5280b 2024-07-01 2500: ---CHAININFO_EXTTYPE                   连锁卡片的具体类型(例如同调怪兽·永续魔法·反击陷阱)
59c6f5280b 2024-07-01 2501: ---举例:
59c6f5280b 2024-07-01 2502: ---Duel.GetChainInfo(0,CHAININFO_TRIGGERING_LOCATION,CHAININFO_TARGET_CARDS)
59c6f5280b 2024-07-01 2503: ---将会返回当前连锁发生的位置和对象卡
59c6f5280b 2024-07-01 2504: ---@return ...
59c6f5280b 2024-07-01 2505: ---@param chainc integer
59c6f5280b 2024-07-01 2506: ---@param ... any
59c6f5280b 2024-07-01 2507: function Duel.GetChainInfo(chainc,...) end
59c6f5280b 2024-07-01 2508: 
59c6f5280b 2024-07-01 2509: ---返回连锁 chainc 的相关参数,如果 chainc=0,则返回当前正在处理的连锁的相关参数
59c6f5280b 2024-07-01 2510: ---返回6个参数,eg,ep,ev,re,r,rp
59c6f5280b 2024-07-01 2511: ---@return Group
59c6f5280b 2024-07-01 2512: ---@return integer
59c6f5280b 2024-07-01 2513: ---@return integer
59c6f5280b 2024-07-01 2514: ---@return Effect
59c6f5280b 2024-07-01 2515: ---@return integer
59c6f5280b 2024-07-01 2516: ---@return integer
59c6f5280b 2024-07-01 2517: ---@param chainc integer
59c6f5280b 2024-07-01 2518: function Duel.GetChainEvent(chainc) end
59c6f5280b 2024-07-01 2519: 
59c6f5280b 2024-07-01 2520: ---返回当前连锁的所有的对象卡,一般只有一个对象时使用
59c6f5280b 2024-07-01 2521: ---##多个对象也能使用,剩下的对象依次按顺序返回,但是很容易记错对象的顺序,所以不建议对多个对象使用
59c6f5280b 2024-07-01 2522: ---@return Card
59c6f5280b 2024-07-01 2523: ---@return ... Card
59c6f5280b 2024-07-01 2524: function Duel.GetFirstTarget() end
59c6f5280b 2024-07-01 2525: 
59c6f5280b 2024-07-01 2526: ---返回当前连锁所有有关联的对象卡
59c6f5280b 2024-07-01 2527: ---@return Group
59c6f5280b 2024-07-01 2528: function Duel.GetTargetsRelateToChain() end
59c6f5280b 2024-07-01 2529: 
59c6f5280b 2024-07-01 2530: ---返回当前的阶段是否为phase
59c6f5280b 2024-07-01 2531: ---@param phase integer
59c6f5280b 2024-07-01 2532: ---@return boolean
59c6f5280b 2024-07-01 2533: function Duel.IsPhase(phase) end
59c6f5280b 2024-07-01 2534: 
59c6f5280b 2024-07-01 2535: ---返回当前的阶段是否为主要阶段
59c6f5280b 2024-07-01 2536: ---@return boolean
59c6f5280b 2024-07-01 2537: function Duel.IsMainPhase() end
59c6f5280b 2024-07-01 2538: 
59c6f5280b 2024-07-01 2539: ---返回当前的阶段是否为战斗阶段
59c6f5280b 2024-07-01 2540: ---@return boolean
59c6f5280b 2024-07-01 2541: function Duel.IsBattlePhase() end
59c6f5280b 2024-07-01 2542: 
59c6f5280b 2024-07-01 2543: ---返回当前的阶段
59c6f5280b 2024-07-01 2544: ---@return integer
59c6f5280b 2024-07-01 2545: function Duel.GetCurrentPhase() end
59c6f5280b 2024-07-01 2546: 
59c6f5280b 2024-07-01 2547: ---跳过玩家player的phase阶段,并在特定的阶段后reset,reset参数和效果相同
59c6f5280b 2024-07-01 2548: ---#value只对phase=PHASE_BATTLE才有用,value=1跳过战斗阶段的结束步骤,用于“变成回合结束阶段”等(招财猫王,闪光弹)
59c6f5280b 2024-07-01 2549: ---@param player integer
59c6f5280b 2024-07-01 2550: ---@param phase integer
59c6f5280b 2024-07-01 2551: ---@param reset_flag integer
59c6f5280b 2024-07-01 2552: ---@param reset_count integer
59c6f5280b 2024-07-01 2553: ---@param value? integer
59c6f5280b 2024-07-01 2554: function Duel.SkipPhase(player,phase,reset_flag,reset_count,value) end
59c6f5280b 2024-07-01 2555: 
59c6f5280b 2024-07-01 2556: ---用于在伤害阶段检查是否已经计算了战斗伤害
59c6f5280b 2024-07-01 2557: ---@return boolean
59c6f5280b 2024-07-01 2558: function Duel.IsDamageCalculated() end
59c6f5280b 2024-07-01 2559: 
59c6f5280b 2024-07-01 2560: ---返回此次战斗攻击的卡
59c6f5280b 2024-07-01 2561: ---@return Card
59c6f5280b 2024-07-01 2562: function Duel.GetAttacker() end
59c6f5280b 2024-07-01 2563: 
59c6f5280b 2024-07-01 2564: ---返回此次战斗被攻击的卡,如果返回nil表示是直接攻击
59c6f5280b 2024-07-01 2565: ---@return Card
59c6f5280b 2024-07-01 2566: function Duel.GetAttackTarget() end
59c6f5280b 2024-07-01 2567: 
59c6f5280b 2024-07-01 2568: ---返回由player操控的正处于战斗中的怪兽。如果没有战斗或没有目标则会返回nil。
59c6f5280b 2024-07-01 2569: ---@return Card
59c6f5280b 2024-07-01 2570: ---@return Card
59c6f5280b 2024-07-01 2571: ---@param player integer
59c6f5280b 2024-07-01 2572: function Duel.GetBattleMonster(player) end
59c6f5280b 2024-07-01 2573: 
59c6f5280b 2024-07-01 2574: ---无效此次攻击,返回值表示是否成功
59c6f5280b 2024-07-01 2575: ---此次攻击已经被其他效果无效或导致攻击的卡不能攻击则返回false
59c6f5280b 2024-07-01 2576: ---@return boolean
59c6f5280b 2024-07-01 2577: function Duel.NegateAttack() end
59c6f5280b 2024-07-01 2578: 
59c6f5280b 2024-07-01 2579: ---使攻击卡[或卡片c]可以再进行1次攻击(比如 大开辟,破灭的女王)
59c6f5280b 2024-07-01 2580: ---@param c? Card
59c6f5280b 2024-07-01 2581: function Duel.ChainAttack(c) end
59c6f5280b 2024-07-01 2582: 
59c6f5280b 2024-07-01 2583: ---刷新场上的卡的信息
59c6f5280b 2024-07-01 2584: ---非特定情况或者不清楚原理请勿使用此函数以免形成死循环
59c6f5280b 2024-07-01 2585: function Duel.Readjust() end
59c6f5280b 2024-07-01 2586: 
59c6f5280b 2024-07-01 2587: ---手动刷新场上[受到卡片c影响]的卡的无效状态
59c6f5280b 2024-07-01 2588: ---@param c? Card
59c6f5280b 2024-07-01 2589: function Duel.AdjustInstantly(c) end
59c6f5280b 2024-07-01 2590: 
59c6f5280b 2024-07-01 2591: ---立刻刷新场地信息
59c6f5280b 2024-07-01 2592: function Duel.AdjustAll() end
59c6f5280b 2024-07-01 2593: 
59c6f5280b 2024-07-01 2594: ---返回以player来看的指定位置的卡,s代表以player来看的自己的位置,o代表以player来看的对方的位置
59c6f5280b 2024-07-01 2595: ---@return Group
59c6f5280b 2024-07-01 2596: ---@param player integer
59c6f5280b 2024-07-01 2597: ---@param s integer
59c6f5280b 2024-07-01 2598: ---@param o integer
59c6f5280b 2024-07-01 2599: function Duel.GetFieldGroup(player,s,o) end
59c6f5280b 2024-07-01 2600: 
59c6f5280b 2024-07-01 2601: ---同 Duel.GetFieldGroup ,只是返回的是卡的数量
59c6f5280b 2024-07-01 2602: ---@return integer
59c6f5280b 2024-07-01 2603: ---@param player integer
59c6f5280b 2024-07-01 2604: ---@param s integer
59c6f5280b 2024-07-01 2605: ---@param o integer
59c6f5280b 2024-07-01 2606: function Duel.GetFieldGroupCount(player,s,o) end
59c6f5280b 2024-07-01 2607: 
59c6f5280b 2024-07-01 2608: ---返回玩家player的卡组最上方的count张卡
59c6f5280b 2024-07-01 2609: ---@return Group
59c6f5280b 2024-07-01 2610: ---@param player integer
59c6f5280b 2024-07-01 2611: ---@param count integer
59c6f5280b 2024-07-01 2612: function Duel.GetDecktopGroup(player,count) end
59c6f5280b 2024-07-01 2613: 
59c6f5280b 2024-07-01 2614: ---返回玩家player的额外卡组表侧表示的卡中最上方的count张卡
59c6f5280b 2024-07-01 2615: ---@return Group
59c6f5280b 2024-07-01 2616: ---@param player integer
59c6f5280b 2024-07-01 2617: ---@param count integer
59c6f5280b 2024-07-01 2618: function Duel.GetExtraTopGroup(player,count) end
59c6f5280b 2024-07-01 2619: 
59c6f5280b 2024-07-01 2620: ---过滤函数,返回以player来看的指定位置满足过滤条件f并且不等于ex的卡
59c6f5280b 2024-07-01 2621: ---s代表以player来看的自己的位置,o代表以player来看的对方的位置
59c6f5280b 2024-07-01 2622: ---第6个参数开始为额外参数
59c6f5280b 2024-07-01 2623: ---@return Group
59c6f5280b 2024-07-01 2624: ---@param f function|nil
59c6f5280b 2024-07-01 2625: ---@param player integer
59c6f5280b 2024-07-01 2626: ---@param s integer
59c6f5280b 2024-07-01 2627: ---@param o integer
59c6f5280b 2024-07-01 2628: ---@param ex Card|Group|nil
59c6f5280b 2024-07-01 2629: ---@param ... any
59c6f5280b 2024-07-01 2630: function Duel.GetMatchingGroup(f,player,s,o,ex,...) end
59c6f5280b 2024-07-01 2631: 
59c6f5280b 2024-07-01 2632: ---过滤函数,返回以player来看的指定位置满足过滤条件f并且不等于ex的卡的数量
59c6f5280b 2024-07-01 2633: ---s代表以player来看的自己的位置,o代表以player来看的对方的位置
59c6f5280b 2024-07-01 2634: ---第6个参数开始为额外参数
59c6f5280b 2024-07-01 2635: ---@return integer
59c6f5280b 2024-07-01 2636: ---@param f function|nil
59c6f5280b 2024-07-01 2637: ---@param player integer
59c6f5280b 2024-07-01 2638: ---@param s integer
59c6f5280b 2024-07-01 2639: ---@param o integer
59c6f5280b 2024-07-01 2640: ---@param ex Card|Group|nil
59c6f5280b 2024-07-01 2641: ---@param ... any
59c6f5280b 2024-07-01 2642: function Duel.GetMatchingGroupCount(f,player,s,o,ex,...) end
59c6f5280b 2024-07-01 2643: 
59c6f5280b 2024-07-01 2644: ---过滤函数,返回以player来看的指定位置满足过滤条件f并且不等于ex的第一张卡,没有则返回nil
59c6f5280b 2024-07-01 2645: ---s代表以player来看的自己的位置,o代表以player来看的对方的位置
59c6f5280b 2024-07-01 2646: ---第6个参数开始为额外参数
59c6f5280b 2024-07-01 2647: ---@return Card
59c6f5280b 2024-07-01 2648: ---@param f function|nil
59c6f5280b 2024-07-01 2649: ---@param player integer
59c6f5280b 2024-07-01 2650: ---@param s integer
59c6f5280b 2024-07-01 2651: ---@param o integer
59c6f5280b 2024-07-01 2652: ---@param ex Card|Group|nil
59c6f5280b 2024-07-01 2653: ---@param ... any
59c6f5280b 2024-07-01 2654: function Duel.GetFirstMatchingCard(f,player,s,o,ex,...) end
59c6f5280b 2024-07-01 2655: 
59c6f5280b 2024-07-01 2656: ---过滤函数,检查以player来看的指定位置是否存在至少count张满足过滤条件f并且不等于ex的卡
59c6f5280b 2024-07-01 2657: ---s代表以player来看的自己的位置,o代表以player来看的对方的位置
59c6f5280b 2024-07-01 2658: ---第7个参数开始为额外参数
59c6f5280b 2024-07-01 2659: ---@return boolean
59c6f5280b 2024-07-01 2660: ---@param f function|nil
59c6f5280b 2024-07-01 2661: ---@param player integer
59c6f5280b 2024-07-01 2662: ---@param s integer
59c6f5280b 2024-07-01 2663: ---@param o integer
59c6f5280b 2024-07-01 2664: ---@param count integer
59c6f5280b 2024-07-01 2665: ---@param ex Card|Group|nil
59c6f5280b 2024-07-01 2666: ---@param ... any
59c6f5280b 2024-07-01 2667: function Duel.IsExistingMatchingCard(f,player,s,o,count,ex,...) end
59c6f5280b 2024-07-01 2668: 
59c6f5280b 2024-07-01 2669: ---过滤函数,让玩家sel_player选择以player来看的指定位置满足过滤条件f并且不等于ex的min-max张卡
59c6f5280b 2024-07-01 2670: ---s代表以player来看的自己的位置,o代表以player来看的对方的位置
59c6f5280b 2024-07-01 2671: ---第9个参数开始为额外参数
59c6f5280b 2024-07-01 2672: ---@return Group
59c6f5280b 2024-07-01 2673: ---@param sel_player integer
59c6f5280b 2024-07-01 2674: ---@param f function|nil
59c6f5280b 2024-07-01 2675: ---@param player integer
59c6f5280b 2024-07-01 2676: ---@param s integer
59c6f5280b 2024-07-01 2677: ---@param o integer
59c6f5280b 2024-07-01 2678: ---@param min integer
59c6f5280b 2024-07-01 2679: ---@param max integer
59c6f5280b 2024-07-01 2680: ---@param ex Card|Group|nil
59c6f5280b 2024-07-01 2681: ---@param ... any
59c6f5280b 2024-07-01 2682: function Duel.SelectMatchingCard(sel_player,f,player,s,o,min,max,ex,...) end
59c6f5280b 2024-07-01 2683: 
59c6f5280b 2024-07-01 2684: ---返回玩家player能以原因reason解放的卡片组, use_hand=true 则包括手卡
59c6f5280b 2024-07-01 2685: ---@return Group
59c6f5280b 2024-07-01 2686: ---@param player integer
59c6f5280b 2024-07-01 2687: ---@param use_hand? boolean default: false
59c6f5280b 2024-07-01 2688: ---@param reason? integer default: REASON_COST
59c6f5280b 2024-07-01 2689: function Duel.GetReleaseGroup(player,use_hand,reason) end
59c6f5280b 2024-07-01 2690: 
59c6f5280b 2024-07-01 2691: ---返回玩家player能以原因reason解放的卡片数量, use_hand=true 则包括手卡
59c6f5280b 2024-07-01 2692: ---@return integer
59c6f5280b 2024-07-01 2693: ---@param player integer
59c6f5280b 2024-07-01 2694: ---@param use_hand? boolean default: false
59c6f5280b 2024-07-01 2695: ---@param reason? integer default: REASON_COST
59c6f5280b 2024-07-01 2696: function Duel.GetReleaseGroupCount(player,use_hand,reason) end
59c6f5280b 2024-07-01 2697: 
59c6f5280b 2024-07-01 2698: ---检查玩家player场上是否存在至少count张满足过滤条件f并且不等于ex的能以原因REASON_COST解放的卡
59c6f5280b 2024-07-01 2699: ---第5个参数开始为额外参数
59c6f5280b 2024-07-01 2700: ---@return boolean
59c6f5280b 2024-07-01 2701: ---@param player integer
59c6f5280b 2024-07-01 2702: ---@param f function|nil
59c6f5280b 2024-07-01 2703: ---@param count integer
59c6f5280b 2024-07-01 2704: ---@param ex Card|Group|nil
59c6f5280b 2024-07-01 2705: ---@param ... any
59c6f5280b 2024-07-01 2706: function Duel.CheckReleaseGroup(player,f,count,ex,...) end
59c6f5280b 2024-07-01 2707: 
59c6f5280b 2024-07-01 2708: ---过滤函数,让玩家sel_player从场上选择min-max张不等于ex的满足条件f的能以原因REASON_COST解放的卡
59c6f5280b 2024-07-01 2709: ---第6个参数开始为额外参数
59c6f5280b 2024-07-01 2710: ---@return Group
59c6f5280b 2024-07-01 2711: ---@param sel_player integer
59c6f5280b 2024-07-01 2712: ---@param f function|nil
59c6f5280b 2024-07-01 2713: ---@param min integer
59c6f5280b 2024-07-01 2714: ---@param max integer
59c6f5280b 2024-07-01 2715: ---@param ex Card|Group|nil
59c6f5280b 2024-07-01 2716: ---@param ... any
59c6f5280b 2024-07-01 2717: function Duel.SelectReleaseGroup(sel_player,f,min,max,ex,...) end
59c6f5280b 2024-07-01 2718: 
59c6f5280b 2024-07-01 2719: ---检查玩家player场上是否存在至少count张满足过滤条件f并且不等于ex的能以原因reason解放的卡,use_hand则包括手卡
59c6f5280b 2024-07-01 2720: ---第5个参数开始为额外参数
59c6f5280b 2024-07-01 2721: ---@return boolean
59c6f5280b 2024-07-01 2722: ---@param player integer
59c6f5280b 2024-07-01 2723: ---@param f function|nil
59c6f5280b 2024-07-01 2724: ---@param count integer
59c6f5280b 2024-07-01 2725: ---@param reason integer
59c6f5280b 2024-07-01 2726: ---@param use_hand boolean
59c6f5280b 2024-07-01 2727: ---@param ex Card|Group|nil
59c6f5280b 2024-07-01 2728: ---@param ... any
59c6f5280b 2024-07-01 2729: function Duel.CheckReleaseGroupEx(player,f,count,reason,use_hand,ex,...) end
59c6f5280b 2024-07-01 2730: 
59c6f5280b 2024-07-01 2731: ---过滤函数,让玩家player从场上选择min-max张满足过滤条件f并且不等于ex的能以原因reason解放的卡,use_hand则包括手卡
59c6f5280b 2024-07-01 2732: ---第6个参数开始为额外参数
59c6f5280b 2024-07-01 2733: ---@return Group
59c6f5280b 2024-07-01 2734: ---@param player integer
59c6f5280b 2024-07-01 2735: ---@param f function|nil
59c6f5280b 2024-07-01 2736: ---@param min integer
59c6f5280b 2024-07-01 2737: ---@param max integer
59c6f5280b 2024-07-01 2738: ---@param reason integer
59c6f5280b 2024-07-01 2739: ---@param use_hand boolean
59c6f5280b 2024-07-01 2740: ---@param ex Card|Group|nil
59c6f5280b 2024-07-01 2741: ---@param ... any
59c6f5280b 2024-07-01 2742: function Duel.SelectReleaseGroupEx(player,f,min,max,reason,use_hand,ex,...) end
59c6f5280b 2024-07-01 2743: 
59c6f5280b 2024-07-01 2744: ---返回场上用于通常召唤c可解放(上级召唤用)的卡片组
59c6f5280b 2024-07-01 2745: ---@return Group
59c6f5280b 2024-07-01 2746: ---@param c Card
59c6f5280b 2024-07-01 2747: function Duel.GetTributeGroup(c) end
59c6f5280b 2024-07-01 2748: 
59c6f5280b 2024-07-01 2749: ---返回场上[或mg中]用于通常召唤c的祭品数量,ex=true则允许对方场上的怪兽(太阳神之翼神龙-球体形)
59c6f5280b 2024-07-01 2750: ---此数量不一定等于Duel.GetTributeGroup的返回值中的卡片数量
59c6f5280b 2024-07-01 2751: ---因为某些卡可以作为多个祭品来使用
59c6f5280b 2024-07-01 2752: ---@return integer
59c6f5280b 2024-07-01 2753: ---@param c Card
59c6f5280b 2024-07-01 2754: ---@param mg? Group
59c6f5280b 2024-07-01 2755: ---@param ex? boolean default: false
59c6f5280b 2024-07-01 2756: function Duel.GetTributeCount(c,mg,ex) end
59c6f5280b 2024-07-01 2757: 
59c6f5280b 2024-07-01 2758: ---判断场上[或mg中]是否存在用于通常召唤c[到toplayer场上的区域 zone]的min[到max]个祭品
59c6f5280b 2024-07-01 2759: ---@return Group
59c6f5280b 2024-07-01 2760: ---@param c Card
59c6f5280b 2024-07-01 2761: ---@param min integer
59c6f5280b 2024-07-01 2762: ---@param max? integer|nil default: min
59c6f5280b 2024-07-01 2763: ---@param mg? Group|nil
59c6f5280b 2024-07-01 2764: ---@param toplayer? integer|nil default: c:GetControler()
59c6f5280b 2024-07-01 2765: ---@param zone? integer|nil default: 0x1f
59c6f5280b 2024-07-01 2766: function Duel.CheckTribute(c,min,max,mg,toplayer,zone) end
59c6f5280b 2024-07-01 2767: 
59c6f5280b 2024-07-01 2768: ---让玩家player从场上[或mg中]选择用于通常召唤c的min-max个祭品,召唤到 toplayer 场上
59c6f5280b 2024-07-01 2769: ---@return Group
59c6f5280b 2024-07-01 2770: ---@param player integer
59c6f5280b 2024-07-01 2771: ---@param c Card
59c6f5280b 2024-07-01 2772: ---@param min integer
59c6f5280b 2024-07-01 2773: ---@param max integer
59c6f5280b 2024-07-01 2774: ---@param mg? Group|nil
59c6f5280b 2024-07-01 2775: ---@param toplayer? integer|nil default: c:GetControler()
59c6f5280b 2024-07-01 2776: function Duel.SelectTribute(player,c,min,max,mg,toplayer) end
59c6f5280b 2024-07-01 2777: 
59c6f5280b 2024-07-01 2778: ---基本同Duel.GetMatchingGroupCount ,不同之处在于需要追加判定卡片是否能成为当前正在处理的效果的对象
59c6f5280b 2024-07-01 2779: ---@return integer
59c6f5280b 2024-07-01 2780: ---@param f function|nil
59c6f5280b 2024-07-01 2781: ---@param player integer
59c6f5280b 2024-07-01 2782: ---@param s integer
59c6f5280b 2024-07-01 2783: ---@param o integer
59c6f5280b 2024-07-01 2784: ---@param ex Card|Group|nil
59c6f5280b 2024-07-01 2785: ---@param ... any
59c6f5280b 2024-07-01 2786: function Duel.GetTargetCount(f,player,s,o,ex,...) end
59c6f5280b 2024-07-01 2787: 
59c6f5280b 2024-07-01 2788: ---基本同Duel.IsExistingMatchingCard ,不同之处在于需要追加判定卡片是否能成为当前正在处理的效果的对象
59c6f5280b 2024-07-01 2789: ---@return boolean
59c6f5280b 2024-07-01 2790: ---@param f function|nil
59c6f5280b 2024-07-01 2791: ---@param player integer
59c6f5280b 2024-07-01 2792: ---@param s integer
59c6f5280b 2024-07-01 2793: ---@param o integer
59c6f5280b 2024-07-01 2794: ---@param count integer
59c6f5280b 2024-07-01 2795: ---@param ex Card|Group|nil
59c6f5280b 2024-07-01 2796: ---@param ... any
59c6f5280b 2024-07-01 2797: function Duel.IsExistingTarget(f,player,s,o,count,ex,...) end
59c6f5280b 2024-07-01 2798: 
59c6f5280b 2024-07-01 2799: ---基本同Duel.SelectMatchingCard ,不同之处在于此函数会同时将当前正在处理的连锁的对象设置成选择的卡
59c6f5280b 2024-07-01 2800: ---@return Group
59c6f5280b 2024-07-01 2801: ---@param sel_player integer
59c6f5280b 2024-07-01 2802: ---@param f function|nil
59c6f5280b 2024-07-01 2803: ---@param player integer
59c6f5280b 2024-07-01 2804: ---@param s integer
59c6f5280b 2024-07-01 2805: ---@param o integer
59c6f5280b 2024-07-01 2806: ---@param min integer
59c6f5280b 2024-07-01 2807: ---@param max integer
59c6f5280b 2024-07-01 2808: ---@param ex Card|Group|nil
59c6f5280b 2024-07-01 2809: ---@param ... any
59c6f5280b 2024-07-01 2810: function Duel.SelectTarget(sel_player,f,player,s,o,min,max,ex,...) end
59c6f5280b 2024-07-01 2811: 
59c6f5280b 2024-07-01 2812: ---返回必须作为素材的卡片组
59c6f5280b 2024-07-01 2813: ---@return Group
59c6f5280b 2024-07-01 2814: ---@param player integer
59c6f5280b 2024-07-01 2815: ---@param ecode integer EFFECT_MUST_BE_FMATERIAL等
59c6f5280b 2024-07-01 2816: function Duel.GetMustMaterial(player,ecode) end
59c6f5280b 2024-07-01 2817: 
59c6f5280b 2024-07-01 2818: ---检查卡片组是否满足必须作为素材的条件
59c6f5280b 2024-07-01 2819: ---@return boolean
59c6f5280b 2024-07-01 2820: ---@param player integer
59c6f5280b 2024-07-01 2821: ---@param cards Group|Card
59c6f5280b 2024-07-01 2822: ---@param ecode integer EFFECT_MUST_BE_FMATERIAL等
59c6f5280b 2024-07-01 2823: function Duel.CheckMustMaterial(player,cards,ecode) end
59c6f5280b 2024-07-01 2824: 
59c6f5280b 2024-07-01 2825: ---让玩家player从g中选择一组[必须包含gc在内的]融合怪兽c的融合素材
59c6f5280b 2024-07-01 2826: ---##根据c的种类为EFFECT_FUSION_MATERIAL的效果的Operation操作
59c6f5280b 2024-07-01 2827: ---@return Group
59c6f5280b 2024-07-01 2828: ---@param player integer
59c6f5280b 2024-07-01 2829: ---@param c Card
59c6f5280b 2024-07-01 2830: ---@param g Group|nil 不能为空
59c6f5280b 2024-07-01 2831: ---@param gc? Card|nil
59c6f5280b 2024-07-01 2832: ---@param chkf? integer default: PLAYER_NONE
59c6f5280b 2024-07-01 2833: ---@param not_material? boolean default: false
59c6f5280b 2024-07-01 2834: function Duel.SelectFusionMaterial(player,c,g,gc,chkf,not_material) end
59c6f5280b 2024-07-01 2835: 
59c6f5280b 2024-07-01 2836: ---设置g为需要使用的融合素材
59c6f5280b 2024-07-01 2837: ---@param g Group
59c6f5280b 2024-07-01 2838: function Duel.SetFusionMaterial(g) end
59c6f5280b 2024-07-01 2839: 
59c6f5280b 2024-07-01 2840: ---设置g为需要使用的同调素材
59c6f5280b 2024-07-01 2841: ---@param g Group
59c6f5280b 2024-07-01 2842: function Duel.SetSynchroMaterial(g) end
59c6f5280b 2024-07-01 2843: 
59c6f5280b 2024-07-01 2844: ---获取玩家可以作为同调素材的卡片组
59c6f5280b 2024-07-01 2845: ---@return Group
59c6f5280b 2024-07-01 2846: ---@param player integer
59c6f5280b 2024-07-01 2847: function Duel.GetSynchroMaterial(player) end
59c6f5280b 2024-07-01 2848: 
59c6f5280b 2024-07-01 2849: ---让玩家player从场上[或mg中]选择用于同调c需要的[必须包含smat在内(如果有mg~=nil则忽略此参数)]满足条件的一组素材
59c6f5280b 2024-07-01 2850: ---f1是 1 只需要满足的过滤条件,f2是 min-max 只需要满足的过滤条件
59c6f5280b 2024-07-01 2851: ---f1,f2 之中,至少有一种为调整的条件
59c6f5280b 2024-07-01 2852: ---@return Group
59c6f5280b 2024-07-01 2853: ---@param player integer
59c6f5280b 2024-07-01 2854: ---@param c Card
59c6f5280b 2024-07-01 2855: ---@param f1 function|nil
59c6f5280b 2024-07-01 2856: ---@param f2 function|nil
59c6f5280b 2024-07-01 2857: ---@param min integer
59c6f5280b 2024-07-01 2858: ---@param max integer
59c6f5280b 2024-07-01 2859: ---@param smat? Card|nil
59c6f5280b 2024-07-01 2860: ---@param mg? Group|nil
59c6f5280b 2024-07-01 2861: function Duel.SelectSynchroMaterial(player,c,f1,f2,min,max,smat,mg) end
59c6f5280b 2024-07-01 2862: 
59c6f5280b 2024-07-01 2863: ---检查场上[或mg中]是否存在一组[必须包括smat在内的(如果有mg~=nil则忽略此参数)]满足条件的卡作为同调召唤c的素材
59c6f5280b 2024-07-01 2864: ---f1是 1 只需要满足的过滤条件,f2是 min-max 只需要满足的过滤条件
59c6f5280b 2024-07-01 2865: ---f1,f2 之中,至少有一种为调整的条件
59c6f5280b 2024-07-01 2866: ---@return boolean
59c6f5280b 2024-07-01 2867: ---@param c Card
59c6f5280b 2024-07-01 2868: ---@param f1 function|nil
59c6f5280b 2024-07-01 2869: ---@param f2 function|nil
59c6f5280b 2024-07-01 2870: ---@param min integer
59c6f5280b 2024-07-01 2871: ---@param max integer
59c6f5280b 2024-07-01 2872: ---@param smat? Card|nil
59c6f5280b 2024-07-01 2873: ---@param mg? Group|nil
59c6f5280b 2024-07-01 2874: function Duel.CheckSynchroMaterial(c,f1,f2,min,max,smat,mg) end
59c6f5280b 2024-07-01 2875: 
59c6f5280b 2024-07-01 2876: ---让玩家从场上[或mg中]选择用于同调c需要的满足条件的以tuner作为调整的min-max张卡的一组素材
59c6f5280b 2024-07-01 2877: ---f1是 1 只需要满足的过滤条件,f2是 min-max 只需要满足的过滤条件
59c6f5280b 2024-07-01 2878: ---@return Group
59c6f5280b 2024-07-01 2879: ---@param player integer
59c6f5280b 2024-07-01 2880: ---@param c Card
59c6f5280b 2024-07-01 2881: ---@param tuner Card
59c6f5280b 2024-07-01 2882: ---@param f1 function|nil
59c6f5280b 2024-07-01 2883: ---@param f2 function|nil
59c6f5280b 2024-07-01 2884: ---@param min integer
59c6f5280b 2024-07-01 2885: ---@param max integer
59c6f5280b 2024-07-01 2886: ---@param mg? Group|nil
59c6f5280b 2024-07-01 2887: function Duel.SelectTunerMaterial(player,c,tuner,f1,f2,min,max,mg) end
59c6f5280b 2024-07-01 2888: 
59c6f5280b 2024-07-01 2889: ---检查场上[或mg中]是否存在一组以tuner作为调整,并且满足条件的卡作为同调召唤c的素材
59c6f5280b 2024-07-01 2890: ---f1是 1 只需要满足的过滤条件,f2是 min-max 只需要满足的过滤条件
59c6f5280b 2024-07-01 2891: ---@return boolean
59c6f5280b 2024-07-01 2892: ---@param c Card
59c6f5280b 2024-07-01 2893: ---@param tuner Card
59c6f5280b 2024-07-01 2894: ---@param f1 function|nil
59c6f5280b 2024-07-01 2895: ---@param f2 function|nil
59c6f5280b 2024-07-01 2896: ---@param min integer
59c6f5280b 2024-07-01 2897: ---@param max integer
59c6f5280b 2024-07-01 2898: ---@param mg? Group|nil
59c6f5280b 2024-07-01 2899: function Duel.CheckTunerMaterial(c,tuner,f1,f2,min,max,mg) end
59c6f5280b 2024-07-01 2900: 
59c6f5280b 2024-07-01 2901: ---返回玩家player可用的用于仪式召唤素材的卡片组
59c6f5280b 2024-07-01 2902: ---包含手上,场上可解放的以及墓地的仪式魔人等卡
59c6f5280b 2024-07-01 2903: ---@return Group
59c6f5280b 2024-07-01 2904: ---@param player integer
59c6f5280b 2024-07-01 2905: function Duel.GetRitualMaterial(player) end
59c6f5280b 2024-07-01 2906: 
59c6f5280b 2024-07-01 2907: ---Duel.GetRitualMaterial并包含无等级怪兽
59c6f5280b 2024-07-01 2908: ---@return Group
59c6f5280b 2024-07-01 2909: ---@param player integer
59c6f5280b 2024-07-01 2910: function Duel.GetRitualMaterialEx(player) end
59c6f5280b 2024-07-01 2911: 
59c6f5280b 2024-07-01 2912: ---解放仪式用的素材g,如果是墓地的仪式魔人等卡则除外
59c6f5280b 2024-07-01 2913: ---@param g Group
59c6f5280b 2024-07-01 2914: function Duel.ReleaseRitualMaterial(g) end
59c6f5280b 2024-07-01 2915: 
59c6f5280b 2024-07-01 2916: ---返回玩家player可用的用于融合召唤素材的卡片组
59c6f5280b 2024-07-01 2917: ---@return Group material_all 包含受EFFECT_EXTRA_FUSION_MATERIAL影响的卡
59c6f5280b 2024-07-01 2918: ---@return Group material_base 只取那些区域的卡
59c6f5280b 2024-07-01 2919: ---@param player integer
59c6f5280b 2024-07-01 2920: ---@param location? integer default: LOCATION_HAND + LOCATION_MZONE
59c6f5280b 2024-07-01 2921: function Duel.GetFusionMaterial(player,location) end
59c6f5280b 2024-07-01 2922: 
59c6f5280b 2024-07-01 2923: ---返回当前进行特殊召唤的行为是否可以回滚并撤销。
59c6f5280b 2024-07-01 2924: ---@return boolean
59c6f5280b 2024-07-01 2925: function Duel.IsSummonCancelable() end
59c6f5280b 2024-07-01 2926: 
59c6f5280b 2024-07-01 2927: ---设置Duel.CheckWithSum,Group.CheckSubGroup等函数已选择/必须选择的卡片
59c6f5280b 2024-07-01 2928: ---@param cards Card|Group
59c6f5280b 2024-07-01 2929: function Duel.SetSelectedCard(cards) end
59c6f5280b 2024-07-01 2930: 
59c6f5280b 2024-07-01 2931: ---清空并返回由Duel.SetSelectedCard设置的卡片或卡片组。
59c6f5280b 2024-07-01 2932: ---@return Group
59c6f5280b 2024-07-01 2933: function Duel.GrabSelectedCard() end
59c6f5280b 2024-07-01 2934: 
59c6f5280b 2024-07-01 2935: ---把当前正在处理的连锁的对象设置成targets
59c6f5280b 2024-07-01 2936: ---注,这里的对象指的的广义的对象,包括不取对象的效果可能要处理的对象
59c6f5280b 2024-07-01 2937: ---@param targets Card|Group
59c6f5280b 2024-07-01 2938: function Duel.SetTargetCard(targets) end
59c6f5280b 2024-07-01 2939: 
59c6f5280b 2024-07-01 2940: ---把当前正在处理的连锁的对象全部清除
59c6f5280b 2024-07-01 2941: function Duel.ClearTargetCard() end
59c6f5280b 2024-07-01 2942: 
59c6f5280b 2024-07-01 2943: ---把当前正在处理的连锁的对象玩家设置成player
59c6f5280b 2024-07-01 2944: ---@param player integer
59c6f5280b 2024-07-01 2945: function Duel.SetTargetPlayer(player) end
59c6f5280b 2024-07-01 2946: 
59c6f5280b 2024-07-01 2947: ---把当前正在处理的连锁的对象参数设置成param
59c6f5280b 2024-07-01 2948: ---@param param integer
59c6f5280b 2024-07-01 2949: function Duel.SetTargetParam(param) end
59c6f5280b 2024-07-01 2950: 
59c6f5280b 2024-07-01 2951: ---设置当前处理的连锁的操作信息此操作信息包含了效果处理中确定要处理的效果分类
59c6f5280b 2024-07-01 2952: ---比如潜行狙击手需要设置CATEGORY_DICE,但是不能设置CATEGORY_DESTROY,因为不确定
59c6f5280b 2024-07-01 2953: ---对于破坏效果,targets需要设置成发动时可能成为连锁的影响对象的卡,
59c6f5280b 2024-07-01 2954: ---并设置count为发动时确定的要处理的卡的数量
59c6f5280b 2024-07-01 2955: ---比如黑洞发动时,targets需要设定为场上的所有怪兽,count设置成场上的怪的数量
59c6f5280b 2024-07-01 2956: ---对于需要移动卡片位置的CATEGORY_SPECIAL_SUMMON,CATEGORY_TOHAND,CATEGORY_TODECK等分类,
59c6f5280b 2024-07-01 2957: ---如果要处理的卡是确定的(比如取对象),则设置targets为这些卡,count为数量,
59c6f5280b 2024-07-01 2958: ---如果要处理的卡是不确定的(效果处理时才能确定,一般是不取对象的效果),
59c6f5280b 2024-07-01 2959: ---	则设置targets为nil,count为预计要处理的卡的数量,
59c6f5280b 2024-07-01 2960: ---	target_player为预计要处理的卡的持有者(不确定就为0)
59c6f5280b 2024-07-01 2961: ---	target_param为预计要处理的卡的位置
59c6f5280b 2024-07-01 2962: ---例如增援:SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
59c6f5280b 2024-07-01 2963: ---操作信息用于很多效果的发动的检测,例如星尘龙,王家长眠之谷等
59c6f5280b 2024-07-01 2964: ---@param chainc integer
59c6f5280b 2024-07-01 2965: ---@param category integer
59c6f5280b 2024-07-01 2966: ---@param targets Card|Group|nil|0
59c6f5280b 2024-07-01 2967: ---@param count integer
59c6f5280b 2024-07-01 2968: ---@param target_player integer
59c6f5280b 2024-07-01 2969: ---@param target_param integer
59c6f5280b 2024-07-01 2970: function Duel.SetOperationInfo(chainc,category,targets,count,target_player,target_param) end
59c6f5280b 2024-07-01 2971: 
59c6f5280b 2024-07-01 2972: ---返回连锁chainc的category分类的操作信息,存在的话,则返回值为5个, chainc=0 则是表示当前连锁
59c6f5280b 2024-07-01 2973: ---第一个返回值是false的话表示不存在该分类
59c6f5280b 2024-07-01 2974: ---后4个返回值对应Duel.SetOperationInfo的后4个参数:Card|Group targets, int count, int target_player, int target_param
59c6f5280b 2024-07-01 2975: ---@return boolean
59c6f5280b 2024-07-01 2976: ---@return Group 可能为空
59c6f5280b 2024-07-01 2977: ---@return integer 可能为空
59c6f5280b 2024-07-01 2978: ---@return integer 可能为空
59c6f5280b 2024-07-01 2979: ---@return integer 可能为空
59c6f5280b 2024-07-01 2980: ---@param chainc integer
59c6f5280b 2024-07-01 2981: ---@param category integer
59c6f5280b 2024-07-01 2982: function Duel.GetOperationInfo(chainc,category) end
59c6f5280b 2024-07-01 2983: 
59c6f5280b 2024-07-01 2984: ---返回连锁chainc包含的操作分类的数量
59c6f5280b 2024-07-01 2985: ---@return integer
59c6f5280b 2024-07-01 2986: ---@param chainc integer
59c6f5280b 2024-07-01 2987: function Duel.GetOperationCount(chainc) end
59c6f5280b 2024-07-01 2988: 
59c6f5280b 2024-07-01 2989: ---将chainc的OperationInfo清除。用于如堕天使复制并使用墓地效果之类,卡片效果不应当被响应的情况。
59c6f5280b 2024-07-01 2990: ---@param chainc integer
59c6f5280b 2024-07-01 2991: function Duel.ClearOperationInfo(chainc) end
59c6f5280b 2024-07-01 2992: 
59c6f5280b 2024-07-01 2993: ---检查场上[或mg中]是否存在XYZ召唤c的XYZ用等级为lv的min-max个满足条件f的叠放素材
59c6f5280b 2024-07-01 2994: ---@return boolean
59c6f5280b 2024-07-01 2995: ---@param c Card
59c6f5280b 2024-07-01 2996: ---@param f function|nil
59c6f5280b 2024-07-01 2997: ---@param lv integer
59c6f5280b 2024-07-01 2998: ---@param min integer
59c6f5280b 2024-07-01 2999: ---@param max integer
59c6f5280b 2024-07-01 3000: ---@param mg Group|nil
59c6f5280b 2024-07-01 3001: function Duel.CheckXyzMaterial(c,f,lv,min,max,mg) end
59c6f5280b 2024-07-01 3002: 
59c6f5280b 2024-07-01 3003: ---让玩家player为XYZ怪兽c从场上[或mg中]选择XYZ用等级为lv的min-max个满足条件f的叠放素材
59c6f5280b 2024-07-01 3004: ---@return Group
59c6f5280b 2024-07-01 3005: ---@param player integer
59c6f5280b 2024-07-01 3006: ---@param c Card
59c6f5280b 2024-07-01 3007: ---@param f function|nil
59c6f5280b 2024-07-01 3008: ---@param lv integer
59c6f5280b 2024-07-01 3009: ---@param min integer
59c6f5280b 2024-07-01 3010: ---@param max integer
59c6f5280b 2024-07-01 3011: ---@param mg? Group|nil
59c6f5280b 2024-07-01 3012: function Duel.SelectXyzMaterial(player,c,f,lv,min,max,mg) end
59c6f5280b 2024-07-01 3013: 
59c6f5280b 2024-07-01 3014: ---把ocard作为c的叠放卡叠放
59c6f5280b 2024-07-01 3015: ---@param c Card
59c6f5280b 2024-07-01 3016: ---@param ocard Card|Group
59c6f5280b 2024-07-01 3017: ---@param adjust? boolean default: true
59c6f5280b 2024-07-01 3018: function Duel.Overlay(c,ocard,adjust) end
59c6f5280b 2024-07-01 3019: 
59c6f5280b 2024-07-01 3020: ---返回以player来看的指定位置的所有叠放的卡
59c6f5280b 2024-07-01 3021: ---s代表以player来看的自己的位置,o代表以player来看的对方的位置
59c6f5280b 2024-07-01 3022: ---@return Group
59c6f5280b 2024-07-01 3023: ---@param player integer
59c6f5280b 2024-07-01 3024: ---@param s integer
59c6f5280b 2024-07-01 3025: ---@param o integer
59c6f5280b 2024-07-01 3026: function Duel.GetOverlayGroup(player,s,o) end
59c6f5280b 2024-07-01 3027: 
59c6f5280b 2024-07-01 3028: ---返回以player来看的指定位置的所有叠放的卡的数量
59c6f5280b 2024-07-01 3029: ---s代表以player来看的自己的位置,o代表以player来看的对方的位置
59c6f5280b 2024-07-01 3030: ---@return integer
59c6f5280b 2024-07-01 3031: ---@param player integer
59c6f5280b 2024-07-01 3032: ---@param s integer
59c6f5280b 2024-07-01 3033: ---@param o integer
59c6f5280b 2024-07-01 3034: function Duel.GetOverlayCount(player,s,o) end
59c6f5280b 2024-07-01 3035: 
59c6f5280b 2024-07-01 3036: ---检查player能否以原因reason移除以player来看的指定位置至少count张卡
59c6f5280b 2024-07-01 3037: ---s代表以player来看的自己的位置,o代表以player来看的对方的位置
59c6f5280b 2024-07-01 3038: ---@return boolean
59c6f5280b 2024-07-01 3039: ---@param player integer
59c6f5280b 2024-07-01 3040: ---@param s integer
59c6f5280b 2024-07-01 3041: ---@param o integer
59c6f5280b 2024-07-01 3042: ---@param count integer
59c6f5280b 2024-07-01 3043: ---@param reason integer
59c6f5280b 2024-07-01 3044: function Duel.CheckRemoveOverlayCard(player,s,o,count,reason) end
59c6f5280b 2024-07-01 3045: 
59c6f5280b 2024-07-01 3046: ---让player以reason原因移除以player来看的指定位置的min-max张叠放卡,返回值表示是否成功
59c6f5280b 2024-07-01 3047: ---s代表以player来看的自己的位置,o代表以player来看的对方的位置
59c6f5280b 2024-07-01 3048: ---@return integer
59c6f5280b 2024-07-01 3049: ---@param player integer
59c6f5280b 2024-07-01 3050: ---@param s integer
59c6f5280b 2024-07-01 3051: ---@param o integer
59c6f5280b 2024-07-01 3052: ---@param min integer
59c6f5280b 2024-07-01 3053: ---@param max integer
59c6f5280b 2024-07-01 3054: ---@param reason integer
59c6f5280b 2024-07-01 3055: function Duel.RemoveOverlayCard(player,s,o,min,max,reason) end
59c6f5280b 2024-07-01 3056: 
59c6f5280b 2024-07-01 3057: ---给玩家player发送hint_type类型的消息提示,提示内容为desc
59c6f5280b 2024-07-01 3058: ---@param hint_type integer
59c6f5280b 2024-07-01 3059: ---@param player integer
59c6f5280b 2024-07-01 3060: ---@param desc integer
59c6f5280b 2024-07-01 3061: function Duel.Hint(hint_type,player,desc) end
59c6f5280b 2024-07-01 3062: 
59c6f5280b 2024-07-01 3063: ---返回上次给玩家player发送的HINT_SELECTMSG类型的提示内容
59c6f5280b 2024-07-01 3064: ---@param player integer
59c6f5280b 2024-07-01 3065: ---@return integer
59c6f5280b 2024-07-01 3066: function Duel.GetLastSelectHint(player) end
59c6f5280b 2024-07-01 3067: 
59c6f5280b 2024-07-01 3068: ---手动为g显示被选为对象的动画效果
59c6f5280b 2024-07-01 3069: ---@param g Group
59c6f5280b 2024-07-01 3070: function Duel.HintSelection(g) end
59c6f5280b 2024-07-01 3071: 
59c6f5280b 2024-07-01 3072: ---让玩家player选择是否发动卡片c的效果[提示文字可以自行用desc替换,desc 用 aux.Stringid 获取]
59c6f5280b 2024-07-01 3073: ---@return boolean
59c6f5280b 2024-07-01 3074: ---@param player integer
59c6f5280b 2024-07-01 3075: ---@param c Card
59c6f5280b 2024-07-01 3076: ---@param desc? integer default: 95
59c6f5280b 2024-07-01 3077: function Duel.SelectEffectYesNo(player,c,desc) end
59c6f5280b 2024-07-01 3078: 
59c6f5280b 2024-07-01 3079: ---让玩家player选择是或否
59c6f5280b 2024-07-01 3080: ---@return boolean
59c6f5280b 2024-07-01 3081: ---@param player integer
59c6f5280b 2024-07-01 3082: ---@param desc integer
59c6f5280b 2024-07-01 3083: function Duel.SelectYesNo(player,desc) end
59c6f5280b 2024-07-01 3084: 
59c6f5280b 2024-07-01 3085: ---让玩家选择选项,从第二个参数开始,每一个参数代表一条选项
59c6f5280b 2024-07-01 3086: ---返回选择的选项的序号(从0开始)
59c6f5280b 2024-07-01 3087: ---@return integer
59c6f5280b 2024-07-01 3088: ---@param player integer
59c6f5280b 2024-07-01 3089: ---@param desc1 integer
59c6f5280b 2024-07-01 3090: ---@param ... any
59c6f5280b 2024-07-01 3091: function Duel.SelectOption(player,desc1,...) end
59c6f5280b 2024-07-01 3092: 
59c6f5280b 2024-07-01 3093: ---此函数只有一个 check_action_permission 操作,不知何用
59c6f5280b 2024-07-01 3094: function Duel.SelectSequence() end
59c6f5280b 2024-07-01 3095: 
59c6f5280b 2024-07-01 3096: ---让玩家player选择c的表示形式并返回
59c6f5280b 2024-07-01 3097: ---@return integer
59c6f5280b 2024-07-01 3098: ---@param player integer
59c6f5280b 2024-07-01 3099: ---@param c Card
59c6f5280b 2024-07-01 3100: ---@param pos integer
59c6f5280b 2024-07-01 3101: function Duel.SelectPosition(player,c,pos) end
59c6f5280b 2024-07-01 3102: 
59c6f5280b 2024-07-01 3103: ---让玩家player选择场地。
59c6f5280b 2024-07-01 3104: ---@return integer
59c6f5280b 2024-07-01 3105: ---@param player integer
59c6f5280b 2024-07-01 3106: ---@param count integer
59c6f5280b 2024-07-01 3107: ---@param loc1 integer
59c6f5280b 2024-07-01 3108: ---@param loc2 integer
59c6f5280b 2024-07-01 3109: ---@param zone integer
59c6f5280b 2024-07-01 3110: ---@param code? integer
59c6f5280b 2024-07-01 3111: function Duel.SelectField(player,count,loc1,loc2,zone,code) end
59c6f5280b 2024-07-01 3112: 
59c6f5280b 2024-07-01 3113: ---让玩家player选择指定位置满足标记条件filter的count个可用的空格,并返回选择位置的标记
59c6f5280b 2024-07-01 3114: ---常用于选择区域不能使用或移动怪兽格子
59c6f5280b 2024-07-01 3115: ---##位置标记的定义如下
59c6f5280b 2024-07-01 3116: ---##flag = 0;
59c6f5280b 2024-07-01 3117: ---##seq为在玩家p,位置l中选择的格子序号
59c6f5280b 2024-07-01 3118: ---##for(int32 i = 0; i < count; ++i) {
59c6f5280b 2024-07-01 3119: ---##	flag |= 1 << (seq[i] + (p[i] == player ? 0 : 16) + (l[i] == LOCATION_MZONE ? 0 : 8));
59c6f5280b 2024-07-01 3120: ---##}
59c6f5280b 2024-07-01 3121: ---@return integer
59c6f5280b 2024-07-01 3122: ---@param player integer
59c6f5280b 2024-07-01 3123: ---@param count integer
59c6f5280b 2024-07-01 3124: ---@param s integer
59c6f5280b 2024-07-01 3125: ---@param o integer
59c6f5280b 2024-07-01 3126: ---@param filter integer
59c6f5280b 2024-07-01 3127: function Duel.SelectDisableField(player,count,s,o,filter) end
59c6f5280b 2024-07-01 3128: 
59c6f5280b 2024-07-01 3129: ---让玩家player从可选的种族中宣言count个种族
59c6f5280b 2024-07-01 3130: ---available是所有可选种族的组合值,可以自行组合
59c6f5280b 2024-07-01 3131: ---@return integer
59c6f5280b 2024-07-01 3132: ---@param player integer
59c6f5280b 2024-07-01 3133: ---@param count integer
59c6f5280b 2024-07-01 3134: ---@param available integer
59c6f5280b 2024-07-01 3135: function Duel.AnnounceRace(player,count,available) end
59c6f5280b 2024-07-01 3136: 
59c6f5280b 2024-07-01 3137: ---让玩家player从可选的属性中宣言count个属性
59c6f5280b 2024-07-01 3138: ---available是所有可选属性的组合值,可以自行组合
59c6f5280b 2024-07-01 3139: ---@return integer
59c6f5280b 2024-07-01 3140: ---@param player integer
59c6f5280b 2024-07-01 3141: ---@param count integer
59c6f5280b 2024-07-01 3142: ---@param available integer
59c6f5280b 2024-07-01 3143: function Duel.AnnounceAttribute(player,count,available) end
59c6f5280b 2024-07-01 3144: 
59c6f5280b 2024-07-01 3145: ---让玩家宣言一个[min-max]等级并返回
59c6f5280b 2024-07-01 3146: ---@return integer
59c6f5280b 2024-07-01 3147: ---@param player integer
59c6f5280b 2024-07-01 3148: ---@param min? integer|nil default: 1
59c6f5280b 2024-07-01 3149: ---@param max? integer|nil default: 12
59c6f5280b 2024-07-01 3150: ---@param ...? integer
59c6f5280b 2024-07-01 3151: function Duel.AnnounceLevel(player,min,max,...) end
59c6f5280b 2024-07-01 3152: 
59c6f5280b 2024-07-01 3153: ---让玩家player宣言一个满足条件的卡片卡号,条件用后缀表达式...表示
59c6f5280b 2024-07-01 3154: ---原名AnnounceCardFilter
59c6f5280b 2024-07-01 3155: ---@return integer
59c6f5280b 2024-07-01 3156: ---@param player integer
59c6f5280b 2024-07-01 3157: ---@param ...? integer
59c6f5280b 2024-07-01 3158: function Duel.AnnounceCard(player,...) end
59c6f5280b 2024-07-01 3159: 
59c6f5280b 2024-07-01 3160: ---让玩家player宣言一个卡片类型(怪兽·魔法·陷阱)
59c6f5280b 2024-07-01 3161: ---别想着直接宣言 复合类型(永续魔法 等)
59c6f5280b 2024-07-01 3162: ---@return integer
59c6f5280b 2024-07-01 3163: ---@param player integer
59c6f5280b 2024-07-01 3164: function Duel.AnnounceType(player) end
59c6f5280b 2024-07-01 3165: 
59c6f5280b 2024-07-01 3166: ---让玩家player宣言一个数字
59c6f5280b 2024-07-01 3167: ---从第二个参数开始,每一个参数代表一个可宣言的数字
59c6f5280b 2024-07-01 3168: ---第一个返回值是宣言的数字,第二个返回值是宣言数字在所有选项中的位置
59c6f5280b 2024-07-01 3169: ---@return integer
59c6f5280b 2024-07-01 3170: ---@return integer
59c6f5280b 2024-07-01 3171: ---@param player integer
59c6f5280b 2024-07-01 3172: ---@param number integer
59c6f5280b 2024-07-01 3173: ---@param ... any
59c6f5280b 2024-07-01 3174: function Duel.AnnounceNumber(player,number,...) end
59c6f5280b 2024-07-01 3175: 
59c6f5280b 2024-07-01 3176: ---让玩家player宣言硬币的正反面
59c6f5280b 2024-07-01 3177: ---@return integer
59c6f5280b 2024-07-01 3178: ---@param player integer
59c6f5280b 2024-07-01 3179: function Duel.AnnounceCoin(player) end
59c6f5280b 2024-07-01 3180: 
59c6f5280b 2024-07-01 3181: ---让玩家player投count(<=20)次硬币,返回值为count个结果,0或者1, 正面是 1,反面是0
59c6f5280b 2024-07-01 3182: ---若count=-1,投硬币直到出现反面,返回值为投掷次数
59c6f5280b 2024-07-01 3183: ---@return ...
59c6f5280b 2024-07-01 3184: ---@param player integer
59c6f5280b 2024-07-01 3185: ---@param count integer
59c6f5280b 2024-07-01 3186: function Duel.TossCoin(player,count) end
59c6f5280b 2024-07-01 3187: 
59c6f5280b 2024-07-01 3188: ---让玩家player投count1次骰子[,1-player投count2次骰子](count1+count2<=5)
59c6f5280b 2024-07-01 3189: ---返回值为count1+count2个结果,1-6
59c6f5280b 2024-07-01 3190: ---@return ...
59c6f5280b 2024-07-01 3191: ---@param player integer
59c6f5280b 2024-07-01 3192: ---@param count1 integer
59c6f5280b 2024-07-01 3193: ---@param count2? integer
59c6f5280b 2024-07-01 3194: function Duel.TossDice(player,count1,count2) end
59c6f5280b 2024-07-01 3195: 
59c6f5280b 2024-07-01 3196: ---猜拳,若 repeated=false 则只猜一次;否则就是直到分出胜负为止。返回胜利的玩家号码
59c6f5280b 2024-07-01 3197: ---@return integer
59c6f5280b 2024-07-01 3198: ---@param repeated? boolean default: true
59c6f5280b 2024-07-01 3199: function Duel.RockPaperScissors(repeated) end
59c6f5280b 2024-07-01 3200: 
59c6f5280b 2024-07-01 3201: ---返回当前投硬币的结果
59c6f5280b 2024-07-01 3202: ---@return integer
59c6f5280b 2024-07-01 3203: ---@return integer
59c6f5280b 2024-07-01 3204: ---@return integer
59c6f5280b 2024-07-01 3205: ---@return integer
59c6f5280b 2024-07-01 3206: ---@return integer
59c6f5280b 2024-07-01 3207: function Duel.GetCoinResult() end
59c6f5280b 2024-07-01 3208: 
59c6f5280b 2024-07-01 3209: ---返回当前掷骰子的结果
59c6f5280b 2024-07-01 3210: ---@return integer
59c6f5280b 2024-07-01 3211: ---@return integer
59c6f5280b 2024-07-01 3212: ---@return integer
59c6f5280b 2024-07-01 3213: ---@return integer
59c6f5280b 2024-07-01 3214: ---@return integer
59c6f5280b 2024-07-01 3215: function Duel.GetDiceResult() end
59c6f5280b 2024-07-01 3216: 
59c6f5280b 2024-07-01 3217: ---强行修改投硬币的结果为res ,最多5个参数,res只能是 0 或 1, ,其他全算作 0
59c6f5280b 2024-07-01 3218: ---此函数用于永续的EVENT_TOSS_COIN事件中
59c6f5280b 2024-07-01 3219: ---@param res integer
59c6f5280b 2024-07-01 3220: ---@param ... any
59c6f5280b 2024-07-01 3221: function Duel.SetCoinResult(res,...) end
59c6f5280b 2024-07-01 3222: 
59c6f5280b 2024-07-01 3223: ---强行修改投骰子的结果为res ,最多5个参数,res只能是 1~255, ,其他数字全算作 1
59c6f5280b 2024-07-01 3224: ---此函数用于永续的EVENT_TOSS_DICE事件中
59c6f5280b 2024-07-01 3225: ---@param res integer
59c6f5280b 2024-07-01 3226: ---@param ... any
59c6f5280b 2024-07-01 3227: function Duel.SetDiceResult(res,...) end
59c6f5280b 2024-07-01 3228: 
59c6f5280b 2024-07-01 3229: ---检查player是否受到种类为code的效果影响,如果有就返回该效果,没有则返回nil
59c6f5280b 2024-07-01 3230: ---@return Effect|nil
59c6f5280b 2024-07-01 3231: ---@return ...
59c6f5280b 2024-07-01 3232: ---@param player integer
59c6f5280b 2024-07-01 3233: ---@param code integer
59c6f5280b 2024-07-01 3234: function Duel.IsPlayerAffectedByEffect(player,code) end
59c6f5280b 2024-07-01 3235: 
59c6f5280b 2024-07-01 3236: ---检查玩家player是否可以效果抽[count张]卡
59c6f5280b 2024-07-01 3237: ---@return boolean
59c6f5280b 2024-07-01 3238: ---@param player integer
59c6f5280b 2024-07-01 3239: ---@param count? integer default: 0
59c6f5280b 2024-07-01 3240: function Duel.IsPlayerCanDraw(player,count) end
59c6f5280b 2024-07-01 3241: 
59c6f5280b 2024-07-01 3242: ---检查玩家player是否可以把卡组顶端count张卡送去墓地
59c6f5280b 2024-07-01 3243: ---@return boolean
59c6f5280b 2024-07-01 3244: ---@param player integer
59c6f5280b 2024-07-01 3245: ---@param count integer
59c6f5280b 2024-07-01 3246: function Duel.IsPlayerCanDiscardDeck(player,count) end
59c6f5280b 2024-07-01 3247: 
59c6f5280b 2024-07-01 3248: ---检查玩家player是否能作为Cost把count张卡送去墓地。
59c6f5280b 2024-07-01 3249: ---@return boolean
59c6f5280b 2024-07-01 3250: ---@param player integer
59c6f5280b 2024-07-01 3251: ---@param count integer
59c6f5280b 2024-07-01 3252: function Duel.IsPlayerCanDiscardDeckAsCost(player,count) end
59c6f5280b 2024-07-01 3253: 
59c6f5280b 2024-07-01 3254: ---检查玩家player是否可以通常召唤[c,以sumtype方式]
59c6f5280b 2024-07-01 3255: ---如果需要可选参数,则必须全部使用
59c6f5280b 2024-07-01 3256: ---仅当玩家收到“不能上级召唤”等效果的影响时返回false
59c6f5280b 2024-07-01 3257: ---@return boolean
59c6f5280b 2024-07-01 3258: ---@param player integer
59c6f5280b 2024-07-01 3259: ---@param sumtype? integer
59c6f5280b 2024-07-01 3260: ---@param c? Card
59c6f5280b 2024-07-01 3261: function Duel.IsPlayerCanSummon(player,sumtype,c) end
59c6f5280b 2024-07-01 3262: 
59c6f5280b 2024-07-01 3263: ---检查玩家player是否可以[以sumtype的召唤方式将scard]盖放。
59c6f5280b 2024-07-01 3264: ---如果要加入后面的可选参数,则所有两个可选参数都必须加上。
59c6f5280b 2024-07-01 3265: ---@return boolean
59c6f5280b 2024-07-01 3266: ---@param player integer
59c6f5280b 2024-07-01 3267: ---@param sumtype? integer
59c6f5280b 2024-07-01 3268: ---@param scard? Card
59c6f5280b 2024-07-01 3269: function Duel.IsPlayerCanMSet(player,sumtype,scard) end
59c6f5280b 2024-07-01 3270: 
59c6f5280b 2024-07-01 3271: ---检查玩家player是否可以[将scard]盖放。
59c6f5280b 2024-07-01 3272: ---@return boolean
59c6f5280b 2024-07-01 3273: ---@param player integer
59c6f5280b 2024-07-01 3274: ---@param scard? Card
59c6f5280b 2024-07-01 3275: function Duel.IsPlayerCanSSet(player,scard) end
59c6f5280b 2024-07-01 3276: 
59c6f5280b 2024-07-01 3277: ---检查玩家player能否特殊召唤[c到target_player场上,以sumtype召唤方式,sumpos表示形式]
59c6f5280b 2024-07-01 3278: ---如果需要可选参数,则必须全部使用
59c6f5280b 2024-07-01 3279: ---@return boolean
59c6f5280b 2024-07-01 3280: ---@param player integer
59c6f5280b 2024-07-01 3281: ---@param sumtype? integer
59c6f5280b 2024-07-01 3282: ---@param sumpos? integer
59c6f5280b 2024-07-01 3283: ---@param target_player? integer
59c6f5280b 2024-07-01 3284: ---@param c? Card
59c6f5280b 2024-07-01 3285: function Duel.IsPlayerCanSpecialSummon(player,sumtype,sumpos,target_player,c) end
59c6f5280b 2024-07-01 3286: 
59c6f5280b 2024-07-01 3287: ---检查玩家player是否可以反转召唤c
59c6f5280b 2024-07-01 3288: ---@return boolean
59c6f5280b 2024-07-01 3289: ---@param player integer
59c6f5280b 2024-07-01 3290: ---@param c Card
59c6f5280b 2024-07-01 3291: function Duel.IsPlayerCanFlipSummon(player,c) end
59c6f5280b 2024-07-01 3292: 
59c6f5280b 2024-07-01 3293: ---检查玩家player是否可以[以sumtype 方式][以 pos 表示形式]特殊召唤 给定参数的怪兽到target_player场上
59c6f5280b 2024-07-01 3294: ---此函数通常用于判定是否可以特招token和陷阱怪兽
59c6f5280b 2024-07-01 3295: ---@return boolean
59c6f5280b 2024-07-01 3296: ---@param player integer
59c6f5280b 2024-07-01 3297: ---@param code integer
59c6f5280b 2024-07-01 3298: ---@param setcode? integer|nil
59c6f5280b 2024-07-01 3299: ---@param type? integer|nil
59c6f5280b 2024-07-01 3300: ---@param atk? integer|nil
59c6f5280b 2024-07-01 3301: ---@param def? integer|nil
59c6f5280b 2024-07-01 3302: ---@param level? integer|nil
59c6f5280b 2024-07-01 3303: ---@param race? integer|nil
59c6f5280b 2024-07-01 3304: ---@param attribute? integer|nil
59c6f5280b 2024-07-01 3305: ---@param pos? integer default: POS_FACEUP
59c6f5280b 2024-07-01 3306: ---@param target_player? integer default: player
59c6f5280b 2024-07-01 3307: ---@param sumtype? integer default: 0
59c6f5280b 2024-07-01 3308: ---@param zone? integer
59c6f5280b 2024-07-01 3309: function Duel.IsPlayerCanSpecialSummonMonster(player,code,setcode,type,atk,def,level,race,attribute,pos,target_player,sumtype,zone) end
59c6f5280b 2024-07-01 3310: 
59c6f5280b 2024-07-01 3311: ---检查玩家player能否特殊召唤count次
59c6f5280b 2024-07-01 3312: ---@return boolean
59c6f5280b 2024-07-01 3313: ---@param player integer
59c6f5280b 2024-07-01 3314: ---@param count integer
59c6f5280b 2024-07-01 3315: function Duel.IsPlayerCanSpecialSummonCount(player,count) end
59c6f5280b 2024-07-01 3316: 
59c6f5280b 2024-07-01 3317: ---检查玩家player是否能解放[以原因reason解放c]
59c6f5280b 2024-07-01 3318: ---@return boolean
59c6f5280b 2024-07-01 3319: ---@param player integer
59c6f5280b 2024-07-01 3320: ---@param c? Card
59c6f5280b 2024-07-01 3321: ---@param reason? integer default: REASON_COST
59c6f5280b 2024-07-01 3322: function Duel.IsPlayerCanRelease(player,c,reason) end
59c6f5280b 2024-07-01 3323: 
59c6f5280b 2024-07-01 3324: ---检查玩家player是否能除外c
59c6f5280b 2024-07-01 3325: ---@return boolean
59c6f5280b 2024-07-01 3326: ---@param player integer
59c6f5280b 2024-07-01 3327: ---@param c? Card
59c6f5280b 2024-07-01 3328: function Duel.IsPlayerCanRemove(player,c) end
59c6f5280b 2024-07-01 3329: 
59c6f5280b 2024-07-01 3330: ---检查玩家是否能把c送去手卡
59c6f5280b 2024-07-01 3331: ---@return boolean
59c6f5280b 2024-07-01 3332: ---@param player integer
59c6f5280b 2024-07-01 3333: ---@param c Card
59c6f5280b 2024-07-01 3334: function Duel.IsPlayerCanSendtoHand(player,c) end
59c6f5280b 2024-07-01 3335: 
59c6f5280b 2024-07-01 3336: ---检查玩家是否能把c送去墓地
59c6f5280b 2024-07-01 3337: ---@return boolean
59c6f5280b 2024-07-01 3338: ---@param player integer
59c6f5280b 2024-07-01 3339: ---@param c? Card
59c6f5280b 2024-07-01 3340: function Duel.IsPlayerCanSendtoGrave(player,c) end
59c6f5280b 2024-07-01 3341: 
59c6f5280b 2024-07-01 3342: ---检查玩家是否能把c送去卡组
59c6f5280b 2024-07-01 3343: ---@return boolean
59c6f5280b 2024-07-01 3344: ---@param player integer
59c6f5280b 2024-07-01 3345: ---@param c Card
59c6f5280b 2024-07-01 3346: function Duel.IsPlayerCanSendtoDeck(player,c) end
59c6f5280b 2024-07-01 3347: 
59c6f5280b 2024-07-01 3348: ---检查玩家player是否有通常召唤外的召唤次数。
59c6f5280b 2024-07-01 3349: ---@return boolean
59c6f5280b 2024-07-01 3350: ---@param player integer
59c6f5280b 2024-07-01 3351: function Duel.IsPlayerCanAdditionalSummon(player) end
59c6f5280b 2024-07-01 3352: 
59c6f5280b 2024-07-01 3353: ---检查当前是处于连锁处理中,还是不入连锁的效果处理中
59c6f5280b 2024-07-01 3354: ---@return boolean
59c6f5280b 2024-07-01 3355: function Duel.IsChainSolving() end
59c6f5280b 2024-07-01 3356: 
59c6f5280b 2024-07-01 3357: ---检查连锁chainc的发动能否被无效
59c6f5280b 2024-07-01 3358: ---@return boolean
59c6f5280b 2024-07-01 3359: ---@param chainc integer
59c6f5280b 2024-07-01 3360: function Duel.IsChainNegatable(chainc) end
59c6f5280b 2024-07-01 3361: 
59c6f5280b 2024-07-01 3362: ---检查连锁chainc的效果能否被无效
59c6f5280b 2024-07-01 3363: ---@return boolean
59c6f5280b 2024-07-01 3364: ---@param chainc integer
59c6f5280b 2024-07-01 3365: function Duel.IsChainDisablable(chainc) end
59c6f5280b 2024-07-01 3366: 
59c6f5280b 2024-07-01 3367: ---检查连锁chainc是否已被无效
59c6f5280b 2024-07-01 3368: ---@return boolean
59c6f5280b 2024-07-01 3369: ---@param chainc integer
59c6f5280b 2024-07-01 3370: function Duel.IsChainDisabled(chainc) end
59c6f5280b 2024-07-01 3371: 
59c6f5280b 2024-07-01 3372: ---检查c是否是连锁chainc的效果的正确的对象
59c6f5280b 2024-07-01 3373: ---@return boolean
59c6f5280b 2024-07-01 3374: ---@param chainc integer
59c6f5280b 2024-07-01 3375: ---@param c Card
59c6f5280b 2024-07-01 3376: function Duel.CheckChainTarget(chainc,c) end
59c6f5280b 2024-07-01 3377: 
59c6f5280b 2024-07-01 3378: ---检查当前连锁中是否存在同名卡的发动,返回true表示无同名卡
59c6f5280b 2024-07-01 3379: ---@return boolean
59c6f5280b 2024-07-01 3380: function Duel.CheckChainUniqueness() end
59c6f5280b 2024-07-01 3381: 
59c6f5280b 2024-07-01 3382: ---返回player进行对应的activity_type操作的次数
59c6f5280b 2024-07-01 3383: ---@return integer
59c6f5280b 2024-07-01 3384: ---@return ...
59c6f5280b 2024-07-01 3385: ---@param player integer
59c6f5280b 2024-07-01 3386: ---@param activity_type integer
59c6f5280b 2024-07-01 3387: ---@param ... any
59c6f5280b 2024-07-01 3388: function Duel.GetActivityCount(player,activity_type,...) end
59c6f5280b 2024-07-01 3389: 
59c6f5280b 2024-07-01 3390: ---检查玩家在当前阶段是否有操作(是否处于阶段开始时,如七皇之剑)
59c6f5280b 2024-07-01 3391: ---@return boolean
59c6f5280b 2024-07-01 3392: function Duel.CheckPhaseActivity() end
59c6f5280b 2024-07-01 3393: 
59c6f5280b 2024-07-01 3394: ---设置操作类型为activity_type、代号为counter_id的计数器,放在initial_effect函数内
59c6f5280b 2024-07-01 3395: ---f为过滤函数,以Card类型为参数,返回值为false的卡片进行以下类型的操作,计数器增加1(目前最多为1)
59c6f5280b 2024-07-01 3396: ---@param counter_id integer
59c6f5280b 2024-07-01 3397: ---@param activity_type integer
59c6f5280b 2024-07-01 3398: ---@param f function
59c6f5280b 2024-07-01 3399: function Duel.AddCustomActivityCounter(counter_id,activity_type,f) end
59c6f5280b 2024-07-01 3400: 
59c6f5280b 2024-07-01 3401: ---代号为counter_id的计数器的计数,返回player进行以下操作的次数(目前最多为1)
59c6f5280b 2024-07-01 3402: ---@return integer
59c6f5280b 2024-07-01 3403: ---@param counter_id integer
59c6f5280b 2024-07-01 3404: ---@param player integer
59c6f5280b 2024-07-01 3405: ---@param activity_type integer
59c6f5280b 2024-07-01 3406: function Duel.GetCustomActivityCount(counter_id,player,activity_type) end
59c6f5280b 2024-07-01 3407: 
59c6f5280b 2024-07-01 3408: ---返回玩家player这回合战斗过的次数
59c6f5280b 2024-07-01 3409: ---@return integer
59c6f5280b 2024-07-01 3410: ---@param player integer
59c6f5280b 2024-07-01 3411: function Duel.GetBattledCount(player) end
59c6f5280b 2024-07-01 3412: 
59c6f5280b 2024-07-01 3413: ---检查回合玩家能否进入战斗阶段
59c6f5280b 2024-07-01 3414: ---@return boolean
59c6f5280b 2024-07-01 3415: function Duel.IsAbleToEnterBP() end
59c6f5280b 2024-07-01 3416: 
59c6f5280b 2024-07-01 3417: ---现世与冥界的逆转专用。把玩家player的卡组和墓地交换
59c6f5280b 2024-07-01 3418: ---@param player integer
59c6f5280b 2024-07-01 3419: function Duel.SwapDeckAndGrave(player) end
59c6f5280b 2024-07-01 3420: 
59c6f5280b 2024-07-01 3421: ---救世星龙专用。把c2记述的效果复制给c1
59c6f5280b 2024-07-01 3422: ---强制发动的效果可以选择是否发动
59c6f5280b 2024-07-01 3423: ---@param c1 Card
59c6f5280b 2024-07-01 3424: ---@param c2 Card
59c6f5280b 2024-07-01 3425: function Duel.MajesticCopy(c1,c2) end
59c6f5280b 2024-07-01 3426: 
59c6f5280b 2024-07-01 3427: ---新建一个空效果
59c6f5280b 2024-07-01 3428: ---并且效果的Owner为c
59c6f5280b 2024-07-01 3429: ---@return Effect
59c6f5280b 2024-07-01 3430: ---@param c Card
59c6f5280b 2024-07-01 3431: function Effect.CreateEffect(c) end
59c6f5280b 2024-07-01 3432: 
59c6f5280b 2024-07-01 3433: ---新建一个全局效果
59c6f5280b 2024-07-01 3434: ---@return Effect
59c6f5280b 2024-07-01 3435: function Effect.GlobalEffect() end
59c6f5280b 2024-07-01 3436: 
59c6f5280b 2024-07-01 3437: ---新建一个效果e的副本
59c6f5280b 2024-07-01 3438: ---@return Effect
59c6f5280b 2024-07-01 3439: ---@param e Effect
59c6f5280b 2024-07-01 3440: function Effect.Clone(e) end
59c6f5280b 2024-07-01 3441: 
59c6f5280b 2024-07-01 3442: ---把效果e重置,重置之后不可以再使用此效果
59c6f5280b 2024-07-01 3443: ---@param e Effect
59c6f5280b 2024-07-01 3444: function Effect.Reset(e) end
59c6f5280b 2024-07-01 3445: 
59c6f5280b 2024-07-01 3446: ---获取效果e的id
59c6f5280b 2024-07-01 3447: ---@return integer
59c6f5280b 2024-07-01 3448: ---@param e Effect
59c6f5280b 2024-07-01 3449: function Effect.GetFieldID(e) end
59c6f5280b 2024-07-01 3450: 
59c6f5280b 2024-07-01 3451: ---为效果e设置效果描述
59c6f5280b 2024-07-01 3452: ---@param e Effect
59c6f5280b 2024-07-01 3453: ---@param desc integer
59c6f5280b 2024-07-01 3454: function Effect.SetDescription(e,desc) end
59c6f5280b 2024-07-01 3455: 
59c6f5280b 2024-07-01 3456: ---为效果e设置Code属性
59c6f5280b 2024-07-01 3457: ---@param e Effect
59c6f5280b 2024-07-01 3458: ---@param code integer
59c6f5280b 2024-07-01 3459: function Effect.SetCode(e,code) end
59c6f5280b 2024-07-01 3460: 
59c6f5280b 2024-07-01 3461: ---为效果e设置Range属性,即e的生效位置
59c6f5280b 2024-07-01 3462: ---@param e Effect
59c6f5280b 2024-07-01 3463: ---@param range integer
59c6f5280b 2024-07-01 3464: function Effect.SetRange(e,range) end
59c6f5280b 2024-07-01 3465: 
59c6f5280b 2024-07-01 3466: ---为效果e设置Target Range属性
59c6f5280b 2024-07-01 3467: ---	s_range指影响的我方区域
59c6f5280b 2024-07-01 3468: ---	o_range值影响的对方区域
59c6f5280b 2024-07-01 3469: ---	如果property属性中指定了EFFECT_FLAG_ABSOLUTE_RANGE标志,
59c6f5280b 2024-07-01 3470: ---		那么s_range指玩家1受到影响的区域,o_range指玩家2受到影响的区域
59c6f5280b 2024-07-01 3471: ---	如果这是一个召唤(覆盖)/限制召唤(覆盖)/特殊召唤手续
59c6f5280b 2024-07-01 3472: ---	(EFFECT_SUMMON_PROC/EFFECT_LIMIT_SUMMON_PROC/EFFECT_SPSUMMON_PROC等)的效果,
59c6f5280b 2024-07-01 3473: ---		并且property指定了EFFECT_FLAG_SPSUM_PARAM标志,
59c6f5280b 2024-07-01 3474: ---		那么s_range表示特殊召唤到的哪个玩家的场地,
59c6f5280b 2024-07-01 3475: ---	o_range表示可选择的表示形式
59c6f5280b 2024-07-01 3476: ---@param e Effect
59c6f5280b 2024-07-01 3477: ---@param s_range integer
59c6f5280b 2024-07-01 3478: ---@param o_range integer
59c6f5280b 2024-07-01 3479: function Effect.SetTargetRange(e,s_range,o_range) end
59c6f5280b 2024-07-01 3480: 
59c6f5280b 2024-07-01 3481: ---设置target range属性并设置 EFFECT_FLAG_ABSOLUTE_TARGET 标志
59c6f5280b 2024-07-01 3482: ---	playerid != 0 s_range和o_range反转
59c6f5280b 2024-07-01 3483: ---@param e Effect
59c6f5280b 2024-07-01 3484: ---@param playerid integer
59c6f5280b 2024-07-01 3485: ---@param s_range integer
59c6f5280b 2024-07-01 3486: ---@param o_range integer
59c6f5280b 2024-07-01 3487: function Effect.SetAbsoluteRange(e,playerid,s_range,o_range) end
59c6f5280b 2024-07-01 3488: 
59c6f5280b 2024-07-01 3489: ---设置一回合可以发动的次数count(仅触发型效果有效),相同的code(不等于0或1时)共用1个次数
59c6f5280b 2024-07-01 3490: ---code包含以下数值具有特殊的性质
59c6f5280b 2024-07-01 3491: ---EFFECT_COUNT_CODE_OATH          誓约使用次数
59c6f5280b 2024-07-01 3492: ---EFFECT_COUNT_CODE_DUEL          决斗中使用次数
59c6f5280b 2024-07-01 3493: ---EFFECT_COUNT_CODE_SINGLE        同一张卡多个效果公共使用次数(不限制同名卡)
59c6f5280b 2024-07-01 3494: ---@param e Effect
59c6f5280b 2024-07-01 3495: ---@param count integer default: 1
59c6f5280b 2024-07-01 3496: ---@param code? integer default: 0
59c6f5280b 2024-07-01 3497: function Effect.SetCountLimit(e,count,code) end
59c6f5280b 2024-07-01 3498: 
59c6f5280b 2024-07-01 3499: ---设置reset参数
59c6f5280b 2024-07-01 3500: ---@param e Effect
59c6f5280b 2024-07-01 3501: ---@param reset_flag integer
59c6f5280b 2024-07-01 3502: ---@param reset_count? integer default: 1
59c6f5280b 2024-07-01 3503: function Effect.SetReset(e,reset_flag,reset_count) end
59c6f5280b 2024-07-01 3504: 
59c6f5280b 2024-07-01 3505: ---为效果e设置Type属性
59c6f5280b 2024-07-01 3506: ---@param e Effect
59c6f5280b 2024-07-01 3507: ---@param type integer
59c6f5280b 2024-07-01 3508: function Effect.SetType(e,type) end
59c6f5280b 2024-07-01 3509: 
59c6f5280b 2024-07-01 3510: ---设置Property属性
59c6f5280b 2024-07-01 3511: ---@param e Effect
59c6f5280b 2024-07-01 3512: ---@param prop1 integer
59c6f5280b 2024-07-01 3513: ---@param prop2? integer
59c6f5280b 2024-07-01 3514: function Effect.SetProperty(e,prop1,prop2) end
59c6f5280b 2024-07-01 3515: 
59c6f5280b 2024-07-01 3516: ---设置Label属性
59c6f5280b 2024-07-01 3517: ---@param e Effect
59c6f5280b 2024-07-01 3518: ---@param ... integer
59c6f5280b 2024-07-01 3519: function Effect.SetLabel(e,...) end
59c6f5280b 2024-07-01 3520: 
59c6f5280b 2024-07-01 3521: ---设置LabelObject属性
59c6f5280b 2024-07-01 3522: ---@param e Effect
59c6f5280b 2024-07-01 3523: ---@param labelobject Card|Group|Effect
59c6f5280b 2024-07-01 3524: function Effect.SetLabelObject(e,labelobject) end
59c6f5280b 2024-07-01 3525: 
59c6f5280b 2024-07-01 3526: ---设置Category属性
59c6f5280b 2024-07-01 3527: ---@param e Effect
59c6f5280b 2024-07-01 3528: ---@param cate integer
59c6f5280b 2024-07-01 3529: function Effect.SetCategory(e,cate) end
59c6f5280b 2024-07-01 3530: 
59c6f5280b 2024-07-01 3531: ---设置提示时点,第二个和第三个参数分别表示 自己 和对方的回合
59c6f5280b 2024-07-01 3532: ---@param e Effect
59c6f5280b 2024-07-01 3533: ---@param s_time integer
59c6f5280b 2024-07-01 3534: ---@param o_time? integer default: s_time
59c6f5280b 2024-07-01 3535: function Effect.SetHintTiming(e,s_time,o_time) end
59c6f5280b 2024-07-01 3536: 
59c6f5280b 2024-07-01 3537: ---设置Condition属性
59c6f5280b 2024-07-01 3538: ---@param e Effect
59c6f5280b 2024-07-01 3539: ---@param con_func function
59c6f5280b 2024-07-01 3540: function Effect.SetCondition(e,con_func) end
59c6f5280b 2024-07-01 3541: 
59c6f5280b 2024-07-01 3542: ---设置Target属性
59c6f5280b 2024-07-01 3543: ---@param e Effect
59c6f5280b 2024-07-01 3544: ---@param targ_func function
59c6f5280b 2024-07-01 3545: function Effect.SetTarget(e,targ_func) end
59c6f5280b 2024-07-01 3546: 
59c6f5280b 2024-07-01 3547: ---设置Cost属性
59c6f5280b 2024-07-01 3548: ---@param e Effect
59c6f5280b 2024-07-01 3549: ---@param cost_func function
59c6f5280b 2024-07-01 3550: function Effect.SetCost(e,cost_func) end
59c6f5280b 2024-07-01 3551: 
59c6f5280b 2024-07-01 3552: ---设置Value属性
59c6f5280b 2024-07-01 3553: ---@param e Effect
59c6f5280b 2024-07-01 3554: ---@param val function|integer|boolean
59c6f5280b 2024-07-01 3555: function Effect.SetValue(e,val) end
59c6f5280b 2024-07-01 3556: 
59c6f5280b 2024-07-01 3557: ---设置Operation属性
59c6f5280b 2024-07-01 3558: ---@param e Effect
59c6f5280b 2024-07-01 3559: ---@param op_func nil|function
59c6f5280b 2024-07-01 3560: function Effect.SetOperation(e,op_func) end
59c6f5280b 2024-07-01 3561: 
59c6f5280b 2024-07-01 3562: ---设置OwnerPlayer属性为player
59c6f5280b 2024-07-01 3563: ---@param e Effect
59c6f5280b 2024-07-01 3564: ---@param player? integer default: 0
59c6f5280b 2024-07-01 3565: function Effect.SetOwnerPlayer(e,player) end
59c6f5280b 2024-07-01 3566: 
59c6f5280b 2024-07-01 3567: ---返回效果描述
59c6f5280b 2024-07-01 3568: ---@return integer
59c6f5280b 2024-07-01 3569: ---@param e Effect
59c6f5280b 2024-07-01 3570: function Effect.GetDescription(e) end
59c6f5280b 2024-07-01 3571: 
59c6f5280b 2024-07-01 3572: ---返回code属性
59c6f5280b 2024-07-01 3573: ---@return integer
59c6f5280b 2024-07-01 3574: ---@param e Effect
59c6f5280b 2024-07-01 3575: function Effect.GetCode(e) end
59c6f5280b 2024-07-01 3576: 
59c6f5280b 2024-07-01 3577: ---返回Type属性
59c6f5280b 2024-07-01 3578: ---@return integer
59c6f5280b 2024-07-01 3579: ---@param e Effect
59c6f5280b 2024-07-01 3580: function Effect.GetType(e) end
59c6f5280b 2024-07-01 3581: 
59c6f5280b 2024-07-01 3582: ---返回Property属性
59c6f5280b 2024-07-01 3583: ---@return integer
59c6f5280b 2024-07-01 3584: ---@return integer
59c6f5280b 2024-07-01 3585: ---@param e Effect
59c6f5280b 2024-07-01 3586: function Effect.GetProperty(e) end
59c6f5280b 2024-07-01 3587: 
59c6f5280b 2024-07-01 3588: ---返回Label属性
59c6f5280b 2024-07-01 3589: ---@return ... integer
59c6f5280b 2024-07-01 3590: ---@param e Effect
59c6f5280b 2024-07-01 3591: function Effect.GetLabel(e) end
59c6f5280b 2024-07-01 3592: 
59c6f5280b 2024-07-01 3593: ---返回LabelObject属性
59c6f5280b 2024-07-01 3594: ---@return Card|Group|Effect
59c6f5280b 2024-07-01 3595: ---@param e Effect
59c6f5280b 2024-07-01 3596: function Effect.GetLabelObject(e) end
59c6f5280b 2024-07-01 3597: 
59c6f5280b 2024-07-01 3598: ---返回Category属性
59c6f5280b 2024-07-01 3599: ---@return integer
59c6f5280b 2024-07-01 3600: ---@param e Effect
59c6f5280b 2024-07-01 3601: function Effect.GetCategory(e) end
59c6f5280b 2024-07-01 3602: 
59c6f5280b 2024-07-01 3603: ---返回Owner属性
59c6f5280b 2024-07-01 3604: ---@return Card
59c6f5280b 2024-07-01 3605: ---@param e Effect
59c6f5280b 2024-07-01 3606: function Effect.GetOwner(e) end
59c6f5280b 2024-07-01 3607: 
59c6f5280b 2024-07-01 3608: ---返回效果在哪一张卡上生效(通常是用Card.RegisterEffect注册该效果的卡)
59c6f5280b 2024-07-01 3609: ---@return Card
59c6f5280b 2024-07-01 3610: ---@param e Effect
59c6f5280b 2024-07-01 3611: function Effect.GetHandler(e) end
59c6f5280b 2024-07-01 3612: 
59c6f5280b 2024-07-01 3613: ---返回condition属性
59c6f5280b 2024-07-01 3614: ---@return function
59c6f5280b 2024-07-01 3615: ---@param e Effect
59c6f5280b 2024-07-01 3616: function Effect.GetCondition(e) end
59c6f5280b 2024-07-01 3617: 
59c6f5280b 2024-07-01 3618: ---返回target属性
59c6f5280b 2024-07-01 3619: ---@return function
59c6f5280b 2024-07-01 3620: ---@param e Effect
59c6f5280b 2024-07-01 3621: function Effect.GetTarget(e) end
59c6f5280b 2024-07-01 3622: 
59c6f5280b 2024-07-01 3623: ---返回cost属性
59c6f5280b 2024-07-01 3624: ---@return function
59c6f5280b 2024-07-01 3625: ---@param e Effect
59c6f5280b 2024-07-01 3626: function Effect.GetCost(e) end
59c6f5280b 2024-07-01 3627: 
59c6f5280b 2024-07-01 3628: ---返回value属性
59c6f5280b 2024-07-01 3629: ---@return function|integer
59c6f5280b 2024-07-01 3630: ---@param e Effect
59c6f5280b 2024-07-01 3631: function Effect.GetValue(e) end
59c6f5280b 2024-07-01 3632: 
59c6f5280b 2024-07-01 3633: ---返回operation属性
59c6f5280b 2024-07-01 3634: ---@return function
59c6f5280b 2024-07-01 3635: ---@param e Effect
59c6f5280b 2024-07-01 3636: function Effect.GetOperation(e) end
59c6f5280b 2024-07-01 3637: 
59c6f5280b 2024-07-01 3638: ---返回e的效果类型(怪兽·魔法·陷阱)
59c6f5280b 2024-07-01 3639: ---与发动该效果的卡的类型不一定相同,比如灵摆效果视为魔法卡的效果
59c6f5280b 2024-07-01 3640: ---@return integer
59c6f5280b 2024-07-01 3641: ---@param e Effect
59c6f5280b 2024-07-01 3642: function Effect.GetActiveType(e) end
59c6f5280b 2024-07-01 3643: 
59c6f5280b 2024-07-01 3644: ---检查e的效果类型(怪兽·魔法·陷阱)是否有type
59c6f5280b 2024-07-01 3645: ---@return boolean
59c6f5280b 2024-07-01 3646: ---@param e Effect
59c6f5280b 2024-07-01 3647: ---@param type integer
59c6f5280b 2024-07-01 3648: function Effect.IsActiveType(e,type) end
59c6f5280b 2024-07-01 3649: 
59c6f5280b 2024-07-01 3650: ---返回OwnerPlayer属性(发动效果、建立效果的玩家)
59c6f5280b 2024-07-01 3651: ---若無OwnerPlayer属性,则是Owner的控制者
59c6f5280b 2024-07-01 3652: ---@return integer
59c6f5280b 2024-07-01 3653: ---@param e Effect
59c6f5280b 2024-07-01 3654: function Effect.GetOwnerPlayer(e) end
59c6f5280b 2024-07-01 3655: 
59c6f5280b 2024-07-01 3656: ---返回当前玩家,一般是Handler的控制者
59c6f5280b 2024-07-01 3657: ---@return integer
59c6f5280b 2024-07-01 3658: ---@param e Effect
59c6f5280b 2024-07-01 3659: function Effect.GetHandlerPlayer(e) end
59c6f5280b 2024-07-01 3660: 
59c6f5280b 2024-07-01 3661: ---检查效果是否含有标志prop1[和prop2]
59c6f5280b 2024-07-01 3662: ---@return boolean
59c6f5280b 2024-07-01 3663: ---@param e Effect
59c6f5280b 2024-07-01 3664: ---@param prop1 integer
59c6f5280b 2024-07-01 3665: ---@param prop2? integer
59c6f5280b 2024-07-01 3666: function Effect.IsHasProperty(e,prop1,prop2) end
59c6f5280b 2024-07-01 3667: 
59c6f5280b 2024-07-01 3668: ---检查效果是否含有效果分类cate
59c6f5280b 2024-07-01 3669: ---@return boolean
59c6f5280b 2024-07-01 3670: ---@param e Effect
59c6f5280b 2024-07-01 3671: ---@param cate integer
59c6f5280b 2024-07-01 3672: function Effect.IsHasCategory(e,cate) end
59c6f5280b 2024-07-01 3673: 
59c6f5280b 2024-07-01 3674: ---检查效果是否属于类型type
59c6f5280b 2024-07-01 3675: ---@return boolean
59c6f5280b 2024-07-01 3676: ---@param e Effect
59c6f5280b 2024-07-01 3677: ---@param type integer
59c6f5280b 2024-07-01 3678: function Effect.IsHasType(e,type) end
59c6f5280b 2024-07-01 3679: 
59c6f5280b 2024-07-01 3680: ---检查效果e能否由player发动
59c6f5280b 2024-07-01 3681: ---neglect_loc=true 为不检测发动位置(手卡), neglect_target=true 为不检测对象要求
59c6f5280b 2024-07-01 3682: ---@return boolean
59c6f5280b 2024-07-01 3683: ---@param e Effect
59c6f5280b 2024-07-01 3684: ---@param player integer
59c6f5280b 2024-07-01 3685: ---@param neglect_loc? boolean default: false
59c6f5280b 2024-07-01 3686: ---@param neglect_target? boolean default: false
59c6f5280b 2024-07-01 3687: function Effect.IsActivatable(e,player,neglect_loc,neglect_target) end
59c6f5280b 2024-07-01 3688: 
59c6f5280b 2024-07-01 3689: ---检查效果e是否是已发动的效果
59c6f5280b 2024-07-01 3690: ---@return boolean
59c6f5280b 2024-07-01 3691: ---@param e Effect
59c6f5280b 2024-07-01 3692: function Effect.IsActivated(e) end
59c6f5280b 2024-07-01 3693: 
59c6f5280b 2024-07-01 3694: ---检查效果e是否检查过cost,即是否是被复制的
59c6f5280b 2024-07-01 3695: ---@return boolean
59c6f5280b 2024-07-01 3696: ---@param e Effect
59c6f5280b 2024-07-01 3697: function Effect.IsCostChecked(e) end
59c6f5280b 2024-07-01 3698: 
59c6f5280b 2024-07-01 3699: ---设置效果e的cost检查标记为b
59c6f5280b 2024-07-01 3700: ---@param e Effect
59c6f5280b 2024-07-01 3701: ---@param b boolean
59c6f5280b 2024-07-01 3702: function Effect.SetCostCheck(e,b) end
59c6f5280b 2024-07-01 3703: 
59c6f5280b 2024-07-01 3704: ---返回效果e的发动区域
59c6f5280b 2024-07-01 3705: ---@return integer
59c6f5280b 2024-07-01 3706: ---@param e Effect
59c6f5280b 2024-07-01 3707: function Effect.GetActivateLocation(e) end
59c6f5280b 2024-07-01 3708: 
59c6f5280b 2024-07-01 3709: ---返回效果e的发动区域序号
59c6f5280b 2024-07-01 3710: ---@return integer
59c6f5280b 2024-07-01 3711: ---@param e Effect
59c6f5280b 2024-07-01 3712: function Effect.GetActivateSequence(e) end
59c6f5280b 2024-07-01 3713: 
59c6f5280b 2024-07-01 3714: ---检测玩家 p 是否还有可以发动的效果 e 的次数
59c6f5280b 2024-07-01 3715: ---@return boolean
59c6f5280b 2024-07-01 3716: ---@param e Effect
59c6f5280b 2024-07-01 3717: ---@param p integer
59c6f5280b 2024-07-01 3718: function Effect.CheckCountLimit(e,p) end
59c6f5280b 2024-07-01 3719: 
59c6f5280b 2024-07-01 3720: ---手动减少玩家 p 对效果 e 的 count 个可用次数[ oath_only 为 该效果是否是 EFFECT_FLAG_OATH]
59c6f5280b 2024-07-01 3721: ---@param e Effect
59c6f5280b 2024-07-01 3722: ---@param p integer
59c6f5280b 2024-07-01 3723: ---@param count? integer default: 1
59c6f5280b 2024-07-01 3724: ---@param oath_only? boolean default: false
59c6f5280b 2024-07-01 3725: function Effect.UseCountLimit(e,p,count,oath_only) end
59c6f5280b 2024-07-01 3726: 
59c6f5280b 2024-07-01 3727: ---@class Group
59c6f5280b 2024-07-01 3728: ---@operator add(Group|Card): Group
59c6f5280b 2024-07-01 3729: 
59c6f5280b 2024-07-01 3730: ---@class Group
59c6f5280b 2024-07-01 3731: ---@operator sub(Group|Card): Group
59c6f5280b 2024-07-01 3732: 
59c6f5280b 2024-07-01 3733: ---新建一个空的卡片组
59c6f5280b 2024-07-01 3734: ---@return Group
59c6f5280b 2024-07-01 3735: function Group.CreateGroup() end
59c6f5280b 2024-07-01 3736: 
59c6f5280b 2024-07-01 3737: ---让卡片组持续,把卡片组设置为效果的LabelObject需要设置
59c6f5280b 2024-07-01 3738: ---@param g Group
59c6f5280b 2024-07-01 3739: function Group.KeepAlive(g) end
59c6f5280b 2024-07-01 3740: 
59c6f5280b 2024-07-01 3741: ---删除卡片组g
59c6f5280b 2024-07-01 3742: ---@param g Group
59c6f5280b 2024-07-01 3743: function Group.DeleteGroup(g) end
59c6f5280b 2024-07-01 3744: 
59c6f5280b 2024-07-01 3745: ---新建卡片组g的副本
59c6f5280b 2024-07-01 3746: ---@return Group
59c6f5280b 2024-07-01 3747: ---@param g Group
59c6f5280b 2024-07-01 3748: function Group.Clone(g) end
59c6f5280b 2024-07-01 3749: 
59c6f5280b 2024-07-01 3750: ---不定参数,把传入的所有卡组合成一个卡片组并返回,所有参数只能是 Card 类型。
59c6f5280b 2024-07-01 3751: ---没有参数时,相当于Group.CreateGroup()
59c6f5280b 2024-07-01 3752: ---@return Group
59c6f5280b 2024-07-01 3753: ---@param ... Card
59c6f5280b 2024-07-01 3754: function Group.FromCards(...) end
59c6f5280b 2024-07-01 3755: 
59c6f5280b 2024-07-01 3756: ---清空卡片组
59c6f5280b 2024-07-01 3757: ---@param g Group
59c6f5280b 2024-07-01 3758: function Group.Clear(g) end
59c6f5280b 2024-07-01 3759: 
59c6f5280b 2024-07-01 3760: ---往g中增加c
59c6f5280b 2024-07-01 3761: ---@param g Group
59c6f5280b 2024-07-01 3762: ---@param c Card
59c6f5280b 2024-07-01 3763: function Group.AddCard(g,c) end
59c6f5280b 2024-07-01 3764: 
59c6f5280b 2024-07-01 3765: ---把c从g中移除
59c6f5280b 2024-07-01 3766: ---@param g Group
59c6f5280b 2024-07-01 3767: ---@param c Card
59c6f5280b 2024-07-01 3768: function Group.RemoveCard(g,c) end
59c6f5280b 2024-07-01 3769: 
59c6f5280b 2024-07-01 3770: ---使指针指向下一张卡并返回这张卡,如果不存在则返回nil
59c6f5280b 2024-07-01 3771: ---@return Card
59c6f5280b 2024-07-01 3772: ---@param g Group
59c6f5280b 2024-07-01 3773: function Group.GetNext(g) end
59c6f5280b 2024-07-01 3774: 
59c6f5280b 2024-07-01 3775: ---返回g中第一张卡,并重置当前指针到g中第一张卡
59c6f5280b 2024-07-01 3776: ---如果g中不存在卡则返回nil
59c6f5280b 2024-07-01 3777: ---@return Card
59c6f5280b 2024-07-01 3778: ---@param g Group
59c6f5280b 2024-07-01 3779: function Group.GetFirst(g) end
59c6f5280b 2024-07-01 3780: 
59c6f5280b 2024-07-01 3781: ---返回g中卡的数量
59c6f5280b 2024-07-01 3782: ---@return integer
59c6f5280b 2024-07-01 3783: ---@param g Group
59c6f5280b 2024-07-01 3784: function Group.GetCount(g) end
59c6f5280b 2024-07-01 3785: 
59c6f5280b 2024-07-01 3786: ---以g中的每一张卡作为参数调用一次f ,第三个参数开始为额外参数
59c6f5280b 2024-07-01 3787: ---@param g Group
59c6f5280b 2024-07-01 3788: ---@param f function
59c6f5280b 2024-07-01 3789: ---@param ... any
59c6f5280b 2024-07-01 3790: function Group.ForEach(g,f,...) end
59c6f5280b 2024-07-01 3791: 
59c6f5280b 2024-07-01 3792: ---过滤函数,从g中筛选满足筛选条件f并且不等于ex的卡
59c6f5280b 2024-07-01 3793: ---从第4个参数开始为额外参数
59c6f5280b 2024-07-01 3794: ---@return Group
59c6f5280b 2024-07-01 3795: ---@param g Group
59c6f5280b 2024-07-01 3796: ---@param f function
59c6f5280b 2024-07-01 3797: ---@param ex Card|Group|nil
59c6f5280b 2024-07-01 3798: ---@param ... any
59c6f5280b 2024-07-01 3799: function Group.Filter(g,f,ex,...) end
59c6f5280b 2024-07-01 3800: 
59c6f5280b 2024-07-01 3801: ---过滤函数,和Group.Filter基本相同,不同之处在于此函数只返回满足条件的卡的数量
59c6f5280b 2024-07-01 3802: ---@return integer
59c6f5280b 2024-07-01 3803: ---@param g Group
59c6f5280b 2024-07-01 3804: ---@param f function
59c6f5280b 2024-07-01 3805: ---@param ex Card|Group|nil
59c6f5280b 2024-07-01 3806: ---@param ... any
59c6f5280b 2024-07-01 3807: function Group.FilterCount(g,f,ex,...) end
59c6f5280b 2024-07-01 3808: 
59c6f5280b 2024-07-01 3809: ---过滤函数,让玩家player从g中选择 min-max 张满足筛选条件f并且不等于ex的卡
59c6f5280b 2024-07-01 3810: ---从第7个参数开始为额外参数
59c6f5280b 2024-07-01 3811: ---@return Group
59c6f5280b 2024-07-01 3812: ---@param g Group
59c6f5280b 2024-07-01 3813: ---@param player integer
59c6f5280b 2024-07-01 3814: ---@param f function
59c6f5280b 2024-07-01 3815: ---@param min integer
59c6f5280b 2024-07-01 3816: ---@param max integer
59c6f5280b 2024-07-01 3817: ---@param ex Card|Group|nil
59c6f5280b 2024-07-01 3818: ---@param ... any
59c6f5280b 2024-07-01 3819: function Group.FilterSelect(g,player,f,min,max,ex,...) end
59c6f5280b 2024-07-01 3820: 
59c6f5280b 2024-07-01 3821: ---让玩家player从g中选择min-max张不等于ex的卡
59c6f5280b 2024-07-01 3822: ---@return Group
59c6f5280b 2024-07-01 3823: ---@param g Group
59c6f5280b 2024-07-01 3824: ---@param player integer
59c6f5280b 2024-07-01 3825: ---@param min integer
59c6f5280b 2024-07-01 3826: ---@param max integer
59c6f5280b 2024-07-01 3827: ---@param ex Card|Group|nil
59c6f5280b 2024-07-01 3828: function Group.Select(g,player,min,max,ex) end
59c6f5280b 2024-07-01 3829: 
59c6f5280b 2024-07-01 3830: ---让玩家 player 从 cg 中选择 1 张卡放入 sg ,并返回选的卡。  
59c6f5280b 2024-07-01 3831: ---btok 表示是否可以点击完成选择的按钮, cancelable 表示是否可以取消整个选择返回 nil, 
59c6f5280b 2024-07-01 3832: ---minc 和 maxc 是客户端的文字缓冲提示,表示需要选择 minc-maxc 张卡,但是这个只是影响视觉效果,并不代表必须要选择那个数量
59c6f5280b 2024-07-01 3833: ---@return Card|nil
59c6f5280b 2024-07-01 3834: ---@param cg Group
59c6f5280b 2024-07-01 3835: ---@param sg Group|nil 已选的卡,可以从中取消选择
59c6f5280b 2024-07-01 3836: ---@param player integer
59c6f5280b 2024-07-01 3837: ---@param btok boolean default: false
59c6f5280b 2024-07-01 3838: ---@param cancelable boolean default: false
59c6f5280b 2024-07-01 3839: ---@param minc integer
59c6f5280b 2024-07-01 3840: ---@param maxc integer
59c6f5280b 2024-07-01 3841: function Group.SelectUnselect(cg,sg,player,btok,cancelable,minc,maxc) end
59c6f5280b 2024-07-01 3842: 
59c6f5280b 2024-07-01 3843: ---让玩家player从g中随机选择count张卡
59c6f5280b 2024-07-01 3844: ---因为是随机选择,所以参数player基本无用,由系统随机选取
59c6f5280b 2024-07-01 3845: ---@return Group
59c6f5280b 2024-07-01 3846: ---@param g Group
59c6f5280b 2024-07-01 3847: ---@param player integer
59c6f5280b 2024-07-01 3848: ---@param count integer
59c6f5280b 2024-07-01 3849: function Group.RandomSelect(g,player,count) end
59c6f5280b 2024-07-01 3850: 
59c6f5280b 2024-07-01 3851: ---让玩家player从g中选择min-max张不等于ex的卡,可以取消并返回nil
59c6f5280b 2024-07-01 3852: ---@return Group
59c6f5280b 2024-07-01 3853: ---@param g Group
59c6f5280b 2024-07-01 3854: ---@param player integer
59c6f5280b 2024-07-01 3855: ---@param min integer
59c6f5280b 2024-07-01 3856: ---@param max integer
59c6f5280b 2024-07-01 3857: ---@param ex Card|Group|nil
59c6f5280b 2024-07-01 3858: function Group.CancelableSelect(g,player,min,max,ex) end
59c6f5280b 2024-07-01 3859: 
59c6f5280b 2024-07-01 3860: ---过滤函数,检查g中是否存在至少count张满足筛选条件f并且不等于ex的卡
59c6f5280b 2024-07-01 3861: ---从第5个参数开始为额外参数
59c6f5280b 2024-07-01 3862: ---@return boolean
59c6f5280b 2024-07-01 3863: ---@param g Group
59c6f5280b 2024-07-01 3864: ---@param f function
59c6f5280b 2024-07-01 3865: ---@param count integer
59c6f5280b 2024-07-01 3866: ---@param ex Card|Group|nil
59c6f5280b 2024-07-01 3867: ---@param ... any
59c6f5280b 2024-07-01 3868: function Group.IsExists(g,f,count,ex,...) end
59c6f5280b 2024-07-01 3869: 
59c6f5280b 2024-07-01 3870: ---子集求和判定函数,f为返回一个interger值的函数
59c6f5280b 2024-07-01 3871: ---检查g中是否存在一个数量为min-max的子集满足以f对子集的每一个元素求值的和等于sum,从第6个参数开始为额外参数
59c6f5280b 2024-07-01 3872: ---	比如:g:CheckWithSumEqual(Card.GetSynchroLevel,7,2,99)
59c6f5280b 2024-07-01 3873: ---	检查g中是否存在一个子集满足子集的同调用等级之和等于7
59c6f5280b 2024-07-01 3874: ---@return boolean
59c6f5280b 2024-07-01 3875: ---@param g Group
59c6f5280b 2024-07-01 3876: ---@param f function
59c6f5280b 2024-07-01 3877: ---@param sum integer
59c6f5280b 2024-07-01 3878: ---@param min integer default: 0
59c6f5280b 2024-07-01 3879: ---@param max integer
59c6f5280b 2024-07-01 3880: ---@param ... any
59c6f5280b 2024-07-01 3881: function Group.CheckWithSumEqual(g,f,sum,min,max,...) end
59c6f5280b 2024-07-01 3882: 
59c6f5280b 2024-07-01 3883: ---让玩家player从g中选取一个数量为min-max的子集使子集的特定函数的和等于sum,从第7个参数开始为额外参数
59c6f5280b 2024-07-01 3884: ---@return Group
59c6f5280b 2024-07-01 3885: ---@param g Group
59c6f5280b 2024-07-01 3886: ---@param player integer
59c6f5280b 2024-07-01 3887: ---@param f function
59c6f5280b 2024-07-01 3888: ---@param sum integer
59c6f5280b 2024-07-01 3889: ---@param min integer
59c6f5280b 2024-07-01 3890: ---@param max integer
59c6f5280b 2024-07-01 3891: ---@param ... any
59c6f5280b 2024-07-01 3892: function Group.SelectWithSumEqual(g,player,f,sum,min,max,...) end
59c6f5280b 2024-07-01 3893: 
59c6f5280b 2024-07-01 3894: ---子集求和判定函数之二,f为返回一个interger值的函数
59c6f5280b 2024-07-01 3895: ---检查g中是否存在一个子集满足以f对子集的每一个元素求值的和刚好大于或者等于sum,从第4个参数开始为额外参数
59c6f5280b 2024-07-01 3896: ---比如:g:CheckWithSumGreater(Card.GetRitualLevel,8)
59c6f5280b 2024-07-01 3897: ---	检查g中是否存在一个子集满足子集的仪式用等级之和大于等于8
59c6f5280b 2024-07-01 3898: ---	注:判定必须是“刚好”大于或者等于
59c6f5280b 2024-07-01 3899: ---	以等级为例,要使等级合计大于等于8,可以选择LV1+LV7而不可以选择LV1+LV4+LV4
59c6f5280b 2024-07-01 3900: ---@return boolean
59c6f5280b 2024-07-01 3901: ---@param g Group
59c6f5280b 2024-07-01 3902: ---@param f function
59c6f5280b 2024-07-01 3903: ---@param sum integer
59c6f5280b 2024-07-01 3904: ---@param ... any
59c6f5280b 2024-07-01 3905: function Group.CheckWithSumGreater(g,f,sum,...) end
59c6f5280b 2024-07-01 3906: 
59c6f5280b 2024-07-01 3907: ---让玩家player从g中选取一个子集使子集的特定函数f的和大于等于sum,从第5个参数开始为额外参数
59c6f5280b 2024-07-01 3908: ---@return Group
59c6f5280b 2024-07-01 3909: ---@param g Group
59c6f5280b 2024-07-01 3910: ---@param player integer
59c6f5280b 2024-07-01 3911: ---@param f function
59c6f5280b 2024-07-01 3912: ---@param sum integer
59c6f5280b 2024-07-01 3913: ---@param ... any
59c6f5280b 2024-07-01 3914: function Group.SelectWithSumGreater(g,player,f,sum,...) end
59c6f5280b 2024-07-01 3915: 
59c6f5280b 2024-07-01 3916: ---f为返回一个interger值的函数,从g中筛选出具有最小的f的值的卡
59c6f5280b 2024-07-01 3917: ---第2个返回值为这个最小值,从第3个参数开始为额外参数
59c6f5280b 2024-07-01 3918: ---要使用第2个返回值注意检查g非空
59c6f5280b 2024-07-01 3919: ---@return Group
59c6f5280b 2024-07-01 3920: ---@return integer
59c6f5280b 2024-07-01 3921: ---@param g Group
59c6f5280b 2024-07-01 3922: ---@param f function
59c6f5280b 2024-07-01 3923: ---@param ... any
59c6f5280b 2024-07-01 3924: function Group.GetMinGroup(g,f,...) end
59c6f5280b 2024-07-01 3925: 
59c6f5280b 2024-07-01 3926: ---f为返回一个interger值的函数,从g中筛选出具有最大的f的值的卡
59c6f5280b 2024-07-01 3927: ---第2个返回值为这个最大值,从第3个参数开始为额外参数
59c6f5280b 2024-07-01 3928: ---要使用第2个返回值注意检查g非空
59c6f5280b 2024-07-01 3929: ---@return Group
59c6f5280b 2024-07-01 3930: ---@return integer
59c6f5280b 2024-07-01 3931: ---@param g Group
59c6f5280b 2024-07-01 3932: ---@param f function
59c6f5280b 2024-07-01 3933: ---@param ... any
59c6f5280b 2024-07-01 3934: function Group.GetMaxGroup(g,f,...) end
59c6f5280b 2024-07-01 3935: 
59c6f5280b 2024-07-01 3936: ---计算g中所有卡的取值的总和,f为为每张卡的取值函数,从第3个参数开始为额外参数
59c6f5280b 2024-07-01 3937: ---@return integer
59c6f5280b 2024-07-01 3938: ---@param g Group
59c6f5280b 2024-07-01 3939: ---@param f function
59c6f5280b 2024-07-01 3940: ---@param ... any
59c6f5280b 2024-07-01 3941: function Group.GetSum(g,f,...) end
59c6f5280b 2024-07-01 3942: 
59c6f5280b 2024-07-01 3943: ---计算g中所有卡的种类数量,f为分类的依据,返回相同的值视为同一种类,从第3个参数开始为额外参数
59c6f5280b 2024-07-01 3944: ---比如 g:GetClassCount(Card.GetCode()) 就是计算g中卡名不同的卡的数量
59c6f5280b 2024-07-01 3945: ---@return integer
59c6f5280b 2024-07-01 3946: ---@param g Group
59c6f5280b 2024-07-01 3947: ---@param f function
59c6f5280b 2024-07-01 3948: ---@param ... any
59c6f5280b 2024-07-01 3949: function Group.GetClassCount(g,f,...) end
59c6f5280b 2024-07-01 3950: 
59c6f5280b 2024-07-01 3951: ---从g中移除满足筛选条件f并且不等于ex的所有卡,第4个参数开始是额外参数
59c6f5280b 2024-07-01 3952: ---@param g Group
59c6f5280b 2024-07-01 3953: ---@param f function
59c6f5280b 2024-07-01 3954: ---@param ex Card|nil
59c6f5280b 2024-07-01 3955: ---@param ... any
59c6f5280b 2024-07-01 3956: function Group.Remove(g,f,ex,...) end
59c6f5280b 2024-07-01 3957: 
59c6f5280b 2024-07-01 3958: ---把g2中的所有卡合并到g1,若g1中原本就有属于g2的卡,那些卡将不会重复
59c6f5280b 2024-07-01 3959: ---注:g2本身不会发生变化
59c6f5280b 2024-07-01 3960: ---@param g1 Group
59c6f5280b 2024-07-01 3961: ---@param g2 Group
59c6f5280b 2024-07-01 3962: function Group.Merge(g1,g2) end
59c6f5280b 2024-07-01 3963: 
59c6f5280b 2024-07-01 3964: ---从g1中移除属于g2中的卡
59c6f5280b 2024-07-01 3965: ---注:g2本身不会发生变化
59c6f5280b 2024-07-01 3966: ---@param g1 Group
59c6f5280b 2024-07-01 3967: ---@param g2 Group
59c6f5280b 2024-07-01 3968: function Group.Sub(g1,g2) end
59c6f5280b 2024-07-01 3969: 
59c6f5280b 2024-07-01 3970: ---判断g1和g2是否相同
59c6f5280b 2024-07-01 3971: ---@return boolean
59c6f5280b 2024-07-01 3972: ---@param g1 Group
59c6f5280b 2024-07-01 3973: ---@param g2 Group
59c6f5280b 2024-07-01 3974: function Group.Equal(g1,g2) end
59c6f5280b 2024-07-01 3975: 
59c6f5280b 2024-07-01 3976: ---检查g中是否存在卡片c
59c6f5280b 2024-07-01 3977: ---@return boolean
59c6f5280b 2024-07-01 3978: ---@param g Group
59c6f5280b 2024-07-01 3979: ---@param c Card
59c6f5280b 2024-07-01 3980: function Group.IsContains(g,c) end
59c6f5280b 2024-07-01 3981: 
59c6f5280b 2024-07-01 3982: ---过滤函数,返回g中满足筛选条件f的第一张卡,若没有则返回nil,从第3个参数开始为额外参数
59c6f5280b 2024-07-01 3983: ---@return Card
59c6f5280b 2024-07-01 3984: ---@param g Group
59c6f5280b 2024-07-01 3985: ---@param f function
59c6f5280b 2024-07-01 3986: ---@param ... any
59c6f5280b 2024-07-01 3987: function Group.SearchCard(g,f,...) end
59c6f5280b 2024-07-01 3988: 
59c6f5280b 2024-07-01 3989: ---和 Group.GetClassCount 类似,但是算法不同(使用位运算)
59c6f5280b 2024-07-01 3990: ---@return integer
59c6f5280b 2024-07-01 3991: ---@param g Group
59c6f5280b 2024-07-01 3992: ---@param f function
59c6f5280b 2024-07-01 3993: ---@param ... any
59c6f5280b 2024-07-01 3994: function Group.GetBinClassCount(g,f,...) end
59c6f5280b 2024-07-01 3995: 
59c6f5280b 2024-07-01 3996: ---显示消息。
59c6f5280b 2024-07-01 3997: ---注意,只会在本地生效,在服务器端不会生效。
59c6f5280b 2024-07-01 3998: ---@param msg any
59c6f5280b 2024-07-01 3999: function Debug.Message(msg) end
59c6f5280b 2024-07-01 4000: 
59c6f5280b 2024-07-01 4001: ---添加卡片,将卡号为code的卡片的持有者设置为owner,以表示形式pos放置在player的场上位于location上序号为seq的格子处
59c6f5280b 2024-07-01 4002: ---proc=true则完成正规召唤程序(即解除苏生限制)
59c6f5280b 2024-07-01 4003: ---@return Card
59c6f5280b 2024-07-01 4004: ---@param code integer
59c6f5280b 2024-07-01 4005: ---@param owner integer
59c6f5280b 2024-07-01 4006: ---@param player integer
59c6f5280b 2024-07-01 4007: ---@param location integer
59c6f5280b 2024-07-01 4008: ---@param seq integer
59c6f5280b 2024-07-01 4009: ---@param pos integer
59c6f5280b 2024-07-01 4010: ---@param proc? boolean default: false
59c6f5280b 2024-07-01 4011: function Debug.AddCard(code,owner,player,location,seq,pos,proc) end
59c6f5280b 2024-07-01 4012: 
59c6f5280b 2024-07-01 4013: ---设置玩家信息,基本分为lp,初始手卡为startcount张,每回合抽drawcount张
59c6f5280b 2024-07-01 4014: ---在残局当中, playerid :自己=0,对方=1
59c6f5280b 2024-07-01 4015: ---@param playerid integer
59c6f5280b 2024-07-01 4016: ---@param lp integer
59c6f5280b 2024-07-01 4017: ---@param startcount integer
59c6f5280b 2024-07-01 4018: ---@param drawcount integer
59c6f5280b 2024-07-01 4019: function Debug.SetPlayerInfo(playerid,lp,startcount,drawcount) end
59c6f5280b 2024-07-01 4020: 
59c6f5280b 2024-07-01 4021: ---设置卡片c的召唤信息:以 sum_type 方法(通常召唤、特殊召唤等)[从 sum_location]出场
59c6f5280b 2024-07-01 4022: ---@param c Card
59c6f5280b 2024-07-01 4023: ---@param sum_type integer
59c6f5280b 2024-07-01 4024: ---@param sum_location? integer default: 0
59c6f5280b 2024-07-01 4025: function Debug.PreSummon(c,sum_type,sum_location) end
59c6f5280b 2024-07-01 4026: 
59c6f5280b 2024-07-01 4027: ---为target添加装备equip_card ,返回值表示是否成功
59c6f5280b 2024-07-01 4028: ---@return boolean
59c6f5280b 2024-07-01 4029: ---@param equip_card Card
59c6f5280b 2024-07-01 4030: ---@param target Card
59c6f5280b 2024-07-01 4031: function Debug.PreEquip(equip_card,target) end
59c6f5280b 2024-07-01 4032: 
59c6f5280b 2024-07-01 4033: ---把target选为c的永续对象
59c6f5280b 2024-07-01 4034: ---@param c Card
59c6f5280b 2024-07-01 4035: ---@param target Card
59c6f5280b 2024-07-01 4036: function Debug.PreSetTarget(c,target) end
59c6f5280b 2024-07-01 4037: 
59c6f5280b 2024-07-01 4038: ---为c添加count个counter_type的指示物
59c6f5280b 2024-07-01 4039: ---@param c Card
59c6f5280b 2024-07-01 4040: ---@param counter_type integer
59c6f5280b 2024-07-01 4041: ---@param count? integer default: 0
59c6f5280b 2024-07-01 4042: function Debug.PreAddCounter(c,counter_type,count) end
59c6f5280b 2024-07-01 4043: 
59c6f5280b 2024-07-01 4044: ---以选项flag开始布局
59c6f5280b 2024-07-01 4045: ---	flag 残局: DUEL_ATTACK_FIRST_TURN+DUEL_SIMPLE_AI
59c6f5280b 2024-07-01 4046: ---		 大师规则1: DUEL_OBSOLETE_RULING
59c6f5280b 2024-07-01 4047: ---	rule=5 是大师规则2020
59c6f5280b 2024-07-01 4048: ---@param flag integer
59c6f5280b 2024-07-01 4049: ---@param rule? integer default: 5
59c6f5280b 2024-07-01 4050: function Debug.ReloadFieldBegin(flag,rule) end
59c6f5280b 2024-07-01 4051: 
59c6f5280b 2024-07-01 4052: ---布局结束
59c6f5280b 2024-07-01 4053: function Debug.ReloadFieldEnd() end
59c6f5280b 2024-07-01 4054: 
59c6f5280b 2024-07-01 4055: ---设置AI的名字,最大长度 100 个字符(1个汉字2个字符)
59c6f5280b 2024-07-01 4056: ---@param name string
59c6f5280b 2024-07-01 4057: function Debug.SetAIName(name) end
59c6f5280b 2024-07-01 4058: 
59c6f5280b 2024-07-01 4059: ---显示消息提示框,最大长度 1024 个字符(1个汉字2个字符)
59c6f5280b 2024-07-01 4060: ---注意,只会在本地生效,在服务器端不会生效。
59c6f5280b 2024-07-01 4061: ---@param msg string
59c6f5280b 2024-07-01 4062: function Debug.ShowHint(msg) end