Added a check for if it is a double battle. Otherwise a named trainer that has a potential double would show the "female" (partner) sprite if the solo battle was of female variant. (#1383)
This commit is contained in:
parent
5f82449120
commit
bc773f07e3
|
@ -226,13 +226,13 @@ export class TrainerConfig {
|
||||||
return TrainerType[this.getDerivedType()].toString().toLowerCase();
|
return TrainerType[this.getDerivedType()].toString().toLowerCase();
|
||||||
}
|
}
|
||||||
|
|
||||||
getSpriteKey(female?: boolean): string {
|
getSpriteKey(female?: boolean,isDouble: boolean = false): string {
|
||||||
let ret = this.getKey();
|
let ret = this.getKey();
|
||||||
if (this.hasGenders) {
|
if (this.hasGenders) {
|
||||||
ret += `_${female ? "f" : "m"}`;
|
ret += `_${female ? "f" : "m"}`;
|
||||||
}
|
}
|
||||||
// If a special double trainer class was set, set it as the sprite key
|
// If a special double trainer class was set, set it as the sprite key
|
||||||
if (this.trainerTypeDouble && female) {
|
if (this.trainerTypeDouble && female && isDouble) {
|
||||||
ret = TrainerType[this.trainerTypeDouble].toString().toLowerCase();
|
ret = TrainerType[this.trainerTypeDouble].toString().toLowerCase();
|
||||||
}
|
}
|
||||||
return ret;
|
return ret;
|
||||||
|
@ -689,8 +689,8 @@ export class TrainerConfig {
|
||||||
loadAssets(scene: BattleScene, variant: TrainerVariant): Promise<void> {
|
loadAssets(scene: BattleScene, variant: TrainerVariant): Promise<void> {
|
||||||
return new Promise(resolve => {
|
return new Promise(resolve => {
|
||||||
const isDouble = variant === TrainerVariant.DOUBLE;
|
const isDouble = variant === TrainerVariant.DOUBLE;
|
||||||
const trainerKey = this.getSpriteKey(variant === TrainerVariant.FEMALE);
|
const trainerKey = this.getSpriteKey(variant === TrainerVariant.FEMALE, false);
|
||||||
const partnerTrainerKey = this.getSpriteKey(true);
|
const partnerTrainerKey = this.getSpriteKey(true,true);
|
||||||
scene.loadAtlas(trainerKey, "trainer");
|
scene.loadAtlas(trainerKey, "trainer");
|
||||||
if (isDouble) {
|
if (isDouble) {
|
||||||
scene.loadAtlas(partnerTrainerKey, "trainer");
|
scene.loadAtlas(partnerTrainerKey, "trainer");
|
||||||
|
|
|
@ -74,7 +74,7 @@ export default class Trainer extends Phaser.GameObjects.Container {
|
||||||
console.log(Object.keys(trainerPartyTemplates)[Object.values(trainerPartyTemplates).indexOf(this.getPartyTemplate())]);
|
console.log(Object.keys(trainerPartyTemplates)[Object.values(trainerPartyTemplates).indexOf(this.getPartyTemplate())]);
|
||||||
|
|
||||||
const getSprite = (hasShadow?: boolean, forceFemale?: boolean) => {
|
const getSprite = (hasShadow?: boolean, forceFemale?: boolean) => {
|
||||||
const ret = this.scene.addFieldSprite(0, 0, this.config.getSpriteKey(variant === TrainerVariant.FEMALE || forceFemale));
|
const ret = this.scene.addFieldSprite(0, 0, this.config.getSpriteKey(variant === TrainerVariant.FEMALE || forceFemale,this.isDouble()));
|
||||||
ret.setOrigin(0.5, 1);
|
ret.setOrigin(0.5, 1);
|
||||||
ret.setPipeline(this.scene.spritePipeline, {tone: [0.0, 0.0, 0.0, 0.0], hasShadow: !!hasShadow});
|
ret.setPipeline(this.scene.spritePipeline, {tone: [0.0, 0.0, 0.0, 0.0], hasShadow: !!hasShadow});
|
||||||
return ret;
|
return ret;
|
||||||
|
@ -105,7 +105,7 @@ export default class Trainer extends Phaser.GameObjects.Container {
|
||||||
}
|
}
|
||||||
|
|
||||||
getKey(forceFemale?: boolean): string {
|
getKey(forceFemale?: boolean): string {
|
||||||
return this.config.getSpriteKey(this.variant === TrainerVariant.FEMALE || forceFemale);
|
return this.config.getSpriteKey(this.variant === TrainerVariant.FEMALE || forceFemale,this.isDouble());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue