|
|
发表于 2022-4-23 22:16:21
|
显示全部楼层
一个思路:
先通过Global.getSettings().getAllShipHullSpecs()
获取到所有船体的list,类型是List<ShipHullSpecAPI>
然后遍历这个list,根据筛选条件剔除不符合的个体
比如,HullSize为FIGHTER的
或者通过getTags()找到这个船体的全部tag,原版可建造的船至少会有一个蓝图包的tag,后缀为"_bp"
或者getHints(),原版包含UNBOARDABLE, HIDE_IN_CODEX的船体(包括模块)都是不可造的
还有一种非常低效但准确的方法
通过对所有势力进行getKnownShips()(包括玩家自己的势力),对比里面的船体id,当一个船体的ID不存在于任何势力的已知船体内则踢出列表
或者反其道而行之,建立一个空List,对于所有势力的已知船体id,添加进这个空list |
|