askForCardChosen能为可选牌的范围加限制吗?
太阳神三国杀lua吧
全部回复
仅看楼主
level 9
chh317 楼主
正在探索如何体验更友好地实现这个技能:
准备阶段,你可对一名其他角色执行以下一项:1、弃置其装备区或判定区内一张黑色的牌;2、展示其一张手牌,若为黑色则弃置之。
目前实现方法是使用了askForCardChosen,装备区和判定区的红牌也会显示为可选,但选了后我会弹提示说不能选择红色的牌。
2022年04月04日 05点04分 1
level 10
支持你的想法,最近我也感觉这个函数的功能不够强大。首先是不可以选择多张卡牌,其次是无法完美实现“弃置任意数量的手牌”(askfordiscard不能获取弃置牌的数量和内容,forcetodiscard只能弃置固定数量的牌,目前只能用askforexchange先得到一个dammycard,然后对其子卡进行遍历获得数据,这样既麻烦,提示信息也是固定的)。而对于你的1,我想到的一种方案是先对ej两个区域的所有牌进行遍历,将符合要求的牌加入一个qlist,再对这个容器里的牌调用askforcardchosen。
2022年04月04日 06点04分 2
是我的版本太老了么,我的askForCardChosen似乎不能对qlist调用。你说的是askforAG?int askForCardChosen(ServerPlayer *player, ServerPlayer *who, const char *flags, const char *reason, bool handcard_visible = false, Card::HandlingMethod method = Card::MethodNone);
2022年04月04日 07点04分
你倒是提醒我了另一种思路,可以在askForCardChosen前通过某种方式把不符合要求的卡藏起来,askForCardChosen读不到这张牌就行了。
2022年04月04日 07点04分
level 10
我这个是有一个隐去不可选的qlist的参数
2022年04月04日 07点04分 3
我知道了,我的版本太老了,感谢
2022年04月04日 07点04分
楼上最后一句话说错了,应该是遍历出不符合要求的卡牌id加入qlist,然后调用askforcardchosen
2022年04月04日 07点04分
level 5
是不是可以通过自己对自己使用doGongxin()来解决?
2025年02月13日 18点02分 4
@mhtian4194304 好思路,谢谢回复远古问题
2025年02月14日 00点02分
当时用楼上的方法解决了
2025年02月14日 00点02分
1