找回密码
 初始化身份识别芯片
查看: 2959|回复: 3

求助,测试了一个修改飞机结构装甲的船插,但是没有生效

[复制链接]

战列舰长

见习机师

见习Mod作者

发表于 2020-2-21 21:54:08 | 显示全部楼层 |阅读模式
本帖最后由 443613745 于 2020-2-22 17:52 编辑
  1. package data.hullmods;

  2. import com.fs.starfarer.api.combat.BaseHullMod;
  3. import com.fs.starfarer.api.combat.ShipAPI;
  4. import com.fs.starfarer.api.combat.ShipAPI.HullSize;
  5. import com.fs.starfarer.api.combat.MutableShipStatsAPI;
  6. import com.fs.starfarer.api.impl.campaign.ids.Stats;

  7. public class hardenedChassisManufactory extends BaseHullMod {

  8.         public static final float HULL_BOUNS = 1175f;
  9.         public static final float ARMOR_BOUNS = 1175f;               
  10.         public static final float SPEED_BOUNS = 66f;        
  11.         public static final float REFIT_TIME_PERCENT = 50f;        
  12.     public static final float MANEUVER_BONUS = 1000f;
  13.         
  14.         public void applyEffectsToFighterSpawnedByShip(ShipAPI fighter, ShipAPI ship, String id) {
  15.                
  16.                 MutableShipStatsAPI stats = fighter.getMutableStats();
  17.                
  18.                 stats.getHullBonus().modifyPercent(id, HULL_BOUNS);
  19.                 stats.getArmorBonus().modifyFlat(id, ARMOR_BOUNS);
  20.                 stats.getMaxSpeed().modifyMult(id, 1f - SPEED_BOUNS*0.01f);
  21.                 stats.getAcceleration().modifyPercent(id, MANEUVER_BONUS * 2f);
  22.                 stats.getDeceleration().modifyPercent(id, MANEUVER_BONUS);
  23.                 stats.getTurnAcceleration().modifyPercent(id, MANEUVER_BONUS * 2f);
  24.                 stats.getMaxTurnRate().modifyPercent(id, MANEUVER_BONUS);
  25.                
  26.                 fighter.setHeavyDHullOverlay();
  27.         }        
  28.         
  29.         
  30.         public void applyEffectsBeforeShipCreation(HullSize hullSize, MutableShipStatsAPI stats, String id) {
  31.                
  32.                 stats.getFighterRefitTimeMult().modifyPercent(id, REFIT_TIME_PERCENT);
  33.         }
  34.                
  35.         public String getDescriptionParam(int index, HullSize hullSize, ShipAPI ship) {

  36.                 if (index == 0) return "" + (int) Math.round(HULL_BOUNS) + "%";
  37.                 if (index == 1) return "" + (int) Math.round(ARMOR_BOUNS);
  38.                 if (index == 2) return "" + (int) Math.round(SPEED_BOUNS) + "%";
  39.                 if (index == 3) return "" + (int) Math.round(REFIT_TIME_PERCENT) + "%";
  40.                 if (index == 4) return "" + (int) MANEUVER_BONUS + "%";
  41.                 return null;
  42.         }
  43.         
复制代码

求助,测试了一个修改飞机结构装甲的船插,但是没有生效,请问是为啥,速度和机动倒是生效了数字因为是测试所以设的大了点,不要在意

凑,去官网查了一下,发现战斗机不适用getArmorBonus或getHullBonus,只能改装甲所受伤害getArmorDamageTakenMult,本来想改下飞机备弹量,估计也不行了

超级版主

高级机师译码专家通讯记者学院教员

Mod作者

Mod译者

发表于 2020-2-22 09:11:26 | 显示全部楼层
  1.                 stats.getHullBonus().modifyPercent(id, HULL_BOUNS);
  2.                 stats.getArmorBonus().modifyFlat(id, ARMOR_BOUNS);
复制代码


只有这两行没生效?不应该啊,你是拿什么测试的

点评

是啊,只有这两个不行,我拿航电的船和飞机试的,可以操控飞机看具体结构值,其他飞机也试过也不行  详情 回复 发表于 2020-2-22 11:06

战列舰长

见习机师

见习Mod作者

 楼主| 发表于 2020-2-22 11:06:31 | 显示全部楼层
FAX 发表于 2020-2-22 09:11
只有这两行没生效?不应该啊,你是拿什么测试的

是啊,只有这两个不行,我拿航电的船和飞机试的,可以操控飞机看具体结构值,其他飞机也试过也不行

护卫船员

发表于 2020-3-5 10:10:19 | 显示全部楼层
本帖最后由 awnc 于 2020-3-5 10:21 编辑

用getMaxHitpoints方法试试?

本版积分规则

Archiver|手机版|小黑屋|远行星号中文论坛

GMT+8, 2024-11-25 06:10

Powered by Discuz! X3.5

© 2001-2077 Tencent Cloud | Durian Software Studio

快速回复 返回顶部 返回列表