public void setPilotingMech(int piloting) { super.setPiloting(piloting, 0); }
/** * Sets the piloting skill of the crew's default pilot. */ public void setPiloting(int piloting) { setPiloting(piloting, crewType.getPilotPos()); }
/** * Protomechs have no piloting skill (set to 5 for BV purposes) */ @Override public void setCrew(Crew p) { super.setCrew(p); if (null != p) { getCrew().setPiloting(5, 0); } }
/** * Set the anti-mek skill for this unit. Since Infantry don't have piloting * the crew's piloting skill is treated as the anti-mek skill. This is * largely just a convenience method for setting the Crew's piloting skill. * @param amSkill */ public void setAntiMekSkill(int amSkill) { if (getCrew() == null) { return; } getCrew().setPiloting(amSkill, 0); }
/** * Convenience method for setting the anti-mek skill of the unit based on * whether or not they have anti-mek training. If the input is false, the * anti-mek skill is set to the default untrained value, otherwise it's * set to the default value based on motive type. * * @param amTraining */ public void setAntiMekSkill(boolean amTraining) { if (getCrew() == null) { return; } if (amTraining) { if ((getMovementMode() == EntityMovementMode.INF_MOTORIZED) || getMovementMode() == EntityMovementMode.INF_JUMP) { getCrew().setPiloting(ANTI_MECH_SKILL_JUMP, 0); } else { getCrew().setPiloting(ANTI_MECH_SKILL_FOOT, 0); } } else { getCrew().setPiloting(ANTI_MECH_SKILL_UNTRAINED, 0); } }
crew.setGunneryB(gunneryBVal, slot); crew.setArtillery(artVal, slot); crew.setPiloting(pilotVal, slot); crew.setToughness(toughVal, slot);
/** * update the skills for this squadron */ public void updateSkills() { List<Entity> activeFighters = getActiveSubEntities().orElse(Collections.emptyList()); if(activeFighters.isEmpty()) { return; } int pilotingTotal = 0; int gunneryTotal = 0; int gunneryLTotal = 0; int gunneryMTotal = 0; int gunneryBTotal = 0; for(Entity fighter : activeFighters) { pilotingTotal += fighter.getCrew().getPiloting(); gunneryTotal += fighter.getCrew().getGunnery(); gunneryLTotal += fighter.getCrew().getGunneryL(); gunneryMTotal += fighter.getCrew().getGunneryM(); gunneryBTotal += fighter.getCrew().getGunneryB(); } getCrew().setPiloting(pilotingTotal / activeFighters.size(), 0); getCrew().setGunnery(gunneryTotal / activeFighters.size(), 0); getCrew().setGunneryL(gunneryLTotal / activeFighters.size(), 0); getCrew().setGunneryM(gunneryMTotal / activeFighters.size(), 0); getCrew().setGunneryB(gunneryBTotal / activeFighters.size(), 0); }
@Override public void setExtraMissionForces(Campaign campaign, ArrayList<Entity> allyEntities, ArrayList<Entity> enemyEntities) { setStart(startPos[Compute.randomInt(4)]); int enemyStart = getStart() + 4; if (enemyStart > 8) { enemyStart -= 8; } for (int weight = EntityWeightClass.WEIGHT_LIGHT; weight <= EntityWeightClass.WEIGHT_ASSAULT; weight++) { enemyEntities = new ArrayList<Entity>(); Entity en = getEntity(getContract(campaign).getEnemyCode(), getContract(campaign).getEnemySkill(), getContract(campaign).getEnemyQuality(), UnitType.MEK, Math.min(weight + 1, EntityWeightClass.WEIGHT_ASSAULT), campaign); if (weight == EntityWeightClass.WEIGHT_ASSAULT) { en.getCrew().setGunnery(en.getCrew().getGunnery() - 1); en.getCrew().setPiloting(en.getCrew().getPiloting() - 1); } enemyEntities.add(en); getSpecMissionEnemies().add(enemyEntities); } addBotForce(getEnemyBotForce(getContract(campaign), enemyStart, getSpecMissionEnemies().get(0))); } }
@Override public void setExtraMissionForces(Campaign campaign, ArrayList<Entity> allyEntities, ArrayList<Entity> enemyEntities) { setStart(startPos[Compute.randomInt(4)]); int enemyStart = getStart() + 4; if (enemyStart > 8) { enemyStart -= 8; } for (int weight = EntityWeightClass.WEIGHT_LIGHT; weight <= EntityWeightClass.WEIGHT_ASSAULT; weight++) { Entity en = getEntity(getContract(campaign).getEnemyCode(), getContract(campaign).getEnemySkill(), getContract(campaign).getEnemyQuality(), UnitType.MEK, Math.min(weight + 1, EntityWeightClass.WEIGHT_ASSAULT), campaign); if (weight == EntityWeightClass.WEIGHT_ASSAULT) { en.getCrew().setGunnery(en.getCrew().getGunnery() - 1); en.getCrew().setPiloting(en.getCrew().getPiloting() - 1); } enemyEntities = new ArrayList<Entity>(); enemyEntities.add(en); getSpecMissionEnemies().add(enemyEntities); } addBotForce(getEnemyBotForce(getContract(campaign), enemyStart, getSpecMissionEnemies().get(0))); } }
ent.getCrew().setGunneryM(skills[0], i); ent.getCrew().setGunneryB(skills[0], i); ent.getCrew().setPiloting(skills[1], i);
en.getCrew().setPiloting(skills[1]);
artillery = p.getSkill(SkillType.S_ARTILLERY).getFinalSkillValue(); entity.getCrew().setPiloting(Math.min(Math.max(piloting, 0), 8), slot); entity.getCrew().setGunnery(Math.min(Math.max(gunnery, 0), 7), slot);
int[] skills = c.getRandomSkillsGenerator().getRandomSkills(e, true); e.getCrew().setGunnery(skills[0], i); e.getCrew().setPiloting(skills[1], i); if (e.getCrew() instanceof LAMPilot) { skills = c.getRandomSkillsGenerator().getRandomSkills(e, true);
entity.getCrew().setPiloting(Math.min(Math.max(piloting, 0), 8), 0); entity.getCrew().setGunnery(Math.min(Math.max(gunnery, 0), 7), 0); entity.getCrew().setArtillery(Math.min(Math.max(artillery, 0), 8), 0);
entity.getCrew().setGunneryM(gunnery, i); entity.getCrew().setPiloting(piloting, i);
private void autoSetSkillsAndName(Entity e) { IClientPreferences cs = PreferenceManager.getClientPreferences(); for (int i = 0; i < e.getCrew().getSlotCount(); i++) { if(cs.useAverageSkills()) { int skills[] = m_client.getRandomSkillsGenerator().getRandomSkills(e, true); int gunnery = skills[0]; int piloting = skills[1]; e.getCrew().setGunnery(gunnery, i); e.getCrew().setPiloting(piloting, i); if (e.getCrew() instanceof LAMPilot) { skills = m_client.getRandomSkillsGenerator().getRandomSkills(e, true); ((LAMPilot)e.getCrew()).setGunneryAero(skills[0]); ((LAMPilot)e.getCrew()).setPilotingAero(skills[1]); } } e.getCrew().sortRandomSkills(); if(cs.generateNames()) { e.getCrew().setName(m_client.getRandomNameGenerator().generate(), i); } } }
private void autoSetSkillsAndName(Entity e) { IClientPreferences cs = PreferenceManager.getClientPreferences(); for (int i = 0; i < e.getCrew().getSlotCount(); i++) { if (cs.useAverageSkills()) { int skills[] = client.getRandomSkillsGenerator().getRandomSkills(e, true); int gunnery = skills[0]; int piloting = skills[1]; e.getCrew().setGunnery(gunnery, i); // For infantry, piloting doubles as antimek skill, and this is // set based on whether the unit has antimek training, which gets // set in the BLK file, so we should ignore the defaults if (!(e instanceof Infantry)) { e.getCrew().setPiloting(piloting, i); } if (e.getCrew() instanceof LAMPilot) { skills = client.getRandomSkillsGenerator().getRandomSkills(e, true); ((LAMPilot)e.getCrew()).setGunneryAero(skills[0]); ((LAMPilot)e.getCrew()).setPilotingAero(skills[1]); } } if(cs.generateNames()) { e.getCrew().setName(client.getRandomNameGenerator().generate(), i); } } e.getCrew().sortRandomSkills(); }