github libnoname/noname v1.11.4

6 hours ago

v1.11.4更新内容

※ 我们继续和一些优秀且具有开源精神的代码编写者保持着积极合作。在这一版本中,我们通过接收GitHub的Pull Request,整合了 @bacz00 @ChiryuhLii @DennyCats @Foxissimo-8 @gitxin09 @karimvern @morego123 @PositionZer0 @qihang518887 @rintim @Spmario233 @xizifu @xjm0708 @yx-lingmeng @YYUZDS @Zander-Sun @zhpy2004 @zziyoo 共18位贡献者编写的代码(排名不分先后)。

新武将

  • 十周年:

    • 神武: 神曹丕
  • OL:

    • 魔武将: 魔张飞
    • 门阀士族: 族陆郁生
  • 手杀/海外:

    • SP: 手杀诸葛果
    • 测试服: 手杀夏侯楙
    • 限时地主: 魔周瑜
    • 袖里乾坤: 手杀曹纯
    • 神将异构: 手杀神马超
  • 线下:

    • 蚀心入魔: 魔周瑜

底层改动

使自由选将搜索栏能以技能搜索武将 (#3592)

由于群友觉得搜索栏应该能以技能搜索武将,故添加该功能

修改仅点将可用机制,分离单独禁将和整体禁将 (#3622)

无名杀在几个月前增加了武将包的“仅点将可用”选项,使得能使一整个武将包在开启的状态下使人机无法选择其中的武将

但当时的逻辑是在加载武将包时修改lib.config.forbidai_user,武将包仅点将则把该武将包的所有武将均放进去,反之就把该武将包的所有武将移除

这使得“随机选将可用”完全没了作用,因为在加载武将包时会立即根据“仅点将可用”的状态更新数组,使得单独禁将失去了作用

现在分离了相关逻辑,“随机选将可用”仍然走lib.config.forbidai_user,而仅点将可用则在加载游戏时单独根据配置判断

修复电脑端不支持window.prompt导致无法正常运行 (#3638)

由于Electron不支持window.prompt,导致一些使用window.prompt读取用户输入的地方均无法在Electron正常运行

现将这些地方改成无名杀自带的game.promptgame.promises.prompt,以使得Electron正常运行

目前唯一留下的window.prompt会检测移动端和诗笺版接口,Electron端不会访问,故无修改

支持viewAs函数返回卡牌名称 (#3658)

原先函数式viewAs返回string类型,仅做了类型声明,未进行实现

现在实现了对string返回值的处理,可以正常使用了

目前,函数式viewAs的返回值类型,是原本静态viewAs类型的超集

也就是说,如果需要动态计算某些参数,现在所有静态viewAs都可以改为函数式viewAs

国战暗将时,长按暗将点击查看资料时,可以直接看到隐藏的主将 (#3747)

上个版本中,对于拥有隐匿技的武将和国战暗将,在武将牌未知时,可通过“查看资料”来获取武将信息

现版本中,如果一个武将是“未知”的,则不会显示“查看资料”按钮

将【Charlotte技】正式更名为【异能技】 (#3877)

给Charlotte技确认了正式的名称,至于延迟效果等charlotte标签是否需要改名则另当别论

API更改

新增

Player#iterableGetConnectedCardsPlayer#iterableGetShownCardsPlayer#iterableGetKnownCards

  • 用于以迭代器的形式遍历连接牌/明置牌/已知牌,对于不需要完整数组的情况下能优化相关性能

Player#hasCardsPlayer#hasDiscardableCardsPlayer#hasGainableCards

  • 用于判断是否有牌/可弃置的牌/可获取的牌,参数位置同Player#getCards/Player#getDiscardableCards/Player#getGainableCards
  • Player#hasCards拥有短路机制,在获取到存在牌时即会返回结果,无需完整遍历牌区,能优化相关性能

Player#countHistoryPlayer#countAllHistoryPlayer#countRoundHistory

  • 为“获取某轮次XX事件数量”“获取当前回合XX事件数量”“获得整局XX事件数量”增加了统一的数量函数

get.hpColor

  • 获取一名角色的勾玉颜色。用法参考【瞋视】

变动

Player#getShownCardsPlayer#countShownCardsPlayer#hasShownCards

  • 现版本已知牌相关的函数在判断filter时,会先走一遍是否符合filter,再判断是否已知;上个版本前是先判断是否已知,再判断filter;这会导致现在提供给filter的函数会出现未知牌。如果原先代码中存在直接从filter中编写逻辑的情况,则会导致相关函数退化会get/count/hasCards,需要适配

Player#changeHpPlayer#gainMaxHpPlayer#loseMaxHp

  • 返回的事件增加属性changedHpchangedMaxHp,用于获取准确的体力值变化值和体力上限变化值

Player#gainMultiple

  • 返回的事件增加属性gaintag,支持使用gaintag给获得的牌添加标记

Don't miss a new noname release

NewReleases is sending notifications on new releases.