mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2026-03-28 18:42:37 +01:00
199 lines
3.7 KiB
Java
199 lines
3.7 KiB
Java
package emu.grasscutter.data.def;
|
|
|
|
import java.util.List;
|
|
|
|
import emu.grasscutter.data.GameData;
|
|
import emu.grasscutter.data.GameResource;
|
|
import emu.grasscutter.data.ResourceType;
|
|
import emu.grasscutter.data.ResourceType.LoadPriority;
|
|
import emu.grasscutter.data.common.PropGrowCurve;
|
|
|
|
@ResourceType(name = "MonsterExcelConfigData.json", loadPriority = LoadPriority.LOW)
|
|
public class MonsterData extends GameResource {
|
|
private int Id;
|
|
|
|
private String MonsterName;
|
|
private String Type;
|
|
private String ServerScript;
|
|
private List<Integer> Affix;
|
|
private String Ai;
|
|
private int[] Equips;
|
|
private List<HpDrops> HpDrops;
|
|
private int KillDropId;
|
|
private String ExcludeWeathers;
|
|
private int FeatureTagGroupID;
|
|
private int MpPropID;
|
|
private String Skin;
|
|
private int DescribeId;
|
|
private int CombatBGMLevel;
|
|
private int EntityBudgetLevel;
|
|
private float HpBase;
|
|
private float AttackBase;
|
|
private float DefenseBase;
|
|
private float FireSubHurt;
|
|
private float ElecSubHurt;
|
|
private float GrassSubHurt;
|
|
private float WaterSubHurt;
|
|
private float WindSubHurt;
|
|
private float RockSubHurt;
|
|
private float IceSubHurt;
|
|
private float PhysicalSubHurt;
|
|
private List<PropGrowCurve> PropGrowCurves;
|
|
private long NameTextMapHash;
|
|
private int CampID;
|
|
|
|
private int weaponId;
|
|
private MonsterDescribeData describeData;
|
|
|
|
@Override
|
|
public int getId() {
|
|
return this.Id;
|
|
}
|
|
|
|
public String getMonsterName() {
|
|
return MonsterName;
|
|
}
|
|
|
|
public String getType() {
|
|
return Type;
|
|
}
|
|
|
|
public String getServerScript() {
|
|
return ServerScript;
|
|
}
|
|
|
|
public List<Integer> getAffix() {
|
|
return Affix;
|
|
}
|
|
|
|
public String getAi() {
|
|
return Ai;
|
|
}
|
|
|
|
public int[] getEquips() {
|
|
return Equips;
|
|
}
|
|
|
|
public List<HpDrops> getHpDrops() {
|
|
return HpDrops;
|
|
}
|
|
|
|
public int getKillDropId() {
|
|
return KillDropId;
|
|
}
|
|
|
|
public String getExcludeWeathers() {
|
|
return ExcludeWeathers;
|
|
}
|
|
|
|
public int getFeatureTagGroupID() {
|
|
return FeatureTagGroupID;
|
|
}
|
|
|
|
public int getMpPropID() {
|
|
return MpPropID;
|
|
}
|
|
|
|
public String getSkin() {
|
|
return Skin;
|
|
}
|
|
|
|
public int getDescribeId() {
|
|
return DescribeId;
|
|
}
|
|
|
|
public int getCombatBGMLevel() {
|
|
return CombatBGMLevel;
|
|
}
|
|
|
|
public int getEntityBudgetLevel() {
|
|
return EntityBudgetLevel;
|
|
}
|
|
|
|
public float getBaseHp() {
|
|
return HpBase;
|
|
}
|
|
|
|
public float getBaseAttack() {
|
|
return AttackBase;
|
|
}
|
|
|
|
public float getBaseDefense() {
|
|
return DefenseBase;
|
|
}
|
|
|
|
public float getElecSubHurt() {
|
|
return ElecSubHurt;
|
|
}
|
|
|
|
public float getGrassSubHurt() {
|
|
return GrassSubHurt;
|
|
}
|
|
|
|
public float getWaterSubHurt() {
|
|
return WaterSubHurt;
|
|
}
|
|
|
|
public float getWindSubHurt() {
|
|
return WindSubHurt;
|
|
}
|
|
|
|
public float getIceSubHurt() {
|
|
return IceSubHurt;
|
|
}
|
|
|
|
public float getPhysicalSubHurt() {
|
|
return PhysicalSubHurt;
|
|
}
|
|
|
|
public List<PropGrowCurve> getPropGrowCurves() {
|
|
return PropGrowCurves;
|
|
}
|
|
|
|
public long getNameTextMapHash() {
|
|
return NameTextMapHash;
|
|
}
|
|
|
|
public int getCampID() {
|
|
return CampID;
|
|
}
|
|
|
|
public MonsterDescribeData getDescribeData() {
|
|
return describeData;
|
|
}
|
|
|
|
public int getWeaponId() {
|
|
return weaponId;
|
|
}
|
|
|
|
@Override
|
|
public void onLoad() {
|
|
this.describeData = GameData.getMonsterDescribeDataMap().get(this.getDescribeId());
|
|
|
|
for (int id : this.Equips) {
|
|
if (id == 0) {
|
|
continue;
|
|
}
|
|
GadgetData gadget = GameData.getGadgetDataMap().get(id);
|
|
if (gadget == null) {
|
|
continue;
|
|
}
|
|
if (gadget.getItemJsonName().equals("Default_MonsterWeapon")) {
|
|
this.weaponId = id;
|
|
}
|
|
}
|
|
}
|
|
|
|
public class HpDrops {
|
|
private int DropId;
|
|
private int HpPercent;
|
|
|
|
public int getDropId(){
|
|
return this.DropId;
|
|
}
|
|
public int getHpPercent(){
|
|
return this.HpPercent;
|
|
}
|
|
}
|
|
}
|