mirror of
https://github.com/Melledy/Grasscutter.git
synced 2024-12-02 22:10:41 +00:00
100d08ec5d
Also fixes Beginner banner using Standard pity.
47 lines
1.7 KiB
Java
47 lines
1.7 KiB
Java
package emu.grasscutter.game.gacha;
|
|
|
|
import dev.morphia.annotations.Entity;
|
|
|
|
@Entity
|
|
public class PlayerGachaInfo {
|
|
private PlayerGachaBannerInfo standardBanner;
|
|
private PlayerGachaBannerInfo beginnerBanner;
|
|
private PlayerGachaBannerInfo eventCharacterBanner;
|
|
private PlayerGachaBannerInfo eventWeaponBanner;
|
|
|
|
public PlayerGachaInfo() {
|
|
this.standardBanner = new PlayerGachaBannerInfo();
|
|
this.eventCharacterBanner = new PlayerGachaBannerInfo();
|
|
this.eventWeaponBanner = new PlayerGachaBannerInfo();
|
|
}
|
|
|
|
public PlayerGachaBannerInfo getStandardBanner() {
|
|
if (this.standardBanner == null) this.standardBanner = new PlayerGachaBannerInfo();
|
|
return this.standardBanner;
|
|
}
|
|
|
|
public PlayerGachaBannerInfo getBeginnerBanner() {
|
|
if (this.beginnerBanner == null) this.beginnerBanner = new PlayerGachaBannerInfo();
|
|
return this.beginnerBanner;
|
|
}
|
|
|
|
public PlayerGachaBannerInfo getEventCharacterBanner() {
|
|
if (this.eventCharacterBanner == null) this.eventCharacterBanner = new PlayerGachaBannerInfo();
|
|
return this.eventCharacterBanner;
|
|
}
|
|
|
|
public PlayerGachaBannerInfo getEventWeaponBanner() {
|
|
if (this.eventWeaponBanner == null) this.eventWeaponBanner = new PlayerGachaBannerInfo();
|
|
return this.eventWeaponBanner;
|
|
}
|
|
|
|
public PlayerGachaBannerInfo getBannerInfo(GachaBanner banner) {
|
|
return switch (banner.getBannerType()) {
|
|
case STANDARD -> this.getStandardBanner();
|
|
case BEGINNER -> this.getBeginnerBanner();
|
|
case EVENT, CHARACTER, CHARACTER2 -> this.getEventCharacterBanner();
|
|
case WEAPON -> this.getEventWeaponBanner();
|
|
};
|
|
}
|
|
}
|