Updated StatsSet to match newer branches.
This commit is contained in:
parent
2bd3168bb2
commit
aef227ea6c
@ -33,6 +33,7 @@ import org.l2jmobius.gameserver.geoengine.GeoEngine;
|
||||
import org.l2jmobius.gameserver.instancemanager.GrandBossManager;
|
||||
import org.l2jmobius.gameserver.model.Location;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.World;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.GrandBossInstance;
|
||||
@ -46,7 +47,6 @@ import org.l2jmobius.gameserver.network.serverpackets.Earthquake;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.GameServerPacket;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.PlaySound;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SpecialCamera;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.creatures.NpcTemplate;
|
||||
|
||||
/**
|
||||
@ -259,12 +259,12 @@ public class Antharas extends Quest
|
||||
}
|
||||
else if (status == FIGHTING)
|
||||
{
|
||||
final int loc_x = info.getInteger("loc_x");
|
||||
final int loc_y = info.getInteger("loc_y");
|
||||
final int loc_z = info.getInteger("loc_z");
|
||||
final int heading = info.getInteger("heading");
|
||||
final int hp = info.getInteger("currentHP");
|
||||
final int mp = info.getInteger("currentMP");
|
||||
final int loc_x = info.getInt("loc_x");
|
||||
final int loc_y = info.getInt("loc_y");
|
||||
final int loc_z = info.getInt("loc_z");
|
||||
final int heading = info.getInt("heading");
|
||||
final int hp = info.getInt("currentHP");
|
||||
final int mp = info.getInt("currentMP");
|
||||
_antharas = (GrandBossInstance) addSpawn(ANTHARASOLDID, loc_x, loc_y, loc_z, heading, false, 0);
|
||||
GrandBossManager.getInstance().addBoss(_antharas);
|
||||
_antharas.setCurrentHpMp(hp, mp);
|
||||
@ -312,12 +312,12 @@ public class Antharas extends Quest
|
||||
if ((antharasId != 0) && (status == FIGHTING))
|
||||
{
|
||||
final StatsSet info = GrandBossManager.getInstance().getStatsSet(antharasId);
|
||||
final int loc_x = info.getInteger("loc_x");
|
||||
final int loc_y = info.getInteger("loc_y");
|
||||
final int loc_z = info.getInteger("loc_z");
|
||||
final int heading = info.getInteger("heading");
|
||||
final int hp = info.getInteger("currentHP");
|
||||
final int mp = info.getInteger("currentMP");
|
||||
final int loc_x = info.getInt("loc_x");
|
||||
final int loc_y = info.getInt("loc_y");
|
||||
final int loc_z = info.getInt("loc_z");
|
||||
final int heading = info.getInt("heading");
|
||||
final int hp = info.getInt("currentHP");
|
||||
final int mp = info.getInt("currentMP");
|
||||
_antharas = (GrandBossInstance) addSpawn(antharasId, loc_x, loc_y, loc_z, heading, false, 0);
|
||||
GrandBossManager.getInstance().addBoss(_antharas);
|
||||
_antharas.setCurrentHpMp(hp, mp);
|
||||
|
@ -33,6 +33,7 @@ import org.l2jmobius.gameserver.geoengine.GeoEngine;
|
||||
import org.l2jmobius.gameserver.instancemanager.GrandBossManager;
|
||||
import org.l2jmobius.gameserver.model.Effect;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.model.actor.Summon;
|
||||
@ -48,7 +49,6 @@ import org.l2jmobius.gameserver.network.serverpackets.Earthquake;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.MoveToPawn;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.PlaySound;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SocialAction;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.util.Util;
|
||||
|
||||
/**
|
||||
@ -139,12 +139,12 @@ public class Baium extends Quest
|
||||
}
|
||||
else if (status == AWAKE)
|
||||
{
|
||||
final int loc_x = info.getInteger("loc_x");
|
||||
final int loc_y = info.getInteger("loc_y");
|
||||
final int loc_z = info.getInteger("loc_z");
|
||||
final int heading = info.getInteger("heading");
|
||||
final int hp = info.getInteger("currentHP");
|
||||
final int mp = info.getInteger("currentMP");
|
||||
final int loc_x = info.getInt("loc_x");
|
||||
final int loc_y = info.getInt("loc_y");
|
||||
final int loc_z = info.getInt("loc_z");
|
||||
final int heading = info.getInt("heading");
|
||||
final int hp = info.getInt("currentHP");
|
||||
final int mp = info.getInt("currentMP");
|
||||
final GrandBossInstance baium = (GrandBossInstance) addSpawn(LIVE_BAIUM, loc_x, loc_y, loc_z, heading, false, 0);
|
||||
if (Config.ANNOUNCE_TO_ALL_SPAWN_RB)
|
||||
{
|
||||
|
@ -26,6 +26,7 @@ import org.l2jmobius.Config;
|
||||
import org.l2jmobius.commons.util.Rnd;
|
||||
import org.l2jmobius.gameserver.instancemanager.GrandBossManager;
|
||||
import org.l2jmobius.gameserver.model.Location;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Attackable;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.GrandBossInstance;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.NpcInstance;
|
||||
@ -34,7 +35,6 @@ import org.l2jmobius.gameserver.model.entity.Announcements;
|
||||
import org.l2jmobius.gameserver.model.quest.Quest;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.CreatureSay;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.PlaySound;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
/**
|
||||
* Core AI
|
||||
|
@ -28,6 +28,7 @@ import org.l2jmobius.gameserver.instancemanager.GrandBossManager;
|
||||
import org.l2jmobius.gameserver.model.CommandChannel;
|
||||
import org.l2jmobius.gameserver.model.Party;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Attackable;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.GrandBossInstance;
|
||||
@ -47,7 +48,6 @@ import org.l2jmobius.gameserver.network.serverpackets.PlaySound;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SocialAction;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SpecialCamera;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
/**
|
||||
* Frintezza AI
|
||||
|
@ -21,13 +21,13 @@ import org.l2jmobius.commons.util.Rnd;
|
||||
import org.l2jmobius.gameserver.ai.CtrlIntention;
|
||||
import org.l2jmobius.gameserver.datatables.SkillTable;
|
||||
import org.l2jmobius.gameserver.instancemanager.GrandBossManager;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.GrandBossInstance;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.NpcInstance;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.model.entity.Announcements;
|
||||
import org.l2jmobius.gameserver.model.quest.Quest;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.PlaySound;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
/**
|
||||
* @author Shyla
|
||||
@ -94,8 +94,8 @@ public class Orfen extends Quest
|
||||
final int loc_y = 17368;
|
||||
final int loc_z = -5412;
|
||||
final int heading = 0;
|
||||
final int hp = info.getInteger("currentHP");
|
||||
final int mp = info.getInteger("currentMP");
|
||||
final int hp = info.getInt("currentHP");
|
||||
final int mp = info.getInt("currentMP");
|
||||
_orfen = (GrandBossInstance) addSpawn(ORFEN, loc_x, loc_y, loc_z, heading, false, 0);
|
||||
if (Config.ANNOUNCE_TO_ALL_SPAWN_RB)
|
||||
{
|
||||
|
@ -24,6 +24,7 @@ import org.l2jmobius.commons.util.Rnd;
|
||||
import org.l2jmobius.gameserver.ai.CtrlIntention;
|
||||
import org.l2jmobius.gameserver.datatables.SkillTable;
|
||||
import org.l2jmobius.gameserver.instancemanager.GrandBossManager;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Attackable;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.GrandBossInstance;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.MonsterInstance;
|
||||
@ -34,7 +35,6 @@ import org.l2jmobius.gameserver.model.quest.Quest;
|
||||
import org.l2jmobius.gameserver.model.zone.type.BossZone;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.PlaySound;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SocialAction;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
public class QueenAnt extends Quest
|
||||
{
|
||||
@ -121,8 +121,8 @@ public class QueenAnt extends Quest
|
||||
/*
|
||||
* int loc_x = info.getInteger("loc_x"); int loc_y = info.getInteger("loc_y"); int loc_z = info.getInteger("loc_z"); int heading = info.getInteger("heading");
|
||||
*/
|
||||
final int hp = info.getInteger("currentHP");
|
||||
final int mp = info.getInteger("currentMP");
|
||||
final int hp = info.getInt("currentHP");
|
||||
final int mp = info.getInt("currentMP");
|
||||
final GrandBossInstance queen = (GrandBossInstance) addSpawn(QUEEN, -21610, 181594, -5734, 0, false, 0);
|
||||
if (Config.ANNOUNCE_TO_ALL_SPAWN_RB)
|
||||
{
|
||||
|
@ -28,6 +28,7 @@ import org.l2jmobius.gameserver.datatables.SkillTable;
|
||||
import org.l2jmobius.gameserver.instancemanager.GrandBossManager;
|
||||
import org.l2jmobius.gameserver.model.Effect;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.model.actor.Summon;
|
||||
@ -40,7 +41,6 @@ import org.l2jmobius.gameserver.model.zone.type.BossZone;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.PlaySound;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SocialAction;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SpecialCamera;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.util.Util;
|
||||
|
||||
/**
|
||||
@ -122,8 +122,8 @@ public class Valakas extends Quest
|
||||
final int loc_z = -1595;
|
||||
final int heading = 0;
|
||||
|
||||
final int hp = info.getInteger("currentHP");
|
||||
final int mp = info.getInteger("currentMP");
|
||||
final int hp = info.getInt("currentHP");
|
||||
final int mp = info.getInt("currentMP");
|
||||
final GrandBossInstance valakas = (GrandBossInstance) addSpawn(VALAKAS, loc_x, loc_y, loc_z, heading, false, 0);
|
||||
GrandBossManager.getInstance().addBoss(valakas);
|
||||
final NpcInstance _valakas = valakas;
|
||||
|
@ -41,6 +41,7 @@ import org.l2jmobius.gameserver.instancemanager.GrandBossManager;
|
||||
import org.l2jmobius.gameserver.model.Effect;
|
||||
import org.l2jmobius.gameserver.model.Location;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.DoorInstance;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.NpcInstance;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
@ -49,7 +50,6 @@ import org.l2jmobius.gameserver.model.quest.Quest;
|
||||
import org.l2jmobius.gameserver.model.spawn.Spawn;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.MagicSkillUse;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SpecialCamera;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.creatures.NpcTemplate;
|
||||
|
||||
/**
|
||||
|
@ -28,6 +28,7 @@ import org.l2jmobius.gameserver.datatables.csv.DoorTable;
|
||||
import org.l2jmobius.gameserver.instancemanager.GrandBossManager;
|
||||
import org.l2jmobius.gameserver.model.Effect;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Attackable;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.GrandBossInstance;
|
||||
@ -36,7 +37,6 @@ import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.model.quest.Quest;
|
||||
import org.l2jmobius.gameserver.model.zone.type.BossZone;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.PlaySound;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
/**
|
||||
* Zaken AI
|
||||
@ -185,12 +185,12 @@ public class Zaken extends Quest
|
||||
}
|
||||
else
|
||||
{
|
||||
final int loc_x = info.getInteger("loc_x");
|
||||
final int loc_y = info.getInteger("loc_y");
|
||||
final int loc_z = info.getInteger("loc_z");
|
||||
final int heading = info.getInteger("heading");
|
||||
final int hp = info.getInteger("currentHP");
|
||||
final int mp = info.getInteger("currentMP");
|
||||
final int loc_x = info.getInt("loc_x");
|
||||
final int loc_y = info.getInt("loc_y");
|
||||
final int loc_z = info.getInt("loc_z");
|
||||
final int heading = info.getInt("heading");
|
||||
final int hp = info.getInt("currentHP");
|
||||
final int mp = info.getInt("currentMP");
|
||||
final GrandBossInstance zaken = (GrandBossInstance) addSpawn(ZAKEN, loc_x, loc_y, loc_z, heading, false, 0);
|
||||
zaken.setCurrentHpMp(hp, mp);
|
||||
spawnBoss(zaken);
|
||||
|
@ -89,7 +89,7 @@ public class Q211_TrialOfTheChallenger extends Quest
|
||||
st.set("cond", "1");
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange35", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange35", false))
|
||||
{
|
||||
htmltext = "30644-05a.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_35.get(player.getClassId().getId()));
|
||||
|
@ -85,7 +85,7 @@ public class Q212_TrialOfDuty extends Quest
|
||||
st.set("cond", "1");
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange35", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange35", false))
|
||||
{
|
||||
htmltext = "30109-04a.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_35.get(player.getClassId().getId()));
|
||||
|
@ -107,7 +107,7 @@ public class Q213_TrialOfTheSeeker extends Quest
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
st.giveItems(DUFNER_LETTER, 1);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange35", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange35", false))
|
||||
{
|
||||
htmltext = "30106-05a.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_35.get(player.getClassId().getId()));
|
||||
|
@ -135,7 +135,7 @@ public class Q214_TrialOfTheScholar extends Quest
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
st.giveItems(MIRIEN_SIGIL_1, 1);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange35", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange35", false))
|
||||
{
|
||||
htmltext = "30461-04a.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_35.get(player.getClassId().getId()));
|
||||
|
@ -93,7 +93,7 @@ public class Q215_TrialOfThePilgrim extends Quest
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
st.giveItems(VOUCHER_OF_TRIAL, 1);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange35", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange35", false))
|
||||
{
|
||||
htmltext = "30648-04a.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_35.get(player.getClassId().getId()));
|
||||
|
@ -110,7 +110,7 @@ public class Q216_TrialOfTheGuildsman extends Quest
|
||||
st.takeItems(57, 2000);
|
||||
st.giveItems(VALKON_RECOMMENDATION, 1);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange35", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange35", false))
|
||||
{
|
||||
htmltext = "30103-06d.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_35.get(player.getClassId().getId()));
|
||||
|
@ -123,7 +123,7 @@ public class Q217_TestimonyOfTrust extends Quest
|
||||
st.giveItems(LETTER_TO_ELF, 1);
|
||||
st.giveItems(LETTER_TO_DARK_ELF, 1);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange37", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange37", false))
|
||||
{
|
||||
htmltext = "30191-04a.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_37.get(player.getRace().ordinal()));
|
||||
|
@ -108,7 +108,7 @@ public class Q218_TestimonyOfLife extends Quest
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
st.giveItems(CARDIEN_LETTER, 1);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange37", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange37", false))
|
||||
{
|
||||
htmltext = "30460-04a.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_37.get(player.getRace().ordinal()));
|
||||
|
@ -138,7 +138,7 @@ public class Q219_TestimonyOfFate extends Quest
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
st.giveItems(KAIRA_LETTER, 1);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange37", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange37", false))
|
||||
{
|
||||
htmltext = "30476-05a.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_37.get(player.getRace().ordinal()));
|
||||
|
@ -136,7 +136,7 @@ public class Q220_TestimonyOfGlory extends Quest
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
st.giveItems(VOKIAN_ORDER_1, 1);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange37", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange37", false))
|
||||
{
|
||||
htmltext = "30514-05a.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_37.get(player.getRace().ordinal()));
|
||||
|
@ -140,7 +140,7 @@ public class Q221_TestimonyOfProsperity extends Quest
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
st.giveItems(RING_OF_TESTIMONY_1, 1);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange37", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange37", false))
|
||||
{
|
||||
htmltext = "30104-04e.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_37.get(player.getRace().ordinal()));
|
||||
|
@ -114,7 +114,7 @@ public class Q222_TestOfTheDuelist extends Quest
|
||||
st.giveItems(ORDER_OREN, 1);
|
||||
st.giveItems(ORDER_ADEN, 1);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange39", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange39", false))
|
||||
{
|
||||
htmltext = "30623-07a.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_39.get(player.getClassId().getId()));
|
||||
|
@ -103,7 +103,7 @@ public class Q223_TestOfTheChampion extends Quest
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
st.giveItems(ASCALON_LETTER_1, 1);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange39", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange39", false))
|
||||
{
|
||||
htmltext = "30624-06a.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_39.get(player.getClassId().getId()));
|
||||
|
@ -112,7 +112,7 @@ public class Q224_TestOfSagittarius extends Quest
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
st.giveItems(BERNARD_INTRODUCTION, 1);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange39", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange39", false))
|
||||
{
|
||||
htmltext = "30702-04a.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_39.get(player.getClassId().getId()));
|
||||
|
@ -108,7 +108,7 @@ public class Q225_TestOfTheSearcher extends Quest
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
st.giveItems(LUTHER_LETTER, 1);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange39", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange39", false))
|
||||
{
|
||||
htmltext = "30690-05a.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_39.get(player.getClassId().getId()));
|
||||
|
@ -99,7 +99,7 @@ public class Q226_TestOfTheHealer extends Quest
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
st.giveItems(REPORT_OF_PERRIN, 1);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange39", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange39", false))
|
||||
{
|
||||
htmltext = "30473-04a.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_39.get(player.getClassId().getId()));
|
||||
|
@ -122,7 +122,7 @@ public class Q227_TestOfTheReformer extends Quest
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
st.giveItems(BOOK_OF_REFORM, 1);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange39", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange39", false))
|
||||
{
|
||||
htmltext = "30118-04b.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_39.get(player.getClassId().getId()));
|
||||
|
@ -111,7 +111,7 @@ public class Q228_TestOfMagus extends Quest
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
st.giveItems(RUKAL_LETTER, 1);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange39", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange39", false))
|
||||
{
|
||||
htmltext = "30629-04a.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_39.get(player.getClassId().getId()));
|
||||
|
@ -125,7 +125,7 @@ public class Q229_TestOfWitchcraft extends Quest
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
st.giveItems(ORIM_DIAGRAM, 1);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange39", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange39", false))
|
||||
{
|
||||
htmltext = "30630-08a.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_39.get(player.getClassId().getId()));
|
||||
|
@ -202,7 +202,7 @@ public class Q230_TestOfTheSummoner extends Quest
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
st.giveItems(GALATEA_LETTER, 1);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange39", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange39", false))
|
||||
{
|
||||
htmltext = "30634-08a.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_39.get(player.getClassId().getId()));
|
||||
|
@ -96,7 +96,7 @@ public class Q231_TestOfTheMaestro extends Quest
|
||||
st.set("cond", "1");
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange39", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange39", false))
|
||||
{
|
||||
htmltext = "30531-04a.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_39.get(player.getClassId().getId()));
|
||||
|
@ -105,7 +105,7 @@ public class Q232_TestOfTheLord extends Quest
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
st.giveItems(ORDEAL_NECKLACE, 1);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange39", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange39", false))
|
||||
{
|
||||
htmltext = "30565-05b.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_39.get(player.getClassId().getId()));
|
||||
|
@ -120,7 +120,7 @@ public class Q233_TestOfTheWarSpirit extends Quest
|
||||
st.set("cond", "1");
|
||||
st.playSound(QuestState.SOUND_ACCEPT);
|
||||
|
||||
if (!player.getVariables().getBool("secondClassChange39", false))
|
||||
if (!player.getVariables().getBoolean("secondClassChange39", false))
|
||||
{
|
||||
htmltext = "30510-05e.htm";
|
||||
st.giveItems(DIMENSIONAL_DIAMOND, DF_REWARD_39.get(player.getClassId().getId()));
|
||||
|
@ -0,0 +1,125 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package org.l2jmobius.commons.util;
|
||||
|
||||
import java.time.Duration;
|
||||
import java.time.temporal.ChronoUnit;
|
||||
|
||||
/**
|
||||
* @author UnAfraid
|
||||
*/
|
||||
public class TimeUtil
|
||||
{
|
||||
private static int findIndexOfNonDigit(CharSequence text)
|
||||
{
|
||||
for (int i = 0; i < text.length(); i++)
|
||||
{
|
||||
if (Character.isDigit(text.charAt(i)))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
return i;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
/**
|
||||
* Parses patterns like:
|
||||
* <ul>
|
||||
* <li>1min or 10mins</li>
|
||||
* <li>1day or 10days</li>
|
||||
* <li>1week or 4weeks</li>
|
||||
* <li>1month or 12months</li>
|
||||
* <li>1year or 5years</li>
|
||||
* </ul>
|
||||
* @param datePattern
|
||||
* @return {@link Duration} object converted by the date pattern specified.
|
||||
* @throws IllegalStateException when malformed pattern specified.
|
||||
*/
|
||||
public static Duration parseDuration(String datePattern)
|
||||
{
|
||||
final int index = findIndexOfNonDigit(datePattern);
|
||||
if (index == -1)
|
||||
{
|
||||
throw new IllegalStateException("Incorrect time format given: " + datePattern);
|
||||
}
|
||||
try
|
||||
{
|
||||
final int val = Integer.parseInt(datePattern.substring(0, index));
|
||||
final String type = datePattern.substring(index);
|
||||
final ChronoUnit unit;
|
||||
switch (type.toLowerCase())
|
||||
{
|
||||
case "sec":
|
||||
case "secs":
|
||||
{
|
||||
unit = ChronoUnit.SECONDS;
|
||||
break;
|
||||
}
|
||||
case "min":
|
||||
case "mins":
|
||||
{
|
||||
unit = ChronoUnit.MINUTES;
|
||||
break;
|
||||
}
|
||||
case "hour":
|
||||
case "hours":
|
||||
{
|
||||
unit = ChronoUnit.HOURS;
|
||||
break;
|
||||
}
|
||||
case "day":
|
||||
case "days":
|
||||
{
|
||||
unit = ChronoUnit.DAYS;
|
||||
break;
|
||||
}
|
||||
case "week":
|
||||
case "weeks":
|
||||
{
|
||||
unit = ChronoUnit.WEEKS;
|
||||
break;
|
||||
}
|
||||
case "month":
|
||||
case "months":
|
||||
{
|
||||
unit = ChronoUnit.MONTHS;
|
||||
break;
|
||||
}
|
||||
case "year":
|
||||
case "years":
|
||||
{
|
||||
unit = ChronoUnit.YEARS;
|
||||
break;
|
||||
}
|
||||
default:
|
||||
{
|
||||
unit = ChronoUnit.valueOf(type);
|
||||
if (unit == null)
|
||||
{
|
||||
throw new IllegalStateException("Incorrect format: " + type + " !!");
|
||||
}
|
||||
}
|
||||
}
|
||||
return Duration.of(val, unit);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalStateException("Incorrect time format given: " + datePattern + " val: " + datePattern.substring(0, index));
|
||||
}
|
||||
}
|
||||
}
|
@ -41,7 +41,6 @@ import org.l2jmobius.gameserver.cache.CrestCache;
|
||||
import org.l2jmobius.gameserver.cache.HtmCache;
|
||||
import org.l2jmobius.gameserver.communitybbs.Manager.ForumsBBSManager;
|
||||
import org.l2jmobius.gameserver.datatables.BufferTable;
|
||||
import org.l2jmobius.gameserver.datatables.GmListTable;
|
||||
import org.l2jmobius.gameserver.datatables.HeroSkillTable;
|
||||
import org.l2jmobius.gameserver.datatables.NobleSkillTable;
|
||||
import org.l2jmobius.gameserver.datatables.OfflineTradeTable;
|
||||
@ -55,8 +54,6 @@ import org.l2jmobius.gameserver.datatables.csv.NpcWalkerRoutesTable;
|
||||
import org.l2jmobius.gameserver.datatables.csv.RecipeTable;
|
||||
import org.l2jmobius.gameserver.datatables.csv.StaticObjects;
|
||||
import org.l2jmobius.gameserver.datatables.csv.SummonItemsData;
|
||||
import org.l2jmobius.gameserver.datatables.sql.AccessLevels;
|
||||
import org.l2jmobius.gameserver.datatables.sql.AdminCommandAccessRights;
|
||||
import org.l2jmobius.gameserver.datatables.sql.ArmorSetsTable;
|
||||
import org.l2jmobius.gameserver.datatables.sql.CharNameTable;
|
||||
import org.l2jmobius.gameserver.datatables.sql.CharTemplateTable;
|
||||
@ -71,6 +68,7 @@ import org.l2jmobius.gameserver.datatables.sql.SkillSpellbookTable;
|
||||
import org.l2jmobius.gameserver.datatables.sql.SkillTreeTable;
|
||||
import org.l2jmobius.gameserver.datatables.sql.SpawnTable;
|
||||
import org.l2jmobius.gameserver.datatables.sql.TeleportLocationTable;
|
||||
import org.l2jmobius.gameserver.datatables.xml.AdminData;
|
||||
import org.l2jmobius.gameserver.datatables.xml.AugmentationData;
|
||||
import org.l2jmobius.gameserver.datatables.xml.ExperienceData;
|
||||
import org.l2jmobius.gameserver.datatables.xml.FenceData;
|
||||
@ -387,9 +385,7 @@ public class GameServer
|
||||
Hero.getInstance();
|
||||
|
||||
Util.printSection("Access Levels");
|
||||
AccessLevels.getInstance();
|
||||
AdminCommandAccessRights.getInstance();
|
||||
GmListTable.getInstance();
|
||||
AdminData.getInstance();
|
||||
|
||||
Util.printSection("Handlers");
|
||||
ItemHandler.getInstance();
|
||||
|
@ -31,9 +31,9 @@ import org.l2jmobius.Config;
|
||||
import org.l2jmobius.gameserver.idfactory.IdFactory;
|
||||
import org.l2jmobius.gameserver.instancemanager.ClanHallManager;
|
||||
import org.l2jmobius.gameserver.model.Location;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.DoorInstance;
|
||||
import org.l2jmobius.gameserver.model.entity.ClanHall;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.creatures.CreatureTemplate;
|
||||
|
||||
public class DoorTable
|
||||
|
@ -28,7 +28,7 @@ import java.util.StringTokenizer;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.item.Henna;
|
||||
|
||||
/**
|
||||
|
@ -25,8 +25,8 @@ import java.util.Map;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import org.l2jmobius.commons.database.DatabaseFactory;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.base.ClassId;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.creatures.PlayerTemplate;
|
||||
|
||||
/**
|
||||
|
@ -25,8 +25,8 @@ import java.util.logging.Logger;
|
||||
|
||||
import org.l2jmobius.commons.database.DatabaseFactory;
|
||||
import org.l2jmobius.gameserver.datatables.csv.HennaTable;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.HelperBuff;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
/**
|
||||
* This class represents the Newbie Helper Buff list. Author: Ayor
|
||||
|
@ -33,10 +33,10 @@ import org.l2jmobius.gameserver.model.DropCategory;
|
||||
import org.l2jmobius.gameserver.model.DropData;
|
||||
import org.l2jmobius.gameserver.model.MinionData;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.base.ClassId;
|
||||
import org.l2jmobius.gameserver.skills.BaseStats;
|
||||
import org.l2jmobius.gameserver.skills.Stats;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.creatures.NpcTemplate;
|
||||
|
||||
/**
|
||||
@ -623,7 +623,7 @@ public class NpcTable
|
||||
String name = "";
|
||||
String values = "";
|
||||
|
||||
final NpcTemplate old = getTemplate(npc.getInteger("npcId"));
|
||||
final NpcTemplate old = getTemplate(npc.getInt("npcId"));
|
||||
|
||||
for (Object obj : set.keySet())
|
||||
{
|
||||
@ -649,7 +649,7 @@ public class NpcTable
|
||||
{
|
||||
statement = con.prepareStatement("UPDATE npc SET " + values + " WHERE id = ?");
|
||||
}
|
||||
statement.setInt(1, npc.getInteger("npcId"));
|
||||
statement.setInt(1, npc.getInt("npcId"));
|
||||
statement.execute();
|
||||
statement.close();
|
||||
}
|
||||
|
@ -34,6 +34,7 @@ import org.l2jmobius.Config;
|
||||
import org.l2jmobius.gameserver.datatables.SkillTable;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.Skill.SkillType;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.model.base.Race;
|
||||
import org.l2jmobius.gameserver.skills.Env;
|
||||
@ -71,7 +72,6 @@ import org.l2jmobius.gameserver.skills.funcs.Lambda;
|
||||
import org.l2jmobius.gameserver.skills.funcs.LambdaCalc;
|
||||
import org.l2jmobius.gameserver.skills.funcs.LambdaConst;
|
||||
import org.l2jmobius.gameserver.skills.funcs.LambdaStats;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.item.ArmorType;
|
||||
import org.l2jmobius.gameserver.templates.item.Item;
|
||||
import org.l2jmobius.gameserver.templates.item.Weapon;
|
||||
|
@ -26,7 +26,7 @@ import java.util.logging.Level;
|
||||
import org.w3c.dom.Document;
|
||||
import org.w3c.dom.Node;
|
||||
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.item.Armor;
|
||||
import org.l2jmobius.gameserver.templates.item.ArmorType;
|
||||
import org.l2jmobius.gameserver.templates.item.EtcItem;
|
||||
@ -408,7 +408,7 @@ final class DocumentItem extends DocumentBase
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new Error("Unknown item type for " + _currentItem.set.getInteger("item_id") + " " + _currentItem.type);
|
||||
throw new Error("Unknown item type for " + _currentItem.set.getInt("item_id") + " " + _currentItem.type);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -26,8 +26,8 @@ import org.w3c.dom.Node;
|
||||
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.Skill.SkillType;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.skills.conditions.Condition;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
/**
|
||||
* @author mkizub
|
||||
|
@ -16,7 +16,7 @@
|
||||
*/
|
||||
package org.l2jmobius.gameserver.engines;
|
||||
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.item.Item;
|
||||
|
||||
/**
|
||||
|
@ -20,7 +20,7 @@ import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
|
||||
/**
|
||||
* @author Mobius
|
||||
|
@ -28,8 +28,8 @@ import java.util.logging.Logger;
|
||||
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.gameserver.idfactory.IdFactory;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.BoatInstance;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.creatures.CreatureTemplate;
|
||||
|
||||
public class BoatManager
|
||||
|
@ -16,11 +16,9 @@
|
||||
*/
|
||||
package org.l2jmobius.gameserver.instancemanager;
|
||||
|
||||
import org.l2jmobius.gameserver.datatables.GmListTable;
|
||||
import org.l2jmobius.gameserver.datatables.sql.AccessLevels;
|
||||
import org.l2jmobius.gameserver.datatables.sql.AdminCommandAccessRights;
|
||||
import org.l2jmobius.gameserver.datatables.sql.ClanTable;
|
||||
import org.l2jmobius.gameserver.datatables.sql.HelperBuffTable;
|
||||
import org.l2jmobius.gameserver.datatables.xml.AdminData;
|
||||
import org.l2jmobius.gameserver.datatables.xml.AugmentationData;
|
||||
import org.l2jmobius.gameserver.datatables.xml.ExperienceData;
|
||||
|
||||
@ -28,9 +26,7 @@ public class DatatablesManager
|
||||
{
|
||||
public static void reloadAll()
|
||||
{
|
||||
AccessLevels.reload();
|
||||
AdminCommandAccessRights.reload();
|
||||
GmListTable.reload();
|
||||
AdminData.getInstance().load();
|
||||
AugmentationData.reload();
|
||||
ClanTable.reload();
|
||||
HelperBuffTable.reload();
|
||||
|
@ -61,14 +61,14 @@ public class GlobalVariablesManager extends AbstractVariables
|
||||
}
|
||||
catch (SQLException e)
|
||||
{
|
||||
LOGGER.log(Level.WARNING, getClass().getSimpleName() + ": Couldn't restore global variables");
|
||||
LOGGER.warning(getClass().getSimpleName() + ": Couldn't restore global variables.");
|
||||
return false;
|
||||
}
|
||||
finally
|
||||
{
|
||||
compareAndSetChanges(true, false);
|
||||
}
|
||||
LOGGER.log(Level.INFO, getClass().getSimpleName() + ": Loaded " + getSet().size() + " variables.");
|
||||
LOGGER.info(getClass().getSimpleName() + ": Loaded " + getSet().size() + " variables.");
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -106,7 +106,23 @@ public class GlobalVariablesManager extends AbstractVariables
|
||||
{
|
||||
compareAndSetChanges(true, false);
|
||||
}
|
||||
LOGGER.log(Level.INFO, getClass().getSimpleName() + ": Stored " + getSet().size() + " variables.");
|
||||
LOGGER.info(getClass().getSimpleName() + ": Stored " + getSet().size() + " variables.");
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean deleteMe()
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
Statement del = con.createStatement())
|
||||
{
|
||||
del.execute(DELETE_QUERY);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
LOGGER.log(Level.WARNING, getClass().getSimpleName() + ": Couldn't delete global variables to database.", e);
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -29,11 +29,11 @@ import java.util.logging.Logger;
|
||||
|
||||
import org.l2jmobius.commons.database.DatabaseFactory;
|
||||
import org.l2jmobius.gameserver.datatables.sql.NpcTable;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.GrandBossInstance;
|
||||
import org.l2jmobius.gameserver.model.zone.type.BossZone;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.creatures.NpcTemplate;
|
||||
|
||||
/**
|
||||
|
@ -25,7 +25,7 @@ import java.util.Map;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.gameserver.datatables.GmListTable;
|
||||
import org.l2jmobius.gameserver.datatables.xml.AdminData;
|
||||
import org.l2jmobius.gameserver.idfactory.IdFactory;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
@ -592,7 +592,7 @@ public class PetitionManager
|
||||
|
||||
// Notify all GMs that a new petition has been submitted.
|
||||
String msgContent = petitioner.getName() + " has submitted a new petition."; // (ID: " + newPetitionId + ").";
|
||||
GmListTable.broadcastToGMs(new CreatureSay(petitioner.getObjectId(), 17, "Petition System", msgContent));
|
||||
AdminData.broadcastToGMs(new CreatureSay(petitioner.getObjectId(), 17, "Petition System", msgContent));
|
||||
|
||||
return newPetitionId;
|
||||
}
|
||||
|
@ -31,15 +31,15 @@ import org.l2jmobius.Config;
|
||||
import org.l2jmobius.commons.concurrent.ThreadPool;
|
||||
import org.l2jmobius.commons.database.DatabaseFactory;
|
||||
import org.l2jmobius.commons.util.Rnd;
|
||||
import org.l2jmobius.gameserver.datatables.GmListTable;
|
||||
import org.l2jmobius.gameserver.datatables.sql.NpcTable;
|
||||
import org.l2jmobius.gameserver.datatables.sql.SpawnTable;
|
||||
import org.l2jmobius.gameserver.datatables.xml.AdminData;
|
||||
import org.l2jmobius.gameserver.enums.RaidBossStatus;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.RaidBossInstance;
|
||||
import org.l2jmobius.gameserver.model.entity.Announcements;
|
||||
import org.l2jmobius.gameserver.model.spawn.Spawn;
|
||||
import org.l2jmobius.gameserver.skills.Stats;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.creatures.NpcTemplate;
|
||||
|
||||
/**
|
||||
@ -150,7 +150,7 @@ public class RaidBossSpawnManager
|
||||
|
||||
_storedInfo.put(bossId, info);
|
||||
|
||||
GmListTable.broadcastMessageToGMs("Spawning Raid Boss " + raidboss.getName() + ".");
|
||||
AdminData.broadcastMessageToGMs("Spawning Raid Boss " + raidboss.getName() + ".");
|
||||
if (Config.ANNOUNCE_TO_ALL_SPAWN_RB)
|
||||
{
|
||||
Announcements.getInstance().announceToAll("Raid boss " + raidboss.getName() + " spawned in world.");
|
||||
@ -509,7 +509,7 @@ public class RaidBossSpawnManager
|
||||
|
||||
_storedInfo.put(raidboss.getNpcId(), info);
|
||||
|
||||
GmListTable.broadcastMessageToGMs("Spawning Raid Boss " + raidboss.getName());
|
||||
AdminData.broadcastMessageToGMs("Spawning Raid Boss " + raidboss.getName());
|
||||
|
||||
_bosses.put(raidboss.getNpcId(), raidboss);
|
||||
}
|
||||
|
@ -17,7 +17,6 @@
|
||||
package org.l2jmobius.gameserver.model;
|
||||
|
||||
import org.l2jmobius.commons.util.Rnd;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
/**
|
||||
* @author kombat
|
||||
@ -95,7 +94,7 @@ public class ChanceCondition
|
||||
try
|
||||
{
|
||||
final TriggerType trigger = set.getEnum("chanceType", TriggerType.class);
|
||||
final int chance = set.getInteger("activationChance", 0);
|
||||
final int chance = set.getInt("activationChance", 0);
|
||||
if ((trigger != null) && (chance > 0))
|
||||
{
|
||||
return new ChanceCondition(trigger, chance);
|
||||
|
@ -16,8 +16,6 @@
|
||||
*/
|
||||
package org.l2jmobius.gameserver.model;
|
||||
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
/**
|
||||
* @author Rayan RPG
|
||||
* @since 927
|
||||
@ -139,12 +137,12 @@ public class NpcWalkerNode
|
||||
*/
|
||||
public NpcWalkerNode(StatsSet set)
|
||||
{
|
||||
_npcId = set.getInteger("npc_id");
|
||||
_npcId = set.getInt("npc_id");
|
||||
_movePoint = set.getString("move_point");
|
||||
_chatText = set.getString("chatText");
|
||||
_moveX = set.getInteger("move_x");
|
||||
_moveX = set.getInteger("move_y");
|
||||
_moveX = set.getInteger("move_z");
|
||||
_delay = set.getInteger("delay");
|
||||
_moveX = set.getInt("move_x");
|
||||
_moveX = set.getInt("move_y");
|
||||
_moveX = set.getInt("move_z");
|
||||
_delay = set.getInt("delay");
|
||||
}
|
||||
}
|
||||
|
@ -72,7 +72,6 @@ import org.l2jmobius.gameserver.skills.handlers.SkillSeed;
|
||||
import org.l2jmobius.gameserver.skills.handlers.SkillSignet;
|
||||
import org.l2jmobius.gameserver.skills.handlers.SkillSignetCasttime;
|
||||
import org.l2jmobius.gameserver.skills.handlers.SkillSummon;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.util.Util;
|
||||
|
||||
public abstract class Skill
|
||||
@ -515,84 +514,84 @@ public abstract class Skill
|
||||
|
||||
protected Skill(StatsSet set)
|
||||
{
|
||||
_id = set.getInteger("skill_id", 0);
|
||||
_level = set.getInteger("level", 1);
|
||||
_id = set.getInt("skill_id", 0);
|
||||
_level = set.getInt("level", 1);
|
||||
|
||||
_advancedFlag = set.getBool("advancedFlag", false);
|
||||
_advancedMultiplier = set.getInteger("advancedMultiplier", 1);
|
||||
_advancedFlag = set.getBoolean("advancedFlag", false);
|
||||
_advancedMultiplier = set.getInt("advancedMultiplier", 1);
|
||||
|
||||
_displayId = set.getInteger("displayId", _id);
|
||||
_displayId = set.getInt("displayId", _id);
|
||||
_name = set.getString("name");
|
||||
_operateType = set.getEnum("operateType", SkillOpType.class);
|
||||
_magic = set.getBool("isMagic", false);
|
||||
_staticReuse = set.getBool("staticReuse", false);
|
||||
_staticHitTime = set.getBool("staticHitTime", false);
|
||||
_ispotion = set.getBool("isPotion", false);
|
||||
_mpConsume = set.getInteger("mpConsume", 0);
|
||||
_mpInitialConsume = set.getInteger("mpInitialConsume", 0);
|
||||
_hpConsume = set.getInteger("hpConsume", 0);
|
||||
_itemConsume = set.getInteger("itemConsumeCount", 0);
|
||||
_itemConsumeId = set.getInteger("itemConsumeId", 0);
|
||||
_itemConsumeOT = set.getInteger("itemConsumeCountOT", 0);
|
||||
_itemConsumeIdOT = set.getInteger("itemConsumeIdOT", 0);
|
||||
_itemConsumeTime = set.getInteger("itemConsumeTime", 0);
|
||||
_itemConsumeSteps = set.getInteger("itemConsumeSteps", 0);
|
||||
_summonTotalLifeTime = set.getInteger("summonTotalLifeTime", 1200000); // 20 minutes default
|
||||
_summonTimeLostIdle = set.getInteger("summonTimeLostIdle", 0);
|
||||
_summonTimeLostActive = set.getInteger("summonTimeLostActive", 0);
|
||||
_magic = set.getBoolean("isMagic", false);
|
||||
_staticReuse = set.getBoolean("staticReuse", false);
|
||||
_staticHitTime = set.getBoolean("staticHitTime", false);
|
||||
_ispotion = set.getBoolean("isPotion", false);
|
||||
_mpConsume = set.getInt("mpConsume", 0);
|
||||
_mpInitialConsume = set.getInt("mpInitialConsume", 0);
|
||||
_hpConsume = set.getInt("hpConsume", 0);
|
||||
_itemConsume = set.getInt("itemConsumeCount", 0);
|
||||
_itemConsumeId = set.getInt("itemConsumeId", 0);
|
||||
_itemConsumeOT = set.getInt("itemConsumeCountOT", 0);
|
||||
_itemConsumeIdOT = set.getInt("itemConsumeIdOT", 0);
|
||||
_itemConsumeTime = set.getInt("itemConsumeTime", 0);
|
||||
_itemConsumeSteps = set.getInt("itemConsumeSteps", 0);
|
||||
_summonTotalLifeTime = set.getInt("summonTotalLifeTime", 1200000); // 20 minutes default
|
||||
_summonTimeLostIdle = set.getInt("summonTimeLostIdle", 0);
|
||||
_summonTimeLostActive = set.getInt("summonTimeLostActive", 0);
|
||||
|
||||
_castRange = set.getInteger("castRange", 0);
|
||||
_effectRange = set.getInteger("effectRange", -1);
|
||||
_castRange = set.getInt("castRange", 0);
|
||||
_effectRange = set.getInt("effectRange", -1);
|
||||
|
||||
_hitTime = set.getInteger("hitTime", 0);
|
||||
_coolTime = set.getInteger("coolTime", 0);
|
||||
_hitTime = set.getInt("hitTime", 0);
|
||||
_coolTime = set.getInt("coolTime", 0);
|
||||
// _skillInterruptTime = set.getInteger("hitTime", _hitTime / 2);
|
||||
_reuseDelay = set.getInteger("reuseDelay", 0);
|
||||
_buffDuration = set.getInteger("buffDuration", 0);
|
||||
_reuseDelay = set.getInt("reuseDelay", 0);
|
||||
_buffDuration = set.getInt("buffDuration", 0);
|
||||
|
||||
_skillRadius = set.getInteger("skillRadius", 80);
|
||||
_skillRadius = set.getInt("skillRadius", 80);
|
||||
|
||||
_targetType = set.getEnum("target", SkillTargetType.class);
|
||||
_power = set.getFloat("power", 0.f);
|
||||
_effectPoints = set.getInteger("effectPoints", 0);
|
||||
_effectPoints = set.getInt("effectPoints", 0);
|
||||
_negateSkillTypes = set.getString("negateSkillTypes", "").split(" ");
|
||||
_negateEffectTypes = set.getString("negateEffectTypes", "").split(" ");
|
||||
_negatePower = set.getFloat("negatePower", 0.f);
|
||||
_negateId = set.getInteger("negateId", 0);
|
||||
_magicLevel = set.getInteger("magicLvl", SkillTreeTable.getInstance().getMinSkillLevel(_id, _level));
|
||||
_levelDepend = set.getInteger("lvlDepend", 0);
|
||||
_negateId = set.getInt("negateId", 0);
|
||||
_magicLevel = set.getInt("magicLvl", SkillTreeTable.getInstance().getMinSkillLevel(_id, _level));
|
||||
_levelDepend = set.getInt("lvlDepend", 0);
|
||||
_stat = set.getEnum("stat", Stats.class, null);
|
||||
|
||||
_skillType = set.getEnum("skillType", SkillType.class);
|
||||
_effectType = set.getEnum("effectType", SkillType.class, null);
|
||||
_effectPower = set.getInteger("effectPower", 0);
|
||||
_effectId = set.getInteger("effectId", 0);
|
||||
_effectLvl = set.getInteger("effectLevel", 0);
|
||||
_effectPower = set.getInt("effectPower", 0);
|
||||
_effectId = set.getInt("effectId", 0);
|
||||
_effectLvl = set.getInt("effectLevel", 0);
|
||||
|
||||
_element = set.getInteger("element", 0);
|
||||
_element = set.getInt("element", 0);
|
||||
_saveVs = set.getEnum("saveVs", BaseStats.class, null);
|
||||
|
||||
_condition = set.getInteger("condition", 0);
|
||||
_conditionValue = set.getInteger("conditionValue", 0);
|
||||
_overhit = set.getBool("overHit", false);
|
||||
_isSuicideAttack = set.getBool("isSuicideAttack", false);
|
||||
_weaponsAllowed = set.getInteger("weaponsAllowed", 0);
|
||||
_armorsAllowed = set.getInteger("armorsAllowed", 0);
|
||||
_condition = set.getInt("condition", 0);
|
||||
_conditionValue = set.getInt("conditionValue", 0);
|
||||
_overhit = set.getBoolean("overHit", false);
|
||||
_isSuicideAttack = set.getBoolean("isSuicideAttack", false);
|
||||
_weaponsAllowed = set.getInt("weaponsAllowed", 0);
|
||||
_armorsAllowed = set.getInt("armorsAllowed", 0);
|
||||
|
||||
_addCrossLearn = set.getInteger("addCrossLearn", 1000);
|
||||
_addCrossLearn = set.getInt("addCrossLearn", 1000);
|
||||
_mulCrossLearn = set.getFloat("mulCrossLearn", 2.f);
|
||||
_mulCrossLearnRace = set.getFloat("mulCrossLearnRace", 2.f);
|
||||
_mulCrossLearnProf = set.getFloat("mulCrossLearnProf", 3.f);
|
||||
_minPledgeClass = set.getInteger("minPledgeClass", 0);
|
||||
_isOffensive = set.getBool("offensive", isSkillTypeOffensive());
|
||||
_numCharges = set.getInteger("num_charges", 0);
|
||||
_triggeredId = set.getInteger("triggeredId", 0);
|
||||
_triggeredLevel = set.getInteger("triggeredLevel", 0);
|
||||
_minPledgeClass = set.getInt("minPledgeClass", 0);
|
||||
_isOffensive = set.getBoolean("offensive", isSkillTypeOffensive());
|
||||
_numCharges = set.getInt("num_charges", 0);
|
||||
_triggeredId = set.getInt("triggeredId", 0);
|
||||
_triggeredLevel = set.getInt("triggeredLevel", 0);
|
||||
|
||||
_bestowed = set.getBool("bestowed", false);
|
||||
_bestowed = set.getBoolean("bestowed", false);
|
||||
|
||||
_targetConsume = set.getInteger("targetConsumeCount", 0);
|
||||
_targetConsumeId = set.getInteger("targetConsumeId", 0);
|
||||
_targetConsume = set.getInt("targetConsumeCount", 0);
|
||||
_targetConsumeId = set.getInt("targetConsumeId", 0);
|
||||
|
||||
if (_operateType == SkillOpType.OP_CHANCE)
|
||||
{
|
||||
@ -601,22 +600,22 @@ public abstract class Skill
|
||||
|
||||
_isHeroSkill = HeroSkillTable.isHeroSkill(_id);
|
||||
|
||||
_baseCritRate = set.getInteger("baseCritRate", (_skillType == SkillType.PDAM) || (_skillType == SkillType.BLOW) ? 0 : -1);
|
||||
_lethalEffect1 = set.getInteger("lethal1", 0);
|
||||
_lethalEffect2 = set.getInteger("lethal2", 0);
|
||||
_baseCritRate = set.getInt("baseCritRate", (_skillType == SkillType.PDAM) || (_skillType == SkillType.BLOW) ? 0 : -1);
|
||||
_lethalEffect1 = set.getInt("lethal1", 0);
|
||||
_lethalEffect2 = set.getInt("lethal2", 0);
|
||||
|
||||
_directHpDmg = set.getBool("dmgDirectlyToHp", false);
|
||||
_isDance = set.getBool("isDance", false);
|
||||
_nextDanceCost = set.getInteger("nextDanceCost", 0);
|
||||
_directHpDmg = set.getBoolean("dmgDirectlyToHp", false);
|
||||
_isDance = set.getBoolean("isDance", false);
|
||||
_nextDanceCost = set.getInt("nextDanceCost", 0);
|
||||
_sSBoost = set.getFloat("SSBoost", 0.f);
|
||||
_aggroPoints = set.getInteger("aggroPoints", 0);
|
||||
_aggroPoints = set.getInt("aggroPoints", 0);
|
||||
|
||||
_pvpMulti = set.getFloat("pvpMulti", 1.f);
|
||||
|
||||
_nextActionIsAttack = set.getBool("nextActionAttack", false);
|
||||
_nextActionIsAttack = set.getBoolean("nextActionAttack", false);
|
||||
|
||||
_minChance = set.getInteger("minChance", 1);
|
||||
_maxChance = set.getInteger("maxChance", 99);
|
||||
_minChance = set.getInt("minChance", 1);
|
||||
_maxChance = set.getInt("maxChance", 99);
|
||||
|
||||
String canLearn = set.getString("canLearn", null);
|
||||
if (canLearn == null)
|
||||
@ -665,9 +664,9 @@ public abstract class Skill
|
||||
}
|
||||
}
|
||||
|
||||
_singleEffect = set.getBool("singleEffect", false);
|
||||
_singleEffect = set.getBoolean("singleEffect", false);
|
||||
|
||||
_isDebuff = set.getBool("isDebuff", false);
|
||||
_isDebuff = set.getBoolean("isDebuff", false);
|
||||
}
|
||||
|
||||
public abstract void useSkill(Creature caster, WorldObject[] targets);
|
||||
|
@ -0,0 +1,978 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package org.l2jmobius.gameserver.model;
|
||||
|
||||
import java.time.Duration;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
import java.util.function.Supplier;
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import org.l2jmobius.commons.util.TimeUtil;
|
||||
import org.l2jmobius.gameserver.model.interfaces.IParserAdvUtils;
|
||||
import org.l2jmobius.gameserver.skills.holders.SkillHolder;
|
||||
import org.l2jmobius.gameserver.util.Util;
|
||||
|
||||
/**
|
||||
* This class is meant to hold a set of (key,value) pairs.<br>
|
||||
* They are stored as object but can be retrieved in any type wanted. As long as cast is available.<br>
|
||||
* @author mkizub
|
||||
*/
|
||||
public class StatsSet implements IParserAdvUtils
|
||||
{
|
||||
private static final Logger LOGGER = Logger.getLogger(StatsSet.class.getName());
|
||||
/** Static empty immutable map, used to avoid multiple null checks over the source. */
|
||||
public static final StatsSet EMPTY_STATSET = new StatsSet(Collections.emptyMap());
|
||||
|
||||
private final Map<String, Object> _set;
|
||||
|
||||
public StatsSet()
|
||||
{
|
||||
this(ConcurrentHashMap::new);
|
||||
}
|
||||
|
||||
public StatsSet(Supplier<Map<String, Object>> mapFactory)
|
||||
{
|
||||
this(mapFactory.get());
|
||||
}
|
||||
|
||||
public StatsSet(Map<String, Object> map)
|
||||
{
|
||||
_set = map;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the set of values
|
||||
* @return HashMap
|
||||
*/
|
||||
public Map<String, Object> getSet()
|
||||
{
|
||||
return _set;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add a set of couple values in the current set
|
||||
* @param newSet : StatsSet pointing out the list of couples to add in the current set
|
||||
*/
|
||||
public void merge(StatsSet newSet)
|
||||
{
|
||||
_set.putAll(newSet.getSet());
|
||||
}
|
||||
|
||||
/**
|
||||
* Verifies if the stat set is empty.
|
||||
* @return {@code true} if the stat set is empty, {@code false} otherwise
|
||||
*/
|
||||
public boolean isEmpty()
|
||||
{
|
||||
return _set.isEmpty();
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the boolean value associated with key.
|
||||
* @param key : String designating the key in the set
|
||||
* @return boolean : value associated to the key
|
||||
* @throws IllegalArgumentException : If value is not set or value is not boolean
|
||||
*/
|
||||
@Override
|
||||
public boolean getBoolean(String key)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("Boolean value required, but not specified");
|
||||
}
|
||||
if (val instanceof Boolean)
|
||||
{
|
||||
return ((Boolean) val).booleanValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Boolean.parseBoolean((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Boolean value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the boolean value associated with key.<br>
|
||||
* If no value is associated with key, or type of value is wrong, returns defaultValue.
|
||||
* @param key : String designating the key in the entry set
|
||||
* @return boolean : value associated to the key
|
||||
*/
|
||||
@Override
|
||||
public boolean getBoolean(String key, boolean defaultValue)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
return defaultValue;
|
||||
}
|
||||
if (val instanceof Boolean)
|
||||
{
|
||||
return ((Boolean) val).booleanValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Boolean.parseBoolean((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
return defaultValue;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public byte getByte(String key)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("Byte value required, but not specified");
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).byteValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Byte.parseByte((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Byte value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public byte getByte(String key, byte defaultValue)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
return defaultValue;
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).byteValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Byte.parseByte((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Byte value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
public short increaseByte(String key, byte increaseWith)
|
||||
{
|
||||
final byte newValue = (byte) (getByte(key) + increaseWith);
|
||||
set(key, newValue);
|
||||
return newValue;
|
||||
}
|
||||
|
||||
public short increaseByte(String key, byte defaultValue, byte increaseWith)
|
||||
{
|
||||
final byte newValue = (byte) (getByte(key, defaultValue) + increaseWith);
|
||||
set(key, newValue);
|
||||
return newValue;
|
||||
}
|
||||
|
||||
public byte[] getByteArray(String key, String splitOn)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
Objects.requireNonNull(splitOn);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("Byte value required, but not specified");
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return new byte[]
|
||||
{
|
||||
((Number) val).byteValue()
|
||||
};
|
||||
}
|
||||
int c = 0;
|
||||
final String[] vals = ((String) val).split(splitOn);
|
||||
final byte[] result = new byte[vals.length];
|
||||
for (String v : vals)
|
||||
{
|
||||
try
|
||||
{
|
||||
result[c++] = Byte.parseByte(v);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Byte value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
public List<Byte> getByteList(String key, String splitOn)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
Objects.requireNonNull(splitOn);
|
||||
final List<Byte> result = new ArrayList<>();
|
||||
for (Byte i : getByteArray(key, splitOn))
|
||||
{
|
||||
result.add(i);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public short getShort(String key)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("Short value required, but not specified");
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).shortValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Short.parseShort((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Short value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public short getShort(String key, short defaultValue)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
return defaultValue;
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).shortValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Short.parseShort((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Short value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
public short increaseShort(String key, short increaseWith)
|
||||
{
|
||||
final short newValue = (short) (getShort(key) + increaseWith);
|
||||
set(key, newValue);
|
||||
return newValue;
|
||||
}
|
||||
|
||||
public short increaseShort(String key, short defaultValue, short increaseWith)
|
||||
{
|
||||
final short newValue = (short) (getShort(key, defaultValue) + increaseWith);
|
||||
set(key, newValue);
|
||||
return newValue;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getInt(String key)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("Integer value required, but not specified: " + key + "!");
|
||||
}
|
||||
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).intValue();
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
return Integer.parseInt((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Integer value required, but found: " + val + "!");
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getInt(String key, int defaultValue)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
return defaultValue;
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).intValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Integer.parseInt((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Integer value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
public int increaseInt(String key, int increaseWith)
|
||||
{
|
||||
final int newValue = getInt(key) + increaseWith;
|
||||
set(key, newValue);
|
||||
return newValue;
|
||||
}
|
||||
|
||||
public int increaseInt(String key, int defaultValue, int increaseWith)
|
||||
{
|
||||
final int newValue = getInt(key, defaultValue) + increaseWith;
|
||||
set(key, newValue);
|
||||
return newValue;
|
||||
}
|
||||
|
||||
public int[] getIntArray(String key, String splitOn)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
Objects.requireNonNull(splitOn);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("Integer value required, but not specified");
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return new int[]
|
||||
{
|
||||
((Number) val).intValue()
|
||||
};
|
||||
}
|
||||
int c = 0;
|
||||
final String[] vals = ((String) val).split(splitOn);
|
||||
final int[] result = new int[vals.length];
|
||||
for (String v : vals)
|
||||
{
|
||||
try
|
||||
{
|
||||
result[c++] = Integer.parseInt(v);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Integer value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
public List<Integer> getIntegerList(String key, String splitOn)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
Objects.requireNonNull(splitOn);
|
||||
final List<Integer> result = new ArrayList<>();
|
||||
for (int i : getIntArray(key, splitOn))
|
||||
{
|
||||
result.add(i);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public long getLong(String key)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("Long value required, but not specified");
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).longValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Long.parseLong((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Long value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public long getLong(String key, long defaultValue)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
return defaultValue;
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).longValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Long.parseLong((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Long value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
public long increaseLong(String key, long increaseWith)
|
||||
{
|
||||
final long newValue = getLong(key) + increaseWith;
|
||||
set(key, newValue);
|
||||
return newValue;
|
||||
}
|
||||
|
||||
public long increaseLong(String key, long defaultValue, long increaseWith)
|
||||
{
|
||||
final long newValue = getLong(key, defaultValue) + increaseWith;
|
||||
set(key, newValue);
|
||||
return newValue;
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getFloat(String key)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("Float value required, but not specified");
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).floatValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Float.parseFloat((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Float value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getFloat(String key, float defaultValue)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
return defaultValue;
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).floatValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Float.parseFloat((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Float value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
public float increaseFloat(String key, float increaseWith)
|
||||
{
|
||||
final float newValue = getFloat(key) + increaseWith;
|
||||
set(key, newValue);
|
||||
return newValue;
|
||||
}
|
||||
|
||||
public float increaseFloat(String key, float defaultValue, float increaseWith)
|
||||
{
|
||||
final float newValue = getFloat(key, defaultValue) + increaseWith;
|
||||
set(key, newValue);
|
||||
return newValue;
|
||||
}
|
||||
|
||||
@Override
|
||||
public double getDouble(String key)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("Double value required, but not specified");
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).doubleValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Double.parseDouble((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Double value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public double getDouble(String key, double defaultValue)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
return defaultValue;
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).doubleValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Double.parseDouble((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Double value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
public double increaseDouble(String key, double increaseWith)
|
||||
{
|
||||
final double newValue = getDouble(key) + increaseWith;
|
||||
set(key, newValue);
|
||||
return newValue;
|
||||
}
|
||||
|
||||
public double increaseDouble(String key, double defaultValue, double increaseWith)
|
||||
{
|
||||
final double newValue = getDouble(key, defaultValue) + increaseWith;
|
||||
set(key, newValue);
|
||||
return newValue;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getString(String key)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("String value required, but not specified");
|
||||
}
|
||||
return String.valueOf(val);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getString(String key, String defaultValue)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
return defaultValue;
|
||||
}
|
||||
return String.valueOf(val);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Duration getDuration(String key)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("String value required, but not specified");
|
||||
}
|
||||
return TimeUtil.parseDuration(String.valueOf(val));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Duration getDuration(String key, Duration defaultValue)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
return defaultValue;
|
||||
}
|
||||
return TimeUtil.parseDuration(String.valueOf(val));
|
||||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings("unchecked")
|
||||
public <T extends Enum<T>> T getEnum(String key, Class<T> enumClass)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
Objects.requireNonNull(enumClass);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("Enum value of type " + enumClass.getName() + " required, but not specified");
|
||||
}
|
||||
if (enumClass.isInstance(val))
|
||||
{
|
||||
return (T) val;
|
||||
}
|
||||
try
|
||||
{
|
||||
return Enum.valueOf(enumClass, String.valueOf(val));
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Enum value of type " + enumClass.getName() + " required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings("unchecked")
|
||||
public <T extends Enum<T>> T getEnum(String key, Class<T> enumClass, T defaultValue)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
Objects.requireNonNull(enumClass);
|
||||
final Object val = _set.get(key);
|
||||
if (val == null)
|
||||
{
|
||||
return defaultValue;
|
||||
}
|
||||
if (enumClass.isInstance(val))
|
||||
{
|
||||
return (T) val;
|
||||
}
|
||||
try
|
||||
{
|
||||
return Enum.valueOf(enumClass, String.valueOf(val));
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Enum value of type " + enumClass.getName() + " required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public <A> A getObject(String name, Class<A> type)
|
||||
{
|
||||
Objects.requireNonNull(name);
|
||||
Objects.requireNonNull(type);
|
||||
final Object obj = _set.get(name);
|
||||
if ((obj == null) || !type.isAssignableFrom(obj.getClass()))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
return (A) obj;
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public <A> A getObject(String name, Class<A> type, A defaultValue)
|
||||
{
|
||||
Objects.requireNonNull(name);
|
||||
Objects.requireNonNull(type);
|
||||
final Object obj = _set.get(name);
|
||||
if ((obj == null) || !type.isAssignableFrom(obj.getClass()))
|
||||
{
|
||||
return defaultValue;
|
||||
}
|
||||
|
||||
return (A) obj;
|
||||
}
|
||||
|
||||
public SkillHolder getSkillHolder(String key)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object obj = _set.get(key);
|
||||
if ((obj == null) || !(obj instanceof SkillHolder))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
return (SkillHolder) obj;
|
||||
}
|
||||
|
||||
public Location getLocation(String key)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
final Object obj = _set.get(key);
|
||||
if ((obj == null) || !(obj instanceof Location))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
return (Location) obj;
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public <T> List<T> getList(String key, Class<T> clazz)
|
||||
{
|
||||
Objects.requireNonNull(key);
|
||||
Objects.requireNonNull(clazz);
|
||||
final Object obj = _set.get(key);
|
||||
if ((obj == null) || !(obj instanceof List<?>))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
final List<Object> originalList = (List<Object>) obj;
|
||||
if (!originalList.isEmpty() && !originalList.stream().allMatch(clazz::isInstance))
|
||||
{
|
||||
if (clazz.getSuperclass() == Enum.class)
|
||||
{
|
||||
throw new IllegalAccessError("Please use getEnumList if you want to get list of Enums!");
|
||||
}
|
||||
|
||||
// Attempt to convert the list
|
||||
final List<T> convertedList = convertList(originalList, clazz);
|
||||
if (convertedList == null)
|
||||
{
|
||||
LOGGER.log(Level.WARNING, "getList(\"" + key + "\", " + clazz.getSimpleName() + ") requested with wrong generic type: " + obj.getClass().getGenericInterfaces()[0] + "!", new ClassNotFoundException());
|
||||
return null;
|
||||
}
|
||||
|
||||
// Overwrite the existing list with proper generic type
|
||||
_set.put(key, convertedList);
|
||||
return convertedList;
|
||||
}
|
||||
return (List<T>) obj;
|
||||
}
|
||||
|
||||
public <T> List<T> getList(String key, Class<T> clazz, List<T> defaultValue)
|
||||
{
|
||||
final List<T> list = getList(key, clazz);
|
||||
return list == null ? defaultValue : list;
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public <T extends Enum<T>> List<T> getEnumList(String key, Class<T> clazz)
|
||||
{
|
||||
final Object obj = _set.get(key);
|
||||
if ((obj == null) || !(obj instanceof List<?>))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
final List<Object> originalList = (List<Object>) obj;
|
||||
if (!originalList.isEmpty() && (obj.getClass().getGenericInterfaces()[0] != clazz) && originalList.stream().allMatch(name -> Util.isEnum(name.toString(), clazz)))
|
||||
{
|
||||
final List<T> convertedList = originalList.stream().map(Object::toString).map(name -> Enum.valueOf(clazz, name)).map(clazz::cast).collect(Collectors.toList());
|
||||
|
||||
// Overwrite the existing list with proper generic type
|
||||
_set.put(key, convertedList);
|
||||
return convertedList;
|
||||
}
|
||||
return (List<T>) obj;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param <T>
|
||||
* @param originalList
|
||||
* @param clazz
|
||||
* @return
|
||||
*/
|
||||
private <T> List<T> convertList(List<Object> originalList, Class<T> clazz)
|
||||
{
|
||||
if (clazz == Integer.class)
|
||||
{
|
||||
if (originalList.stream().map(Object::toString).allMatch(Util::isInteger))
|
||||
{
|
||||
return originalList.stream().map(Object::toString).map(Integer::valueOf).map(clazz::cast).collect(Collectors.toList());
|
||||
}
|
||||
}
|
||||
else if (clazz == Float.class)
|
||||
{
|
||||
if (originalList.stream().map(Object::toString).allMatch(Util::isFloat))
|
||||
{
|
||||
return originalList.stream().map(Object::toString).map(Float::valueOf).map(clazz::cast).collect(Collectors.toList());
|
||||
}
|
||||
}
|
||||
else if (clazz == Double.class)
|
||||
{
|
||||
if (originalList.stream().map(Object::toString).allMatch(Util::isDouble))
|
||||
{
|
||||
return originalList.stream().map(Object::toString).map(Double::valueOf).map(clazz::cast).collect(Collectors.toList());
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public <K, V> Map<K, V> getMap(String key, Class<K> keyClass, Class<V> valueClass)
|
||||
{
|
||||
final Object obj = _set.get(key);
|
||||
if ((obj == null) || !(obj instanceof Map<?, ?>))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
final Map<?, ?> originalList = (Map<?, ?>) obj;
|
||||
if (!originalList.isEmpty())
|
||||
{
|
||||
if ((!originalList.keySet().stream().allMatch(keyClass::isInstance)) || (!originalList.values().stream().allMatch(valueClass::isInstance)))
|
||||
{
|
||||
LOGGER.log(Level.WARNING, "getMap(\"" + key + "\", " + keyClass.getSimpleName() + ", " + valueClass.getSimpleName() + ") requested with wrong generic type: " + obj.getClass().getGenericInterfaces()[0] + "!", new ClassNotFoundException());
|
||||
}
|
||||
}
|
||||
return (Map<K, V>) obj;
|
||||
}
|
||||
|
||||
public StatsSet set(String name, Object value)
|
||||
{
|
||||
if (value == null)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
_set.put(name, value);
|
||||
return this;
|
||||
}
|
||||
|
||||
public StatsSet set(String key, boolean value)
|
||||
{
|
||||
_set.put(key, value);
|
||||
return this;
|
||||
}
|
||||
|
||||
public StatsSet set(String key, byte value)
|
||||
{
|
||||
_set.put(key, value);
|
||||
return this;
|
||||
}
|
||||
|
||||
public StatsSet set(String key, short value)
|
||||
{
|
||||
_set.put(key, value);
|
||||
return this;
|
||||
}
|
||||
|
||||
public StatsSet set(String key, int value)
|
||||
{
|
||||
_set.put(key, value);
|
||||
return this;
|
||||
}
|
||||
|
||||
public StatsSet set(String key, long value)
|
||||
{
|
||||
_set.put(key, value);
|
||||
return this;
|
||||
}
|
||||
|
||||
public StatsSet set(String key, float value)
|
||||
{
|
||||
_set.put(key, value);
|
||||
return this;
|
||||
}
|
||||
|
||||
public StatsSet set(String key, double value)
|
||||
{
|
||||
_set.put(key, value);
|
||||
return this;
|
||||
}
|
||||
|
||||
public StatsSet set(String key, String value)
|
||||
{
|
||||
if (value == null)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
_set.put(key, value);
|
||||
return this;
|
||||
}
|
||||
|
||||
public StatsSet set(String key, Enum<?> value)
|
||||
{
|
||||
if (value == null)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
_set.put(key, value);
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Safe version of "set". Expected values are within [min, max[<br>
|
||||
* Add the int hold in param "value" for the key "name".
|
||||
* @param name : String designating the key in the set
|
||||
* @param value : int corresponding to the value associated with the key
|
||||
* @param min
|
||||
* @param max
|
||||
* @param reference
|
||||
*/
|
||||
public synchronized void safeSet(String name, int value, int min, int max, String reference)
|
||||
{
|
||||
assert ((min > max) || ((value >= min) && (value < max)));
|
||||
|
||||
if ((min <= max) && ((value < min) || (value >= max)))
|
||||
{
|
||||
LOGGER.info("[StatsSet][safeSet] Incorrect value: " + value + "for: " + name + "Ref: " + reference);
|
||||
}
|
||||
|
||||
set(name, value);
|
||||
}
|
||||
|
||||
public static StatsSet valueOf(String key, Object value)
|
||||
{
|
||||
final StatsSet set = new StatsSet();
|
||||
set.set(key, value);
|
||||
return set;
|
||||
}
|
||||
|
||||
public void remove(String key)
|
||||
{
|
||||
_set.remove(key);
|
||||
}
|
||||
|
||||
public boolean contains(String name)
|
||||
{
|
||||
return _set.containsKey(name);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString()
|
||||
{
|
||||
return "StatsSet{_set=" + _set + '}';
|
||||
}
|
||||
}
|
@ -60,6 +60,7 @@ import org.l2jmobius.gameserver.model.Party;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.Skill.SkillTargetType;
|
||||
import org.l2jmobius.gameserver.model.Skill.SkillType;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.World;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
import org.l2jmobius.gameserver.model.WorldRegion;
|
||||
@ -131,7 +132,6 @@ import org.l2jmobius.gameserver.skills.Stats;
|
||||
import org.l2jmobius.gameserver.skills.effects.EffectCharge;
|
||||
import org.l2jmobius.gameserver.skills.funcs.Func;
|
||||
import org.l2jmobius.gameserver.skills.holders.ISkillsHolder;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.creatures.CreatureTemplate;
|
||||
import org.l2jmobius.gameserver.templates.creatures.NpcTemplate;
|
||||
import org.l2jmobius.gameserver.templates.item.Weapon;
|
||||
|
@ -21,13 +21,13 @@ import java.util.List;
|
||||
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.gameserver.model.Party;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.entity.sevensigns.SevenSigns;
|
||||
import org.l2jmobius.gameserver.model.entity.sevensigns.SevenSignsFestival;
|
||||
import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.ActionFailed;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.creatures.NpcTemplate;
|
||||
|
||||
/**
|
||||
@ -324,13 +324,13 @@ public class FestivalGuideInstance extends FolkInstance
|
||||
final StatsSet dawnData = SevenSignsFestival.getInstance().getHighestScoreData(SevenSigns.CABAL_DAWN, _festivalType);
|
||||
final StatsSet duskData = SevenSignsFestival.getInstance().getHighestScoreData(SevenSigns.CABAL_DUSK, _festivalType);
|
||||
final StatsSet overallData = SevenSignsFestival.getInstance().getOverallHighestScoreData(_festivalType);
|
||||
final int dawnScore = dawnData.getInteger("score");
|
||||
final int duskScore = duskData.getInteger("score");
|
||||
final int dawnScore = dawnData.getInt("score");
|
||||
final int duskScore = duskData.getInt("score");
|
||||
int overallScore = 0;
|
||||
// If no data is returned, assume there is no record, or all scores are 0.
|
||||
if (overallData != null)
|
||||
{
|
||||
overallScore = overallData.getInteger("score");
|
||||
overallScore = overallData.getInt("score");
|
||||
}
|
||||
strBuffer.append(SevenSignsFestival.getFestivalName(_festivalType) + " festival.<br>");
|
||||
if (dawnScore > 0)
|
||||
|
@ -50,7 +50,6 @@ import org.l2jmobius.gameserver.cache.WarehouseCacheManager;
|
||||
import org.l2jmobius.gameserver.communitybbs.BB.Forum;
|
||||
import org.l2jmobius.gameserver.communitybbs.Manager.ForumsBBSManager;
|
||||
import org.l2jmobius.gameserver.datatables.AccessLevel;
|
||||
import org.l2jmobius.gameserver.datatables.GmListTable;
|
||||
import org.l2jmobius.gameserver.datatables.HeroSkillTable;
|
||||
import org.l2jmobius.gameserver.datatables.NobleSkillTable;
|
||||
import org.l2jmobius.gameserver.datatables.SkillTable;
|
||||
@ -58,12 +57,11 @@ import org.l2jmobius.gameserver.datatables.csv.FishTable;
|
||||
import org.l2jmobius.gameserver.datatables.csv.HennaTable;
|
||||
import org.l2jmobius.gameserver.datatables.csv.MapRegionTable;
|
||||
import org.l2jmobius.gameserver.datatables.csv.RecipeTable;
|
||||
import org.l2jmobius.gameserver.datatables.sql.AccessLevels;
|
||||
import org.l2jmobius.gameserver.datatables.sql.AdminCommandAccessRights;
|
||||
import org.l2jmobius.gameserver.datatables.sql.CharTemplateTable;
|
||||
import org.l2jmobius.gameserver.datatables.sql.ClanTable;
|
||||
import org.l2jmobius.gameserver.datatables.sql.NpcTable;
|
||||
import org.l2jmobius.gameserver.datatables.sql.SkillTreeTable;
|
||||
import org.l2jmobius.gameserver.datatables.xml.AdminData;
|
||||
import org.l2jmobius.gameserver.datatables.xml.ExperienceData;
|
||||
import org.l2jmobius.gameserver.datatables.xml.ItemTable;
|
||||
import org.l2jmobius.gameserver.geoengine.GeoEngine;
|
||||
@ -8614,11 +8612,11 @@ public class PlayerInstance extends Playable
|
||||
if (level == Config.MASTERACCESS_LEVEL)
|
||||
{
|
||||
LOGGER.warning("Access level " + level + " set for character " + getName() + "! Just a warning ;)");
|
||||
_accessLevel = AccessLevels.getInstance()._masterAccessLevel;
|
||||
_accessLevel = AdminData.getInstance()._masterAccessLevel;
|
||||
}
|
||||
else if (level == Config.USERACCESS_LEVEL)
|
||||
{
|
||||
_accessLevel = AccessLevels.getInstance()._userAccessLevel;
|
||||
_accessLevel = AdminData.getInstance()._userAccessLevel;
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -8626,19 +8624,19 @@ public class PlayerInstance extends Playable
|
||||
{
|
||||
LOGGER.warning("Access level " + level + " set for character " + getName() + "! Just a warning ;)");
|
||||
}
|
||||
AccessLevel accessLevel = AccessLevels.getInstance().getAccessLevel(level);
|
||||
AccessLevel accessLevel = AdminData.getInstance().getAccessLevel(level);
|
||||
|
||||
if (accessLevel == null)
|
||||
{
|
||||
if (level < 0)
|
||||
{
|
||||
AccessLevels.getInstance().addBanAccessLevel(level);
|
||||
_accessLevel = AccessLevels.getInstance().getAccessLevel(level);
|
||||
AdminData.getInstance().addBanAccessLevel(level);
|
||||
_accessLevel = AdminData.getInstance().getAccessLevel(level);
|
||||
}
|
||||
else
|
||||
{
|
||||
LOGGER.warning("Tried to set unregistered access level " + level + " to character " + getName() + ". Setting access level without privileges!");
|
||||
_accessLevel = AccessLevels.getInstance()._userAccessLevel;
|
||||
_accessLevel = AdminData.getInstance()._userAccessLevel;
|
||||
}
|
||||
}
|
||||
else
|
||||
@ -8647,7 +8645,7 @@ public class PlayerInstance extends Playable
|
||||
}
|
||||
}
|
||||
|
||||
if (_accessLevel != AccessLevels.getInstance()._userAccessLevel)
|
||||
if (_accessLevel != AdminData.getInstance()._userAccessLevel)
|
||||
{
|
||||
if (getAccessLevel().useNameColor())
|
||||
{
|
||||
@ -8679,7 +8677,7 @@ public class PlayerInstance extends Playable
|
||||
{
|
||||
if (Config.EVERYBODY_HAS_ADMIN_RIGHTS)
|
||||
{
|
||||
return AccessLevels.getInstance()._masterAccessLevel;
|
||||
return AdminData.getInstance()._masterAccessLevel;
|
||||
}
|
||||
else if (_accessLevel == null)
|
||||
{
|
||||
@ -15050,7 +15048,7 @@ public class PlayerInstance extends Playable
|
||||
{
|
||||
try
|
||||
{
|
||||
GmListTable.getInstance().deleteGm(this);
|
||||
AdminData.getInstance().deleteGm(this);
|
||||
}
|
||||
catch (Throwable t)
|
||||
{
|
||||
@ -17920,11 +17918,11 @@ public class PlayerInstance extends Playable
|
||||
setTarget(null);
|
||||
sendPacket(new ExOlympiadMode(0, this));
|
||||
teleToLocation(_obsX, _obsY, _obsZ, true);
|
||||
if (!AdminCommandAccessRights.getInstance().hasAccess("admin_invis", getAccessLevel()))
|
||||
if (!AdminData.getInstance().hasAccess("admin_invis", getAccessLevel()))
|
||||
{
|
||||
getAppearance().setVisible();
|
||||
}
|
||||
if (!AdminCommandAccessRights.getInstance().hasAccess("admin_invul", getAccessLevel()))
|
||||
if (!AdminData.getInstance().hasAccess("admin_invul", getAccessLevel()))
|
||||
{
|
||||
setIsInvul(false);
|
||||
}
|
||||
|
@ -28,6 +28,7 @@ import java.util.logging.Logger;
|
||||
|
||||
import org.l2jmobius.commons.database.DatabaseFactory;
|
||||
import org.l2jmobius.gameserver.datatables.sql.ClanTable;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.World;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.ItemInstance;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
@ -38,7 +39,6 @@ import org.l2jmobius.gameserver.network.serverpackets.InventoryUpdate;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.PledgeShowInfoUpdate;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.item.Item;
|
||||
|
||||
/**
|
||||
@ -320,11 +320,11 @@ public class Hero
|
||||
final Map<Integer, StatsSet> heroes = new HashMap<>();
|
||||
for (StatsSet hero : newHeroes)
|
||||
{
|
||||
final int charId = hero.getInteger(Olympiad.CHAR_ID);
|
||||
final int charId = hero.getInt(Olympiad.CHAR_ID);
|
||||
if ((_completeHeroes != null) && _completeHeroes.containsKey(charId))
|
||||
{
|
||||
final StatsSet oldHero = _completeHeroes.get(charId);
|
||||
final int count = oldHero.getInteger(COUNT);
|
||||
final int count = oldHero.getInt(COUNT);
|
||||
oldHero.set(COUNT, count + 1);
|
||||
oldHero.set(PLAYED, 1);
|
||||
heroes.put(charId, oldHero);
|
||||
@ -333,7 +333,7 @@ public class Hero
|
||||
{
|
||||
final StatsSet newHero = new StatsSet();
|
||||
newHero.set(Olympiad.CHAR_NAME, hero.getString(Olympiad.CHAR_NAME));
|
||||
newHero.set(Olympiad.CLASS_ID, hero.getInteger(Olympiad.CLASS_ID));
|
||||
newHero.set(Olympiad.CLASS_ID, hero.getInt(Olympiad.CLASS_ID));
|
||||
newHero.set(COUNT, 1);
|
||||
newHero.set(PLAYED, 1);
|
||||
heroes.put(charId, newHero);
|
||||
@ -424,9 +424,9 @@ public class Hero
|
||||
statement = con.prepareStatement(INSERT_HERO);
|
||||
statement.setInt(1, heroId);
|
||||
statement.setString(2, hero.getString(Olympiad.CHAR_NAME));
|
||||
statement.setInt(3, hero.getInteger(Olympiad.CLASS_ID));
|
||||
statement.setInt(4, hero.getInteger(COUNT));
|
||||
statement.setInt(5, hero.getInteger(PLAYED));
|
||||
statement.setInt(3, hero.getInt(Olympiad.CLASS_ID));
|
||||
statement.setInt(4, hero.getInt(COUNT));
|
||||
statement.setInt(5, hero.getInt(PLAYED));
|
||||
statement.execute();
|
||||
statement2 = con.prepareStatement(GET_CLAN_ALLY);
|
||||
statement2.setInt(1, heroId);
|
||||
@ -463,8 +463,8 @@ public class Hero
|
||||
else
|
||||
{
|
||||
statement = con.prepareStatement(UPDATE_HERO);
|
||||
statement.setInt(1, hero.getInteger(COUNT));
|
||||
statement.setInt(2, hero.getInteger(PLAYED));
|
||||
statement.setInt(1, hero.getInt(COUNT));
|
||||
statement.setInt(2, hero.getInt(PLAYED));
|
||||
statement.setInt(3, heroId);
|
||||
statement.execute();
|
||||
}
|
||||
|
@ -44,6 +44,7 @@ import org.l2jmobius.Config;
|
||||
import org.l2jmobius.commons.concurrent.ThreadPool;
|
||||
import org.l2jmobius.commons.database.DatabaseFactory;
|
||||
import org.l2jmobius.gameserver.instancemanager.OlympiadStadiaManager;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.World;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.model.entity.Announcements;
|
||||
@ -52,7 +53,6 @@ import org.l2jmobius.gameserver.model.spawn.Spawn;
|
||||
import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
public class Olympiad
|
||||
{
|
||||
@ -1006,7 +1006,7 @@ public class Olympiad
|
||||
for (Integer nobleId : _nobles.keySet())
|
||||
{
|
||||
final StatsSet nobleInfo = _nobles.get(nobleId);
|
||||
int currentPoints = nobleInfo.getInteger(POINTS);
|
||||
int currentPoints = nobleInfo.getInt(POINTS);
|
||||
currentPoints += WEEKLY_POINTS;
|
||||
nobleInfo.set(POINTS, currentPoints);
|
||||
|
||||
@ -1138,14 +1138,14 @@ public class Olympiad
|
||||
}
|
||||
|
||||
final int charId = nobleId;
|
||||
final int classId = nobleInfo.getInteger(CLASS_ID);
|
||||
final int classId = nobleInfo.getInt(CLASS_ID);
|
||||
final String charName = nobleInfo.getString(CHAR_NAME);
|
||||
final int points = nobleInfo.getInteger(POINTS);
|
||||
final int compDone = nobleInfo.getInteger(COMP_DONE);
|
||||
final int compWon = nobleInfo.getInteger(COMP_WON);
|
||||
final int compLost = nobleInfo.getInteger(COMP_LOST);
|
||||
final int compDrawn = nobleInfo.getInteger(COMP_DRAWN);
|
||||
final boolean toSave = nobleInfo.getBool("to_save");
|
||||
final int points = nobleInfo.getInt(POINTS);
|
||||
final int compDone = nobleInfo.getInt(COMP_DONE);
|
||||
final int compWon = nobleInfo.getInt(COMP_WON);
|
||||
final int compLost = nobleInfo.getInt(COMP_LOST);
|
||||
final int compDrawn = nobleInfo.getInt(COMP_DRAWN);
|
||||
final boolean toSave = nobleInfo.getBoolean("to_save");
|
||||
|
||||
if (toSave)
|
||||
{
|
||||
@ -1200,11 +1200,11 @@ public class Olympiad
|
||||
}
|
||||
|
||||
final int charId = nobleId;
|
||||
final int points = nobleInfo.getInteger(POINTS);
|
||||
final int compDone = nobleInfo.getInteger(COMP_DONE);
|
||||
final int compWon = nobleInfo.getInteger(COMP_WON);
|
||||
final int compLost = nobleInfo.getInteger(COMP_LOST);
|
||||
final int compDrawn = nobleInfo.getInteger(COMP_DRAWN);
|
||||
final int points = nobleInfo.getInt(POINTS);
|
||||
final int compDone = nobleInfo.getInt(COMP_DONE);
|
||||
final int compWon = nobleInfo.getInt(COMP_WON);
|
||||
final int compLost = nobleInfo.getInt(COMP_LOST);
|
||||
final int compDrawn = nobleInfo.getInt(COMP_DRAWN);
|
||||
|
||||
statement = con.prepareStatement(OLYMPIAD_UPDATE_OLD_NOBLES);
|
||||
statement.setInt(1, points);
|
||||
@ -1310,10 +1310,10 @@ public class Olympiad
|
||||
}
|
||||
|
||||
final int charId = nobleId;
|
||||
final int classId = nobleInfo.getInteger(CLASS_ID);
|
||||
final int classId = nobleInfo.getInt(CLASS_ID);
|
||||
final String charName = nobleInfo.getString(CHAR_NAME);
|
||||
final int points = nobleInfo.getInteger(POINTS);
|
||||
final int compDone = nobleInfo.getInteger(COMP_DONE);
|
||||
final int points = nobleInfo.getInt(POINTS);
|
||||
final int compDone = nobleInfo.getInt(COMP_DONE);
|
||||
|
||||
logResult(charName, "", Double.valueOf(charId), Double.valueOf(classId), compDone, points, "noble-charId-classId-compdone-points", 0, "");
|
||||
}
|
||||
@ -1395,10 +1395,10 @@ public class Olympiad
|
||||
|
||||
for (StatsSet hero : _heroesToBe)
|
||||
{
|
||||
final int charId = hero.getInteger(CHAR_ID);
|
||||
final int charId = hero.getInt(CHAR_ID);
|
||||
|
||||
final StatsSet noble = _nobles.get(charId);
|
||||
int currentPoints = noble.getInteger(POINTS);
|
||||
int currentPoints = noble.getInt(POINTS);
|
||||
currentPoints += Config.ALT_OLY_HERO_POINTS;
|
||||
noble.set(POINTS, currentPoints);
|
||||
|
||||
@ -1420,7 +1420,7 @@ public class Olympiad
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
int points = noble.getInteger(POINTS);
|
||||
int points = noble.getInt(POINTS);
|
||||
if (points <= Config.ALT_OLY_MIN_POINT_FOR_EXCH)
|
||||
{
|
||||
return 0;
|
||||
@ -1444,7 +1444,7 @@ public class Olympiad
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
int points = noble.getInteger(POINTS);
|
||||
int points = noble.getInt(POINTS);
|
||||
if (points <= Config.ALT_OLY_MIN_POINT_FOR_EXCH)
|
||||
{
|
||||
return 0;
|
||||
@ -1489,7 +1489,7 @@ public class Olympiad
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
final int points = noble.getInteger(POINTS);
|
||||
final int points = noble.getInt(POINTS);
|
||||
|
||||
return points;
|
||||
}
|
||||
@ -1506,7 +1506,7 @@ public class Olympiad
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
final int points = noble.getInteger(COMP_DONE);
|
||||
final int points = noble.getInt(COMP_DONE);
|
||||
|
||||
return points;
|
||||
}
|
||||
@ -1523,7 +1523,7 @@ public class Olympiad
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
final int points = noble.getInteger(COMP_WON);
|
||||
final int points = noble.getInt(COMP_WON);
|
||||
|
||||
return points;
|
||||
}
|
||||
@ -1540,7 +1540,7 @@ public class Olympiad
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
final int points = noble.getInteger(COMP_LOST);
|
||||
final int points = noble.getInt(COMP_LOST);
|
||||
|
||||
return points;
|
||||
}
|
||||
|
@ -27,6 +27,7 @@ import org.l2jmobius.gameserver.datatables.HeroSkillTable;
|
||||
import org.l2jmobius.gameserver.datatables.SkillTable;
|
||||
import org.l2jmobius.gameserver.model.Party;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Summon;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.CubicInstance;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.ItemInstance;
|
||||
@ -45,7 +46,6 @@ import org.l2jmobius.gameserver.network.serverpackets.ExOlympiadUserInfo;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.InventoryUpdate;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.MagicSkillUse;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
/**
|
||||
* @author GodKratos
|
||||
@ -652,17 +652,17 @@ class OlympiadGame
|
||||
final StatsSet playerOneStat = Olympiad.getNobleStats(_playerOne.getObjectId());
|
||||
final StatsSet playerTwoStat = Olympiad.getNobleStats(_playerTwo.getObjectId());
|
||||
|
||||
final int playerOnePlayed = playerOneStat.getInteger(COMP_DONE);
|
||||
final int playerTwoPlayed = playerTwoStat.getInteger(COMP_DONE);
|
||||
final int playerOneWon = playerOneStat.getInteger(COMP_WON);
|
||||
final int playerTwoWon = playerTwoStat.getInteger(COMP_WON);
|
||||
final int playerOneLost = playerOneStat.getInteger(COMP_LOST);
|
||||
final int playerTwoLost = playerTwoStat.getInteger(COMP_LOST);
|
||||
final int playerOneDrawn = playerOneStat.getInteger(COMP_DRAWN);
|
||||
final int playerTwoDrawn = playerTwoStat.getInteger(COMP_DRAWN);
|
||||
final int playerOnePlayed = playerOneStat.getInt(COMP_DONE);
|
||||
final int playerTwoPlayed = playerTwoStat.getInt(COMP_DONE);
|
||||
final int playerOneWon = playerOneStat.getInt(COMP_WON);
|
||||
final int playerTwoWon = playerTwoStat.getInt(COMP_WON);
|
||||
final int playerOneLost = playerOneStat.getInt(COMP_LOST);
|
||||
final int playerTwoLost = playerTwoStat.getInt(COMP_LOST);
|
||||
final int playerOneDrawn = playerOneStat.getInt(COMP_DRAWN);
|
||||
final int playerTwoDrawn = playerTwoStat.getInt(COMP_DRAWN);
|
||||
|
||||
final int playerOnePoints = playerOneStat.getInteger(POINTS);
|
||||
final int playerTwoPoints = playerTwoStat.getInteger(POINTS);
|
||||
final int playerOnePoints = playerOneStat.getInt(POINTS);
|
||||
final int playerTwoPoints = playerTwoStat.getInt(POINTS);
|
||||
final int pointDiff = Math.min(playerOnePoints, playerTwoPoints) / _div;
|
||||
|
||||
// Check for if a player defaulted before battle started
|
||||
|
@ -31,6 +31,7 @@ import org.l2jmobius.commons.database.DatabaseFactory;
|
||||
import org.l2jmobius.gameserver.datatables.csv.MapRegionTable;
|
||||
import org.l2jmobius.gameserver.handler.AutoChatHandler;
|
||||
import org.l2jmobius.gameserver.instancemanager.CastleManager;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.World;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.model.spawn.AutoSpawn;
|
||||
@ -38,7 +39,6 @@ import org.l2jmobius.gameserver.model.spawn.AutoSpawn.AutoSpawnInstance;
|
||||
import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SignsSky;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
/**
|
||||
* Seven Signs Engine TODO: - Implementation of the Seal of Strife for sieges.
|
||||
@ -796,9 +796,9 @@ public class SevenSigns
|
||||
|
||||
StatsSet currPlayer = getPlayerData(player);
|
||||
|
||||
stoneCount += currPlayer.getInteger("red_stones");
|
||||
stoneCount += currPlayer.getInteger("green_stones");
|
||||
stoneCount += currPlayer.getInteger("blue_stones");
|
||||
stoneCount += currPlayer.getInt("red_stones");
|
||||
stoneCount += currPlayer.getInt("green_stones");
|
||||
stoneCount += currPlayer.getInt("blue_stones");
|
||||
|
||||
return stoneCount;
|
||||
}
|
||||
@ -817,7 +817,7 @@ public class SevenSigns
|
||||
|
||||
final StatsSet currPlayer = getPlayerData(player);
|
||||
|
||||
return currPlayer.getInteger("contribution_score");
|
||||
return currPlayer.getInt("contribution_score");
|
||||
}
|
||||
|
||||
/**
|
||||
@ -832,7 +832,7 @@ public class SevenSigns
|
||||
return 0;
|
||||
}
|
||||
|
||||
return _signsPlayerData.get(player.getObjectId()).getInteger("ancient_adena_amount");
|
||||
return _signsPlayerData.get(player.getObjectId()).getInt("ancient_adena_amount");
|
||||
}
|
||||
|
||||
/**
|
||||
@ -847,7 +847,7 @@ public class SevenSigns
|
||||
return SEAL_NULL;
|
||||
}
|
||||
|
||||
return getPlayerData(player).getInteger("seal");
|
||||
return getPlayerData(player).getInt("seal");
|
||||
}
|
||||
|
||||
/**
|
||||
@ -968,7 +968,7 @@ public class SevenSigns
|
||||
{
|
||||
if (player != null)
|
||||
{
|
||||
if (sevenDat.getInteger("char_obj_id") != player.getObjectId())
|
||||
if (sevenDat.getInt("char_obj_id") != player.getObjectId())
|
||||
{
|
||||
continue;
|
||||
}
|
||||
@ -976,13 +976,13 @@ public class SevenSigns
|
||||
|
||||
statement = con.prepareStatement("UPDATE seven_signs SET cabal=?, seal=?, red_stones=?, green_stones=?, blue_stones=?, ancient_adena_amount=?, contribution_score=? WHERE char_obj_id=?");
|
||||
statement.setString(1, sevenDat.getString("cabal"));
|
||||
statement.setInt(2, sevenDat.getInteger("seal"));
|
||||
statement.setInt(3, sevenDat.getInteger("red_stones"));
|
||||
statement.setInt(4, sevenDat.getInteger("green_stones"));
|
||||
statement.setInt(5, sevenDat.getInteger("blue_stones"));
|
||||
statement.setInt(2, sevenDat.getInt("seal"));
|
||||
statement.setInt(3, sevenDat.getInt("red_stones"));
|
||||
statement.setInt(4, sevenDat.getInt("green_stones"));
|
||||
statement.setInt(5, sevenDat.getInt("blue_stones"));
|
||||
statement.setDouble(6, sevenDat.getDouble("ancient_adena_amount"));
|
||||
statement.setDouble(7, sevenDat.getDouble("contribution_score"));
|
||||
statement.setInt(8, sevenDat.getInteger("char_obj_id"));
|
||||
statement.setInt(8, sevenDat.getInt("char_obj_id"));
|
||||
statement.execute();
|
||||
|
||||
statement.close();
|
||||
@ -1044,7 +1044,7 @@ public class SevenSigns
|
||||
// Reset each player's contribution data as well as seal and cabal.
|
||||
for (StatsSet sevenDat : _signsPlayerData.values())
|
||||
{
|
||||
final int charObjId = sevenDat.getInteger("char_obj_id");
|
||||
final int charObjId = sevenDat.getInt("char_obj_id");
|
||||
|
||||
// Reset the player's cabal and seal information
|
||||
sevenDat.set("cabal", "");
|
||||
@ -1142,7 +1142,7 @@ public class SevenSigns
|
||||
public int getAncientAdenaReward(PlayerInstance player, boolean removeReward)
|
||||
{
|
||||
StatsSet currPlayer = getPlayerData(player);
|
||||
final int rewardAmount = currPlayer.getInteger("ancient_adena_amount");
|
||||
final int rewardAmount = currPlayer.getInt("ancient_adena_amount");
|
||||
|
||||
currPlayer.set("red_stones", 0);
|
||||
currPlayer.set("green_stones", 0);
|
||||
@ -1171,17 +1171,17 @@ public class SevenSigns
|
||||
StatsSet currPlayer = getPlayerData(player);
|
||||
|
||||
final int contribScore = calcContributionScore(blueCount, greenCount, redCount);
|
||||
final int totalAncientAdena = currPlayer.getInteger("ancient_adena_amount") + calcAncientAdenaReward(blueCount, greenCount, redCount);
|
||||
final int totalContribScore = currPlayer.getInteger("contribution_score") + contribScore;
|
||||
final int totalAncientAdena = currPlayer.getInt("ancient_adena_amount") + calcAncientAdenaReward(blueCount, greenCount, redCount);
|
||||
final int totalContribScore = currPlayer.getInt("contribution_score") + contribScore;
|
||||
|
||||
if (totalContribScore > Config.ALT_MAXIMUM_PLAYER_CONTRIB)
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
|
||||
currPlayer.set("red_stones", currPlayer.getInteger("red_stones") + redCount);
|
||||
currPlayer.set("green_stones", currPlayer.getInteger("green_stones") + greenCount);
|
||||
currPlayer.set("blue_stones", currPlayer.getInteger("blue_stones") + blueCount);
|
||||
currPlayer.set("red_stones", currPlayer.getInt("red_stones") + redCount);
|
||||
currPlayer.set("green_stones", currPlayer.getInt("green_stones") + greenCount);
|
||||
currPlayer.set("blue_stones", currPlayer.getInt("blue_stones") + blueCount);
|
||||
currPlayer.set("ancient_adena_amount", totalAncientAdena);
|
||||
currPlayer.set("contribution_score", totalContribScore);
|
||||
_signsPlayerData.put(player.getObjectId(), currPlayer);
|
||||
|
@ -39,6 +39,7 @@ import org.l2jmobius.gameserver.datatables.sql.SpawnTable;
|
||||
import org.l2jmobius.gameserver.datatables.xml.ExperienceData;
|
||||
import org.l2jmobius.gameserver.model.Location;
|
||||
import org.l2jmobius.gameserver.model.Party;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.World;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.FestivalMonsterInstance;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.ItemInstance;
|
||||
@ -52,7 +53,6 @@ import org.l2jmobius.gameserver.network.serverpackets.CreatureSay;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.MagicSkillUse;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.PledgeShowInfoUpdate;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.creatures.NpcTemplate;
|
||||
import org.l2jmobius.gameserver.util.Util;
|
||||
|
||||
@ -3404,14 +3404,14 @@ public class SevenSignsFestival implements SpawnListener
|
||||
{
|
||||
for (StatsSet festivalDat : currCycleData.values())
|
||||
{
|
||||
final int festivalCycle = festivalDat.getInteger("cycle");
|
||||
final int festivalId = festivalDat.getInteger("festivalId");
|
||||
final int festivalCycle = festivalDat.getInt("cycle");
|
||||
final int festivalId = festivalDat.getInt("festivalId");
|
||||
String cabal = festivalDat.getString("cabal");
|
||||
|
||||
// Try to update an existing record.
|
||||
statement = con.prepareStatement("UPDATE seven_signs_festival SET date=?, score=?, members=? WHERE cycle=? AND cabal=? AND festivalId=?");
|
||||
statement.setLong(1, Long.valueOf(festivalDat.getString("date")));
|
||||
statement.setInt(2, festivalDat.getInteger("score"));
|
||||
statement.setInt(2, festivalDat.getInt("score"));
|
||||
statement.setString(3, festivalDat.getString("members"));
|
||||
statement.setInt(4, festivalCycle);
|
||||
statement.setString(5, cabal);
|
||||
@ -3431,7 +3431,7 @@ public class SevenSignsFestival implements SpawnListener
|
||||
statement.setString(2, cabal);
|
||||
statement.setInt(3, festivalCycle);
|
||||
statement.setLong(4, Long.valueOf(festivalDat.getString("date")));
|
||||
statement.setInt(5, festivalDat.getInteger("score"));
|
||||
statement.setInt(5, festivalDat.getInt("score"));
|
||||
statement.setString(6, festivalDat.getString("members"));
|
||||
statement.execute();
|
||||
statement.close();
|
||||
@ -3929,7 +3929,7 @@ public class SevenSignsFestival implements SpawnListener
|
||||
*/
|
||||
public int getHighestScore(int oracle, int festivalId)
|
||||
{
|
||||
return getHighestScoreData(oracle, festivalId).getInteger("score");
|
||||
return getHighestScoreData(oracle, festivalId).getInt("score");
|
||||
}
|
||||
|
||||
/**
|
||||
@ -3978,8 +3978,8 @@ public class SevenSignsFestival implements SpawnListener
|
||||
{
|
||||
for (StatsSet currFestData : currCycleData.values())
|
||||
{
|
||||
final int currFestID = currFestData.getInteger("festivalId");
|
||||
final int festivalScore = currFestData.getInteger("score");
|
||||
final int currFestID = currFestData.getInt("festivalId");
|
||||
final int festivalScore = currFestData.getInt("score");
|
||||
|
||||
if (currFestID != festivalId)
|
||||
{
|
||||
@ -4161,7 +4161,7 @@ public class SevenSignsFestival implements SpawnListener
|
||||
{
|
||||
if (festivalData.getString("members").contains(playerName))
|
||||
{
|
||||
final int festivalId = festivalData.getInteger("festivalId");
|
||||
final int festivalId = festivalData.getInt("festivalId");
|
||||
final int numPartyMembers = festivalData.getString("members").split(",").length;
|
||||
final int totalAccumBonus = _accumulatedBonuses.get(festivalId);
|
||||
|
||||
|
@ -0,0 +1,25 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package org.l2jmobius.gameserver.model.interfaces;
|
||||
|
||||
/**
|
||||
* @author UnAfraid
|
||||
*/
|
||||
public interface IDeletable
|
||||
{
|
||||
boolean deleteMe();
|
||||
}
|
@ -0,0 +1,48 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package org.l2jmobius.gameserver.model.interfaces;
|
||||
|
||||
import java.time.Duration;
|
||||
|
||||
/**
|
||||
* More advanced interface for parsers.<br>
|
||||
* Allows usage of get methods without fall back value.<br>
|
||||
* @author xban1x
|
||||
*/
|
||||
public interface IParserAdvUtils extends IParserUtils
|
||||
{
|
||||
|
||||
boolean getBoolean(String key);
|
||||
|
||||
byte getByte(String key);
|
||||
|
||||
short getShort(String key);
|
||||
|
||||
int getInt(String key);
|
||||
|
||||
long getLong(String key);
|
||||
|
||||
float getFloat(String key);
|
||||
|
||||
double getDouble(String key);
|
||||
|
||||
String getString(String key);
|
||||
|
||||
Duration getDuration(String key);
|
||||
|
||||
<T extends Enum<T>> T getEnum(String key, Class<T> clazz);
|
||||
}
|
@ -0,0 +1,47 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package org.l2jmobius.gameserver.model.interfaces;
|
||||
|
||||
import java.time.Duration;
|
||||
|
||||
/**
|
||||
* Simple interface for parser, enforces of a fall back value.<br>
|
||||
* More suitable for developers not sure about their data.<br>
|
||||
* @author xban1x
|
||||
*/
|
||||
public interface IParserUtils
|
||||
{
|
||||
boolean getBoolean(String key, boolean defaultValue);
|
||||
|
||||
byte getByte(String key, byte defaultValue);
|
||||
|
||||
short getShort(String key, short defaultValue);
|
||||
|
||||
int getInt(String key, int defaultValue);
|
||||
|
||||
long getLong(String key, long defaultValue);
|
||||
|
||||
float getFloat(String key, float defaultValue);
|
||||
|
||||
double getDouble(String key, double defaultValue);
|
||||
|
||||
String getString(String key, String defaultValue);
|
||||
|
||||
Duration getDuration(String key, Duration defaultValue);
|
||||
|
||||
<T extends Enum<T>> T getEnum(String key, Class<T> clazz, T defaultValue);
|
||||
}
|
@ -16,63 +16,70 @@
|
||||
*/
|
||||
package org.l2jmobius.gameserver.model.variables;
|
||||
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.interfaces.IDeletable;
|
||||
import org.l2jmobius.gameserver.model.interfaces.IRestorable;
|
||||
import org.l2jmobius.gameserver.model.interfaces.IStorable;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
/**
|
||||
* @author UnAfraid
|
||||
*/
|
||||
public abstract class AbstractVariables extends StatsSet implements IRestorable, IStorable
|
||||
public abstract class AbstractVariables extends StatsSet implements IRestorable, IStorable, IDeletable
|
||||
{
|
||||
private final AtomicBoolean _hasChanges = new AtomicBoolean(false);
|
||||
|
||||
public AbstractVariables()
|
||||
{
|
||||
super(new ConcurrentHashMap<>());
|
||||
}
|
||||
|
||||
/**
|
||||
* Overriding following methods to prevent from doing useless database operations if there is no changes since player's login.
|
||||
*/
|
||||
|
||||
@Override
|
||||
public void set(String name, boolean value)
|
||||
public StatsSet set(String name, boolean value)
|
||||
{
|
||||
_hasChanges.compareAndSet(false, true);
|
||||
super.set(name, value);
|
||||
return super.set(name, value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void set(String name, double value)
|
||||
public StatsSet set(String name, double value)
|
||||
{
|
||||
_hasChanges.compareAndSet(false, true);
|
||||
super.set(name, value);
|
||||
return super.set(name, value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void set(String name, Enum<?> value)
|
||||
public StatsSet set(String name, Enum<?> value)
|
||||
{
|
||||
_hasChanges.compareAndSet(false, true);
|
||||
super.set(name, value);
|
||||
return super.set(name, value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void set(String name, int value)
|
||||
public StatsSet set(String name, int value)
|
||||
{
|
||||
_hasChanges.compareAndSet(false, true);
|
||||
super.set(name, value);
|
||||
return super.set(name, value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void set(String name, long value)
|
||||
public StatsSet set(String name, long value)
|
||||
{
|
||||
_hasChanges.compareAndSet(false, true);
|
||||
super.set(name, value);
|
||||
return super.set(name, value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void set(String name, String value)
|
||||
public StatsSet set(String name, String value)
|
||||
{
|
||||
_hasChanges.compareAndSet(false, true);
|
||||
super.set(name, value);
|
||||
return super.set(name, value);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -108,6 +115,7 @@ public abstract class AbstractVariables extends StatsSet implements IRestorable,
|
||||
* Removes variable
|
||||
* @param name
|
||||
*/
|
||||
@Override
|
||||
public void remove(String name)
|
||||
{
|
||||
_hasChanges.compareAndSet(false, true);
|
||||
|
@ -116,4 +116,27 @@ public class AccountVariables extends AbstractVariables
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean deleteMe()
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection())
|
||||
{
|
||||
// Clear previous entries.
|
||||
try (PreparedStatement st = con.prepareStatement(DELETE_QUERY))
|
||||
{
|
||||
st.setString(1, _accountName);
|
||||
st.execute();
|
||||
}
|
||||
|
||||
// Clear all entries
|
||||
getSet().clear();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
LOGGER.log(Level.WARNING, getClass().getSimpleName() + ": Couldn't delete variables for: " + _accountName, e);
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -119,6 +119,29 @@ public class PlayerVariables extends AbstractVariables
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean deleteMe()
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection())
|
||||
{
|
||||
// Clear previous entries.
|
||||
try (PreparedStatement st = con.prepareStatement(DELETE_QUERY))
|
||||
{
|
||||
st.setInt(1, _objectId);
|
||||
st.execute();
|
||||
}
|
||||
|
||||
// Clear all entries
|
||||
getSet().clear();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
LOGGER.log(Level.WARNING, getClass().getSimpleName() + ": Couldn't delete variables for: " + getPlayer(), e);
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
public PlayerInstance getPlayer()
|
||||
{
|
||||
return World.getInstance().getPlayer(_objectId);
|
||||
|
@ -31,10 +31,9 @@ import org.l2jmobius.commons.crypt.nProtect;
|
||||
import org.l2jmobius.commons.crypt.nProtect.RestrictionType;
|
||||
import org.l2jmobius.gameserver.GameTimeController;
|
||||
import org.l2jmobius.gameserver.communitybbs.Manager.MailBBSManager;
|
||||
import org.l2jmobius.gameserver.datatables.GmListTable;
|
||||
import org.l2jmobius.gameserver.datatables.SkillTable;
|
||||
import org.l2jmobius.gameserver.datatables.csv.MapRegionTable;
|
||||
import org.l2jmobius.gameserver.datatables.sql.AdminCommandAccessRights;
|
||||
import org.l2jmobius.gameserver.datatables.xml.AdminData;
|
||||
import org.l2jmobius.gameserver.handler.custom.CustomWorldHandler;
|
||||
import org.l2jmobius.gameserver.instancemanager.CastleManager;
|
||||
import org.l2jmobius.gameserver.instancemanager.ClanHallManager;
|
||||
@ -588,7 +587,7 @@ public class EnterWorld extends GameClientPacket
|
||||
{
|
||||
gmStartupProcess:
|
||||
{
|
||||
if (Config.GM_STARTUP_BUILDER_HIDE && AdminCommandAccessRights.getInstance().hasAccess("admin_hide", player.getAccessLevel()))
|
||||
if (Config.GM_STARTUP_BUILDER_HIDE && AdminData.getInstance().hasAccess("admin_hide", player.getAccessLevel()))
|
||||
{
|
||||
player.setInRefusalMode(true);
|
||||
player.setIsInvul(true);
|
||||
@ -602,28 +601,28 @@ public class EnterWorld extends GameClientPacket
|
||||
break gmStartupProcess;
|
||||
}
|
||||
|
||||
if (Config.GM_STARTUP_INVULNERABLE && AdminCommandAccessRights.getInstance().hasAccess("admin_invul", player.getAccessLevel()))
|
||||
if (Config.GM_STARTUP_INVULNERABLE && AdminData.getInstance().hasAccess("admin_invul", player.getAccessLevel()))
|
||||
{
|
||||
player.setIsInvul(true);
|
||||
}
|
||||
|
||||
if (Config.GM_STARTUP_INVISIBLE && AdminCommandAccessRights.getInstance().hasAccess("admin_invisible", player.getAccessLevel()))
|
||||
if (Config.GM_STARTUP_INVISIBLE && AdminData.getInstance().hasAccess("admin_invisible", player.getAccessLevel()))
|
||||
{
|
||||
player.getAppearance().setInvisible();
|
||||
}
|
||||
|
||||
if (Config.GM_STARTUP_SILENCE && AdminCommandAccessRights.getInstance().hasAccess("admin_silence", player.getAccessLevel()))
|
||||
if (Config.GM_STARTUP_SILENCE && AdminData.getInstance().hasAccess("admin_silence", player.getAccessLevel()))
|
||||
{
|
||||
player.setInRefusalMode(true);
|
||||
}
|
||||
|
||||
if (Config.GM_STARTUP_AUTO_LIST && AdminCommandAccessRights.getInstance().hasAccess("admin_gmliston", player.getAccessLevel()))
|
||||
if (Config.GM_STARTUP_AUTO_LIST && AdminData.getInstance().hasAccess("admin_gmliston", player.getAccessLevel()))
|
||||
{
|
||||
GmListTable.getInstance().addGm(player, false);
|
||||
AdminData.getInstance().addGm(player, false);
|
||||
}
|
||||
else
|
||||
{
|
||||
GmListTable.getInstance().addGm(player, true);
|
||||
AdminData.getInstance().addGm(player, true);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -21,7 +21,7 @@ import java.util.logging.Logger;
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.gameserver.ai.CtrlIntention;
|
||||
import org.l2jmobius.gameserver.communitybbs.CommunityBoard;
|
||||
import org.l2jmobius.gameserver.datatables.sql.AdminCommandAccessRights;
|
||||
import org.l2jmobius.gameserver.datatables.xml.AdminData;
|
||||
import org.l2jmobius.gameserver.handler.AdminCommandHandler;
|
||||
import org.l2jmobius.gameserver.handler.IAdminCommandHandler;
|
||||
import org.l2jmobius.gameserver.handler.custom.CustomBypassHandler;
|
||||
@ -97,7 +97,7 @@ public class RequestBypassToServer extends GameClientPacket
|
||||
return;
|
||||
}
|
||||
|
||||
if (!AdminCommandAccessRights.getInstance().hasAccess(command, player.getAccessLevel()))
|
||||
if (!AdminData.getInstance().hasAccess(command, player.getAccessLevel()))
|
||||
{
|
||||
player.sendMessage("You don't have the access right to use this command!");
|
||||
return;
|
||||
|
@ -19,7 +19,7 @@ package org.l2jmobius.gameserver.network.clientpackets;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.gameserver.datatables.GmListTable;
|
||||
import org.l2jmobius.gameserver.datatables.xml.AdminData;
|
||||
import org.l2jmobius.gameserver.instancemanager.CursedWeaponsManager;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.ItemInstance;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
@ -221,7 +221,7 @@ public class RequestDropItem extends GameClientPacket
|
||||
{
|
||||
final String msg = "Character (" + player.getName() + ") has dropped (" + dropedItem.getCount() + ")adena at (" + _x + "," + _y + "," + _z + ")";
|
||||
LOGGER.warning(msg);
|
||||
GmListTable.broadcastMessageToGMs(msg);
|
||||
AdminData.broadcastMessageToGMs(msg);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -16,7 +16,7 @@
|
||||
*/
|
||||
package org.l2jmobius.gameserver.network.clientpackets;
|
||||
|
||||
import org.l2jmobius.gameserver.datatables.GmListTable;
|
||||
import org.l2jmobius.gameserver.datatables.xml.AdminData;
|
||||
|
||||
/**
|
||||
* This class handles RequestGmLista packet triggered by /gmlist command
|
||||
@ -36,6 +36,6 @@ public class RequestGmList extends GameClientPacket
|
||||
return;
|
||||
}
|
||||
|
||||
GmListTable.getInstance().sendListToPlayer(getClient().getPlayer());
|
||||
AdminData.getInstance().sendListToPlayer(getClient().getPlayer());
|
||||
}
|
||||
}
|
||||
|
@ -17,7 +17,7 @@
|
||||
package org.l2jmobius.gameserver.network.clientpackets;
|
||||
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.gameserver.datatables.GmListTable;
|
||||
import org.l2jmobius.gameserver.datatables.xml.AdminData;
|
||||
import org.l2jmobius.gameserver.instancemanager.PetitionManager;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
@ -48,7 +48,7 @@ public class RequestPetition extends GameClientPacket
|
||||
return;
|
||||
}
|
||||
|
||||
if (!GmListTable.getInstance().isGmOnline(false))
|
||||
if (!AdminData.getInstance().isGmOnline(false))
|
||||
{
|
||||
player.sendPacket(SystemMessageId.NO_GM_PROVIDING_SERVICE_NOW);
|
||||
return;
|
||||
|
@ -17,7 +17,7 @@
|
||||
package org.l2jmobius.gameserver.network.clientpackets;
|
||||
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.gameserver.datatables.GmListTable;
|
||||
import org.l2jmobius.gameserver.datatables.xml.AdminData;
|
||||
import org.l2jmobius.gameserver.instancemanager.PetitionManager;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
@ -70,7 +70,7 @@ public class RequestPetitionCancel extends GameClientPacket
|
||||
|
||||
// Notify all GMs that the player's pending petition has been cancelled.
|
||||
final String msgContent = player.getName() + " has canceled a pending petition.";
|
||||
GmListTable.broadcastToGMs(new CreatureSay(player.getObjectId(), 17, "Petition System", msgContent));
|
||||
AdminData.broadcastToGMs(new CreatureSay(player.getObjectId(), 17, "Petition System", msgContent));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -19,7 +19,7 @@ package org.l2jmobius.gameserver.network.clientpackets;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.gameserver.datatables.sql.AdminCommandAccessRights;
|
||||
import org.l2jmobius.gameserver.datatables.xml.AdminData;
|
||||
import org.l2jmobius.gameserver.handler.AdminCommandHandler;
|
||||
import org.l2jmobius.gameserver.handler.IAdminCommandHandler;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
@ -52,7 +52,7 @@ public class SendBypassBuildCmd extends GameClientPacket
|
||||
}
|
||||
|
||||
// Checks The Access and notify requester if requester access it not allowed for that command
|
||||
if (!AdminCommandAccessRights.getInstance().hasAccess(_command, player.getAccessLevel()))
|
||||
if (!AdminData.getInstance().hasAccess(_command, player.getAccessLevel()))
|
||||
{
|
||||
player.sendMessage("You don't have the access right to use this command!");
|
||||
LOGGER.warning("Character " + player.getName() + " tried to use admin command " + _command + ", but doesn't have access to it!");
|
||||
|
@ -17,7 +17,7 @@
|
||||
package org.l2jmobius.gameserver.network.serverpackets;
|
||||
|
||||
import org.l2jmobius.gameserver.datatables.AccessLevel;
|
||||
import org.l2jmobius.gameserver.datatables.sql.AccessLevels;
|
||||
import org.l2jmobius.gameserver.datatables.xml.AdminData;
|
||||
import org.l2jmobius.gameserver.instancemanager.CastleManager;
|
||||
import org.l2jmobius.gameserver.instancemanager.FortManager;
|
||||
import org.l2jmobius.gameserver.model.SiegeClan;
|
||||
@ -40,7 +40,7 @@ public class Die extends GameServerPacket
|
||||
private final boolean _fake;
|
||||
private boolean _sweepable;
|
||||
private boolean _canTeleport;
|
||||
private AccessLevel _access = AccessLevels.getInstance()._userAccessLevel;
|
||||
private AccessLevel _access = AdminData.getInstance()._userAccessLevel;
|
||||
private org.l2jmobius.gameserver.model.clan.Clan _clan;
|
||||
Creature _creature;
|
||||
|
||||
|
@ -18,9 +18,9 @@ package org.l2jmobius.gameserver.network.serverpackets;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.entity.Hero;
|
||||
import org.l2jmobius.gameserver.model.entity.olympiad.Olympiad;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
/**
|
||||
* Format: (ch) d [SdSdSdd] d: size [ S: hero name d: hero class ID S: hero clan name d: hero clan crest id S: hero ally name d: hero Ally id d: count ]
|
||||
@ -50,12 +50,12 @@ public class ExHeroList extends GameServerPacket
|
||||
{
|
||||
final StatsSet hero = _heroList.get(heroId);
|
||||
writeS(hero.getString(Olympiad.CHAR_NAME));
|
||||
writeD(hero.getInteger(Olympiad.CLASS_ID));
|
||||
writeD(hero.getInt(Olympiad.CLASS_ID));
|
||||
writeS(hero.getString(Hero.CLAN_NAME, ""));
|
||||
writeD(hero.getInteger(Hero.CLAN_CREST, 0));
|
||||
writeD(hero.getInt(Hero.CLAN_CREST, 0));
|
||||
writeS(hero.getString(Hero.ALLY_NAME, ""));
|
||||
writeD(hero.getInteger(Hero.ALLY_CREST, 0));
|
||||
writeD(hero.getInteger(Hero.COUNT));
|
||||
writeD(hero.getInt(Hero.ALLY_CREST, 0));
|
||||
writeD(hero.getInt(Hero.COUNT));
|
||||
}
|
||||
}
|
||||
}
|
@ -16,11 +16,11 @@
|
||||
*/
|
||||
package org.l2jmobius.gameserver.network.serverpackets;
|
||||
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.model.entity.sevensigns.SevenSigns;
|
||||
import org.l2jmobius.gameserver.model.entity.sevensigns.SevenSignsFestival;
|
||||
import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
/**
|
||||
* Seven Signs Record Update packet type id 0xf5 format: c cc (Page Num = 1 -> 4, period) 1: [ddd cc dd ddd c ddd c] 2: [hc [cd (dc (S))] 3: [ccc (cccc)] 4: [(cchh)]
|
||||
|
@ -17,6 +17,7 @@
|
||||
package org.l2jmobius.gameserver.skills.handlers;
|
||||
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
@ -24,7 +25,6 @@ import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.EtcStatusUpdate;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||
import org.l2jmobius.gameserver.skills.effects.EffectCharge;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
public class SkillCharge extends Skill
|
||||
{
|
||||
|
@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.skills.handlers;
|
||||
|
||||
import org.l2jmobius.gameserver.model.Effect;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.ItemInstance;
|
||||
@ -28,7 +29,6 @@ import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||
import org.l2jmobius.gameserver.skills.BaseStats;
|
||||
import org.l2jmobius.gameserver.skills.Formulas;
|
||||
import org.l2jmobius.gameserver.skills.effects.EffectCharge;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.item.WeaponType;
|
||||
|
||||
public class SkillChargeDmg extends Skill
|
||||
@ -39,7 +39,7 @@ public class SkillChargeDmg extends Skill
|
||||
public SkillChargeDmg(StatsSet set)
|
||||
{
|
||||
super(set);
|
||||
chargeSkillId = set.getInteger("charge_skill_id");
|
||||
chargeSkillId = set.getInt("charge_skill_id");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -17,6 +17,7 @@
|
||||
package org.l2jmobius.gameserver.skills.handlers;
|
||||
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
@ -24,7 +25,6 @@ import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.EtcStatusUpdate;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||
import org.l2jmobius.gameserver.skills.effects.EffectCharge;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
public class SkillChargeEffect extends Skill
|
||||
{
|
||||
@ -33,7 +33,7 @@ public class SkillChargeEffect extends Skill
|
||||
public SkillChargeEffect(StatsSet set)
|
||||
{
|
||||
super(set);
|
||||
chargeSkillId = set.getInteger("charge_skill_id");
|
||||
chargeSkillId = set.getInt("charge_skill_id");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -16,9 +16,12 @@
|
||||
*/
|
||||
package org.l2jmobius.gameserver.skills.handlers;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.l2jmobius.commons.util.Rnd;
|
||||
import org.l2jmobius.gameserver.idfactory.IdFactory;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.ItemInstance;
|
||||
@ -26,23 +29,22 @@ import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.ItemList;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
/**
|
||||
* @author Nemesiss
|
||||
*/
|
||||
public class SkillCreateItem extends Skill
|
||||
{
|
||||
private final int[] _createItemId;
|
||||
private final List<Integer> _createItemId;
|
||||
private final int _createItemCount;
|
||||
private final int _randomCount;
|
||||
|
||||
public SkillCreateItem(StatsSet set)
|
||||
{
|
||||
super(set);
|
||||
_createItemId = set.getIntegerArray("create_item_id");
|
||||
_createItemCount = set.getInteger("create_item_count", 0);
|
||||
_randomCount = set.getInteger("random_count", 1);
|
||||
_createItemId = set.getList("create_item_id", Integer.class);
|
||||
_createItemCount = set.getInt("create_item_count", 0);
|
||||
_randomCount = set.getInt("random_count", 1);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -61,8 +63,8 @@ public class SkillCreateItem extends Skill
|
||||
if (creature instanceof PlayerInstance)
|
||||
{
|
||||
final int count = _createItemCount * (Rnd.get(_randomCount) + 1);
|
||||
final int rndid = Rnd.get(_createItemId.length);
|
||||
giveItems(player, _createItemId[rndid], count);
|
||||
final int rndId = Rnd.get(_createItemId.size());
|
||||
giveItems(player, _createItemId.get(rndId), count);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -17,12 +17,12 @@
|
||||
package org.l2jmobius.gameserver.skills.handlers;
|
||||
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.ActionFailed;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
public class SkillDefault extends Skill
|
||||
{
|
||||
|
@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.skills.handlers;
|
||||
|
||||
import org.l2jmobius.gameserver.model.Effect;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.CubicInstance;
|
||||
@ -27,7 +28,6 @@ import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.StatusUpdate;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||
import org.l2jmobius.gameserver.skills.Formulas;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
public class SkillDrain extends Skill
|
||||
{
|
||||
@ -40,7 +40,7 @@ public class SkillDrain extends Skill
|
||||
super(set);
|
||||
|
||||
_absorbPart = set.getFloat("absorbPart", 0.f);
|
||||
_absorbAbs = set.getInteger("absorbAbs", 0);
|
||||
_absorbAbs = set.getInt("absorbAbs", 0);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -18,12 +18,12 @@ package org.l2jmobius.gameserver.skills.handlers;
|
||||
|
||||
import org.l2jmobius.gameserver.model.Effect;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||
import org.l2jmobius.gameserver.skills.Formulas;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
public class SkillElemental extends Skill
|
||||
{
|
||||
@ -35,11 +35,11 @@ public class SkillElemental extends Skill
|
||||
super(set);
|
||||
|
||||
_seeds = new int[3];
|
||||
_seeds[0] = set.getInteger("seed1", 0);
|
||||
_seeds[1] = set.getInteger("seed2", 0);
|
||||
_seeds[2] = set.getInteger("seed3", 0);
|
||||
_seeds[0] = set.getInt("seed1", 0);
|
||||
_seeds[1] = set.getInt("seed2", 0);
|
||||
_seeds[2] = set.getInt("seed3", 0);
|
||||
|
||||
if (set.getInteger("seed_any", 0) == 1)
|
||||
if (set.getInt("seed_any", 0) == 1)
|
||||
{
|
||||
_seedAny = true;
|
||||
}
|
||||
|
@ -18,10 +18,10 @@ package org.l2jmobius.gameserver.skills.handlers;
|
||||
|
||||
import org.l2jmobius.gameserver.model.Effect;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.skills.effects.EffectSeed;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
public class SkillSeed extends Skill
|
||||
{
|
||||
|
@ -20,12 +20,12 @@ import org.l2jmobius.gameserver.datatables.sql.NpcTable;
|
||||
import org.l2jmobius.gameserver.idfactory.IdFactory;
|
||||
import org.l2jmobius.gameserver.model.Location;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.World;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.EffectPointInstance;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.creatures.NpcTemplate;
|
||||
|
||||
public class SkillSignet extends Skill
|
||||
@ -36,8 +36,8 @@ public class SkillSignet extends Skill
|
||||
public SkillSignet(StatsSet set)
|
||||
{
|
||||
super(set);
|
||||
_effectNpcId = set.getInteger("effectNpcId", -1);
|
||||
effectId = set.getInteger("effectId", -1);
|
||||
_effectNpcId = set.getInt("effectNpcId", -1);
|
||||
effectId = set.getInt("effectId", -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -17,9 +17,9 @@
|
||||
package org.l2jmobius.gameserver.skills.handlers;
|
||||
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
public class SkillSignetCasttime extends Skill
|
||||
{
|
||||
@ -29,8 +29,8 @@ public class SkillSignetCasttime extends Skill
|
||||
public SkillSignetCasttime(StatsSet set)
|
||||
{
|
||||
super(set);
|
||||
_effectNpcId = set.getInteger("effectNpcId", -1);
|
||||
effectId = set.getInteger("effectId", -1);
|
||||
_effectNpcId = set.getInt("effectNpcId", -1);
|
||||
effectId = set.getInt("effectId", -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -21,6 +21,7 @@ import org.l2jmobius.gameserver.datatables.sql.NpcTable;
|
||||
import org.l2jmobius.gameserver.datatables.xml.ExperienceData;
|
||||
import org.l2jmobius.gameserver.idfactory.IdFactory;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.World;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
@ -32,7 +33,6 @@ import org.l2jmobius.gameserver.model.actor.instance.SummonInstance;
|
||||
import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.PetInfo;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.creatures.NpcTemplate;
|
||||
|
||||
public class SkillSummon extends Skill
|
||||
@ -56,21 +56,21 @@ public class SkillSummon extends Skill
|
||||
{
|
||||
super(set);
|
||||
|
||||
_npcId = set.getInteger("npcId", 0); // default for undescribed skills
|
||||
_npcId = set.getInt("npcId", 0); // default for undescribed skills
|
||||
_expPenalty = set.getFloat("expPenalty", 0.f);
|
||||
_isCubic = set.getBool("isCubic", false);
|
||||
_isCubic = set.getBoolean("isCubic", false);
|
||||
|
||||
_activationtime = set.getInteger("activationtime", 8);
|
||||
_activationchance = set.getInteger("activationchance", 30);
|
||||
_activationtime = set.getInt("activationtime", 8);
|
||||
_activationchance = set.getInt("activationchance", 30);
|
||||
|
||||
_summonTotalLifeTime = set.getInteger("summonTotalLifeTime", 1200000); // 20 minutes default
|
||||
_summonTimeLostIdle = set.getInteger("summonTimeLostIdle", 0);
|
||||
_summonTimeLostActive = set.getInteger("summonTimeLostActive", 0);
|
||||
_summonTotalLifeTime = set.getInt("summonTotalLifeTime", 1200000); // 20 minutes default
|
||||
_summonTimeLostIdle = set.getInt("summonTimeLostIdle", 0);
|
||||
_summonTimeLostActive = set.getInt("summonTimeLostActive", 0);
|
||||
|
||||
_itemConsumeOT = set.getInteger("itemConsumeCountOT", 0);
|
||||
_itemConsumeIdOT = set.getInteger("itemConsumeIdOT", 0);
|
||||
_itemConsumeTime = set.getInteger("itemConsumeTime", 0);
|
||||
_itemConsumeSteps = set.getInteger("itemConsumeSteps", 0);
|
||||
_itemConsumeOT = set.getInt("itemConsumeCountOT", 0);
|
||||
_itemConsumeIdOT = set.getInt("itemConsumeIdOT", 0);
|
||||
_itemConsumeTime = set.getInt("itemConsumeTime", 0);
|
||||
_itemConsumeSteps = set.getInt("itemConsumeSteps", 0);
|
||||
}
|
||||
|
||||
public boolean checkCondition(Creature creature)
|
||||
|
@ -16,6 +16,8 @@
|
||||
*/
|
||||
package org.l2jmobius.gameserver.templates;
|
||||
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
|
||||
/**
|
||||
* This class represents a Newbie Helper Buff Author: Ayor
|
||||
*/
|
||||
@ -46,10 +48,10 @@ public class HelperBuff
|
||||
*/
|
||||
public HelperBuff(StatsSet set)
|
||||
{
|
||||
_lowerLevel = set.getInteger("lowerLevel");
|
||||
_upperLevel = set.getInteger("upperLevel");
|
||||
_skillID = set.getInteger("skillID");
|
||||
_skillLevel = set.getInteger("skillLevel");
|
||||
_lowerLevel = set.getInt("lowerLevel");
|
||||
_upperLevel = set.getInt("upperLevel");
|
||||
_skillID = set.getInt("skillID");
|
||||
_skillLevel = set.getInt("skillLevel");
|
||||
|
||||
if ("false".equals(set.getString("isMagicClass")))
|
||||
{
|
||||
|
@ -1,641 +0,0 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package org.l2jmobius.gameserver.templates;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
/**
|
||||
* @author mkizub <BR>
|
||||
* This class is used in order to have a set of couples (key,value).<BR>
|
||||
* Methods deployed are accessors to the set (add/get value from its key) and addition of a whole set in the current one.
|
||||
*/
|
||||
public class StatsSet
|
||||
{
|
||||
private final Logger LOGGER = Logger.getLogger(StatsSet.class.getName());
|
||||
private final Map<String, Object> _set = new HashMap<>();
|
||||
|
||||
/**
|
||||
* Returns the set of values
|
||||
* @return HashMap
|
||||
*/
|
||||
public Map<String, Object> getSet()
|
||||
{
|
||||
return _set;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add a set of couple values in the current set
|
||||
* @param newSet : StatsSet pointing out the list of couples to add in the current set
|
||||
*/
|
||||
public synchronized void add(StatsSet newSet)
|
||||
{
|
||||
final Map<String, Object> newMap = newSet.getSet();
|
||||
for (String key : newMap.keySet())
|
||||
{
|
||||
final Object value = newMap.get(key);
|
||||
_set.put(key, value);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the boolean associated to the key put in parameter ("name")
|
||||
* @param name : String designating the key in the set
|
||||
* @return boolean : value associated to the key
|
||||
*/
|
||||
public synchronized boolean getBool(String name)
|
||||
{
|
||||
final Object val = _set.get(name);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("Boolean value required, but not specified");
|
||||
}
|
||||
if (val instanceof Boolean)
|
||||
{
|
||||
return ((Boolean) val).booleanValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Boolean.parseBoolean((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Boolean value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the boolean associated to the key put in parameter ("name"). If the value associated to the key is null, this method returns the value of the parameter deflt.
|
||||
* @param name : String designating the key in the set
|
||||
* @param deflt : boolean designating the default value if value associated with the key is null
|
||||
* @return boolean : value of the key
|
||||
*/
|
||||
public synchronized boolean getBool(String name, boolean deflt)
|
||||
{
|
||||
final Object val = _set.get(name);
|
||||
if (val == null)
|
||||
{
|
||||
return deflt;
|
||||
}
|
||||
if (val instanceof Boolean)
|
||||
{
|
||||
return ((Boolean) val).booleanValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Boolean.parseBoolean((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Boolean value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the int associated to the key put in parameter ("name"). If the value associated to the key is null, this method returns the value of the parameter deflt.
|
||||
* @param name : String designating the key in the set
|
||||
* @param deflt : byte designating the default value if value associated with the key is null
|
||||
* @return byte : value associated to the key
|
||||
*/
|
||||
public synchronized byte getByte(String name, byte deflt)
|
||||
{
|
||||
final Object val = _set.get(name);
|
||||
if (val == null)
|
||||
{
|
||||
return deflt;
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).byteValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Byte.parseByte((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Byte value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the byte associated to the key put in parameter ("name").
|
||||
* @param name : String designating the key in the set
|
||||
* @return byte : value associated to the key
|
||||
*/
|
||||
public synchronized byte getByte(String name)
|
||||
{
|
||||
final Object val = _set.get(name);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("Byte value required, but not specified");
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).byteValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Byte.parseByte((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Byte value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the short associated to the key put in parameter ("name"). If the value associated to the key is null, this method returns the value of the parameter deflt.
|
||||
* @param name : String designating the key in the set
|
||||
* @param deflt : short designating the default value if value associated with the key is null
|
||||
* @return short : value associated to the key
|
||||
*/
|
||||
public synchronized short getShort(String name, short deflt)
|
||||
{
|
||||
final Object val = _set.get(name);
|
||||
if (val == null)
|
||||
{
|
||||
return deflt;
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).shortValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Short.parseShort((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Short value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the short associated to the key put in parameter ("name").
|
||||
* @param name : String designating the key in the set
|
||||
* @return short : value associated to the key
|
||||
*/
|
||||
public synchronized short getShort(String name)
|
||||
{
|
||||
final Object val = _set.get(name);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("Short value required, but not specified");
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).shortValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Short.parseShort((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Short value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the int associated to the key put in parameter ("name").
|
||||
* @param name : String designating the key in the set
|
||||
* @return int : value associated to the key
|
||||
*/
|
||||
public synchronized int getInteger(String name)
|
||||
{
|
||||
final Object val = _set.get(name);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("Integer value required, but not specified");
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).intValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Integer.parseInt((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Integer value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the int associated to the key put in parameter ("name"). If the value associated to the key is null, this method returns the value of the parameter deflt.
|
||||
* @param name : String designating the key in the set
|
||||
* @param deflt : int designating the default value if value associated with the key is null
|
||||
* @return int : value associated to the key
|
||||
*/
|
||||
public synchronized int getInteger(String name, int deflt)
|
||||
{
|
||||
final Object val = _set.get(name);
|
||||
if (val == null)
|
||||
{
|
||||
return deflt;
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).intValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Integer.parseInt((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Integer value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the int[] associated to the key put in parameter ("name"). If the value associated to the key is null, this method returns the value of the parameter deflt.
|
||||
* @param name : String designating the key in the set
|
||||
* @return int[] : value associated to the key
|
||||
*/
|
||||
public synchronized int[] getIntegerArray(String name)
|
||||
{
|
||||
final Object val = _set.get(name);
|
||||
if (val == null)
|
||||
{
|
||||
throw new RuntimeException();
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
final int[] result =
|
||||
{
|
||||
((Number) val).intValue()
|
||||
};
|
||||
return result;
|
||||
}
|
||||
int c = 0;
|
||||
final String[] vals = ((String) val).split(";");
|
||||
final int[] result = new int[vals.length];
|
||||
for (String v : vals)
|
||||
{
|
||||
try
|
||||
{
|
||||
result[c] = Integer.parseInt(v);
|
||||
c++;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Integer value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the long associated to the key put in parameter ("name").
|
||||
* @param name : String designating the key in the set
|
||||
* @return long : value associated to the key
|
||||
*/
|
||||
public synchronized long getLong(String name)
|
||||
{
|
||||
final Object val = _set.get(name);
|
||||
if (val == null)
|
||||
{
|
||||
throw new RuntimeException();
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).longValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Long.parseLong((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Integer value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the long associated to the key put in parameter ("name"). If the value associated to the key is null, this method returns the value of the parameter deflt.
|
||||
* @param name : String designating the key in the set
|
||||
* @param deflt : long designating the default value if value associated with the key is null
|
||||
* @return long : value associated to the key
|
||||
*/
|
||||
public synchronized long getLong(String name, int deflt)
|
||||
{
|
||||
final Object val = _set.get(name);
|
||||
if (val == null)
|
||||
{
|
||||
return deflt;
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).longValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Long.parseLong((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Integer value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the float associated to the key put in parameter ("name").
|
||||
* @param name : String designating the key in the set
|
||||
* @return float : value associated to the key
|
||||
*/
|
||||
public synchronized float getFloat(String name)
|
||||
{
|
||||
final Object val = _set.get(name);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("Float value required, but not specified");
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).floatValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return (float) Double.parseDouble((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Float value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the float associated to the key put in parameter ("name"). If the value associated to the key is null, this method returns the value of the parameter deflt.
|
||||
* @param name : String designating the key in the set
|
||||
* @param deflt : float designating the default value if value associated with the key is null
|
||||
* @return float : value associated to the key
|
||||
*/
|
||||
public synchronized float getFloat(String name, float deflt)
|
||||
{
|
||||
final Object val = _set.get(name);
|
||||
if (val == null)
|
||||
{
|
||||
return deflt;
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).floatValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return (float) Double.parseDouble((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Float value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the double associated to the key put in parameter ("name").
|
||||
* @param name : String designating the key in the set
|
||||
* @return double : value associated to the key
|
||||
*/
|
||||
public synchronized double getDouble(String name)
|
||||
{
|
||||
final Object val = _set.get(name);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("Float value required, but not specified");
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).doubleValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Double.parseDouble((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Float value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the double associated to the key put in parameter ("name"). If the value associated to the key is null, this method returns the value of the parameter deflt.
|
||||
* @param name : String designating the key in the set
|
||||
* @param deflt : float designating the default value if value associated with the key is null
|
||||
* @return double : value associated to the key
|
||||
*/
|
||||
public synchronized double getDouble(String name, float deflt)
|
||||
{
|
||||
final Object val = _set.get(name);
|
||||
if (val == null)
|
||||
{
|
||||
return deflt;
|
||||
}
|
||||
if (val instanceof Number)
|
||||
{
|
||||
return ((Number) val).doubleValue();
|
||||
}
|
||||
try
|
||||
{
|
||||
return Double.parseDouble((String) val);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Float value required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the String associated to the key put in parameter ("name").
|
||||
* @param name : String designating the key in the set
|
||||
* @return String : value associated to the key
|
||||
*/
|
||||
public synchronized String getString(String name)
|
||||
{
|
||||
final Object val = _set.get(name);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("String value required, but not specified");
|
||||
}
|
||||
return String.valueOf(val);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the String associated to the key put in parameter ("name"). If the value associated to the key is null, this method returns the value of the parameter deflt.
|
||||
* @param name : String designating the key in the set
|
||||
* @param deflt : String designating the default value if value associated with the key is null
|
||||
* @return String : value associated to the key
|
||||
*/
|
||||
public synchronized String getString(String name, String deflt)
|
||||
{
|
||||
final Object val = _set.get(name);
|
||||
if (val == null)
|
||||
{
|
||||
return deflt;
|
||||
}
|
||||
return String.valueOf(val);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns an enumeration of <T> from the set
|
||||
* @param <T> : Class of the enumeration returned
|
||||
* @param name : String designating the key in the set
|
||||
* @param enumClass : Class designating the class of the value associated with the key in the set
|
||||
* @return Enum<T>
|
||||
*/
|
||||
@SuppressWarnings("unchecked")
|
||||
public synchronized <T extends Enum<T>> T getEnum(String name, Class<T> enumClass)
|
||||
{
|
||||
final Object val = _set.get(name);
|
||||
if (val == null)
|
||||
{
|
||||
throw new IllegalArgumentException("Enum value of type " + enumClass.getName() + " required, but not specified");
|
||||
}
|
||||
if (enumClass.isInstance(val))
|
||||
{
|
||||
return (T) val;
|
||||
}
|
||||
try
|
||||
{
|
||||
return Enum.valueOf(enumClass, String.valueOf(val));
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Enum value of type " + enumClass.getName() + "required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns an enumeration of <T> from the set. If the enumeration is empty, the method returns the value of the parameter "deflt".
|
||||
* @param <T> : Class of the enumeration returned
|
||||
* @param name : String designating the key in the set
|
||||
* @param enumClass : Class designating the class of the value associated with the key in the set
|
||||
* @param deflt : <T> designating the value by default
|
||||
* @return Enum<T>
|
||||
*/
|
||||
@SuppressWarnings("unchecked")
|
||||
public synchronized <T extends Enum<T>> T getEnum(String name, Class<T> enumClass, T deflt)
|
||||
{
|
||||
final Object val = _set.get(name);
|
||||
if (val == null)
|
||||
{
|
||||
return deflt;
|
||||
}
|
||||
if (enumClass.isInstance(val))
|
||||
{
|
||||
return (T) val;
|
||||
}
|
||||
try
|
||||
{
|
||||
return Enum.valueOf(enumClass, String.valueOf(val));
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new IllegalArgumentException("Enum value of type " + enumClass.getName() + "required, but found: " + val);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the String hold in param "value" for the key "name"
|
||||
* @param name : String designating the key in the set
|
||||
* @param value : String corresponding to the value associated with the key
|
||||
*/
|
||||
public synchronized void set(String name, String value)
|
||||
{
|
||||
_set.put(name, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the boolean hold in param "value" for the key "name"
|
||||
* @param name : String designating the key in the set
|
||||
* @param value : boolean corresponding to the value associated with the key
|
||||
*/
|
||||
public synchronized void set(String name, boolean value)
|
||||
{
|
||||
_set.put(name, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the int hold in param "value" for the key "name"
|
||||
* @param name : String designating the key in the set
|
||||
* @param value : int corresponding to the value associated with the key
|
||||
*/
|
||||
public synchronized void set(String name, int value)
|
||||
{
|
||||
_set.put(name, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the double hold in param "value" for the key "name"
|
||||
* @param name : String designating the key in the set
|
||||
* @param value : double corresponding to the value associated with the key
|
||||
*/
|
||||
public synchronized void set(String name, double value)
|
||||
{
|
||||
_set.put(name, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the long hold in param "value" for the key "name"
|
||||
* @param name : String designating the key in the set
|
||||
* @param value : double corresponding to the value associated with the key
|
||||
*/
|
||||
public synchronized void set(String name, long value)
|
||||
{
|
||||
_set.put(name, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the Enum hold in param "value" for the key "name"
|
||||
* @param name : String designating the key in the set
|
||||
* @param value : Enum corresponding to the value associated with the key
|
||||
*/
|
||||
public synchronized void set(String name, Enum<?> value)
|
||||
{
|
||||
_set.put(name, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Safe version of "set". Expected values are within [min, max[<br>
|
||||
* Add the int hold in param "value" for the key "name".
|
||||
* @param name : String designating the key in the set
|
||||
* @param value : int corresponding to the value associated with the key
|
||||
* @param min
|
||||
* @param max
|
||||
* @param reference
|
||||
*/
|
||||
public synchronized void safeSet(String name, int value, int min, int max, String reference)
|
||||
{
|
||||
assert ((min > max) || ((value >= min) && (value < max)));
|
||||
|
||||
if ((min <= max) && ((value < min) || (value >= max)))
|
||||
{
|
||||
LOGGER.info("[StatsSet][safeSet] Incorrect value: " + value + "for: " + name + "Ref: " + reference);
|
||||
}
|
||||
|
||||
set(name, value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString()
|
||||
{
|
||||
return "StatsSet [_set=" + _set + "]";
|
||||
}
|
||||
}
|
@ -16,7 +16,7 @@
|
||||
*/
|
||||
package org.l2jmobius.gameserver.templates.creatures;
|
||||
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
|
||||
/**
|
||||
* @version $Revision: 1.2.4.6 $ $Date: 2005/04/02 15:57:51 $
|
||||
@ -99,72 +99,72 @@ public class CreatureTemplate
|
||||
public CreatureTemplate(StatsSet set)
|
||||
{
|
||||
// Base stats
|
||||
baseSTR = set.getInteger("baseSTR");
|
||||
baseCON = set.getInteger("baseCON");
|
||||
baseDEX = set.getInteger("baseDEX");
|
||||
baseINT = set.getInteger("baseINT");
|
||||
baseWIT = set.getInteger("baseWIT");
|
||||
baseMEN = set.getInteger("baseMEN");
|
||||
baseSTR = set.getInt("baseSTR");
|
||||
baseCON = set.getInt("baseCON");
|
||||
baseDEX = set.getInt("baseDEX");
|
||||
baseINT = set.getInt("baseINT");
|
||||
baseWIT = set.getInt("baseWIT");
|
||||
baseMEN = set.getInt("baseMEN");
|
||||
baseHpMax = set.getFloat("baseHpMax");
|
||||
baseCpMax = set.getFloat("baseCpMax");
|
||||
baseMpMax = set.getFloat("baseMpMax");
|
||||
baseHpReg = set.getFloat("baseHpReg");
|
||||
baseMpReg = set.getFloat("baseMpReg");
|
||||
basePAtk = set.getInteger("basePAtk");
|
||||
baseMAtk = set.getInteger("baseMAtk");
|
||||
basePDef = set.getInteger("basePDef");
|
||||
baseMDef = set.getInteger("baseMDef");
|
||||
basePAtkSpd = set.getInteger("basePAtkSpd");
|
||||
baseMAtkSpd = set.getInteger("baseMAtkSpd");
|
||||
basePAtk = set.getInt("basePAtk");
|
||||
baseMAtk = set.getInt("baseMAtk");
|
||||
basePDef = set.getInt("basePDef");
|
||||
baseMDef = set.getInt("baseMDef");
|
||||
basePAtkSpd = set.getInt("basePAtkSpd");
|
||||
baseMAtkSpd = set.getInt("baseMAtkSpd");
|
||||
baseMReuseRate = set.getFloat("baseMReuseDelay", 1.f);
|
||||
baseShldDef = set.getInteger("baseShldDef");
|
||||
baseAtkRange = set.getInteger("baseAtkRange");
|
||||
baseShldRate = set.getInteger("baseShldRate");
|
||||
baseCritRate = set.getInteger("baseCritRate");
|
||||
baseMCritRate = set.getInteger("baseMCritRate", 5);
|
||||
baseWalkSpd = set.getInteger("baseWalkSpd");
|
||||
baseRunSpd = set.getInteger("baseRunSpd");
|
||||
baseShldDef = set.getInt("baseShldDef");
|
||||
baseAtkRange = set.getInt("baseAtkRange");
|
||||
baseShldRate = set.getInt("baseShldRate");
|
||||
baseCritRate = set.getInt("baseCritRate");
|
||||
baseMCritRate = set.getInt("baseMCritRate", 5);
|
||||
baseWalkSpd = set.getInt("baseWalkSpd");
|
||||
baseRunSpd = set.getInt("baseRunSpd");
|
||||
|
||||
// SpecialStats
|
||||
baseBreath = set.getInteger("baseBreath", 100);
|
||||
baseAggression = set.getInteger("baseAggression", 0);
|
||||
baseBleed = set.getInteger("baseBleed", 0);
|
||||
basePoison = set.getInteger("basePoison", 0);
|
||||
baseStun = set.getInteger("baseStun", 0);
|
||||
baseRoot = set.getInteger("baseRoot", 0);
|
||||
baseMovement = set.getInteger("baseMovement", 0);
|
||||
baseConfusion = set.getInteger("baseConfusion", 0);
|
||||
baseSleep = set.getInteger("baseSleep", 0);
|
||||
baseFire = set.getInteger("baseFire", 0);
|
||||
baseWind = set.getInteger("baseWind", 0);
|
||||
baseWater = set.getInteger("baseWater", 0);
|
||||
baseEarth = set.getInteger("baseEarth", 0);
|
||||
baseHoly = set.getInteger("baseHoly", 0);
|
||||
baseDark = set.getInteger("baseDark", 0);
|
||||
baseAggressionVuln = set.getInteger("baseAaggressionVuln", 1);
|
||||
baseBleedVuln = set.getInteger("baseBleedVuln", 1);
|
||||
basePoisonVuln = set.getInteger("basePoisonVuln", 1);
|
||||
baseStunVuln = set.getInteger("baseStunVuln", 1);
|
||||
baseRootVuln = set.getInteger("baseRootVuln", 1);
|
||||
baseMovementVuln = set.getInteger("baseMovementVuln", 1);
|
||||
baseConfusionVuln = set.getInteger("baseConfusionVuln", 1);
|
||||
baseSleepVuln = set.getInteger("baseSleepVuln", 1);
|
||||
baseFireVuln = set.getInteger("baseFireVuln", 1);
|
||||
baseWindVuln = set.getInteger("baseWindVuln", 1);
|
||||
baseWaterVuln = set.getInteger("baseWaterVuln", 1);
|
||||
baseEarthVuln = set.getInteger("baseEarthVuln", 1);
|
||||
baseHolyVuln = set.getInteger("baseHolyVuln", 1);
|
||||
baseDarkVuln = set.getInteger("baseDarkVuln", 1);
|
||||
baseCritVuln = set.getInteger("baseCritVuln", 1);
|
||||
baseBreath = set.getInt("baseBreath", 100);
|
||||
baseAggression = set.getInt("baseAggression", 0);
|
||||
baseBleed = set.getInt("baseBleed", 0);
|
||||
basePoison = set.getInt("basePoison", 0);
|
||||
baseStun = set.getInt("baseStun", 0);
|
||||
baseRoot = set.getInt("baseRoot", 0);
|
||||
baseMovement = set.getInt("baseMovement", 0);
|
||||
baseConfusion = set.getInt("baseConfusion", 0);
|
||||
baseSleep = set.getInt("baseSleep", 0);
|
||||
baseFire = set.getInt("baseFire", 0);
|
||||
baseWind = set.getInt("baseWind", 0);
|
||||
baseWater = set.getInt("baseWater", 0);
|
||||
baseEarth = set.getInt("baseEarth", 0);
|
||||
baseHoly = set.getInt("baseHoly", 0);
|
||||
baseDark = set.getInt("baseDark", 0);
|
||||
baseAggressionVuln = set.getInt("baseAaggressionVuln", 1);
|
||||
baseBleedVuln = set.getInt("baseBleedVuln", 1);
|
||||
basePoisonVuln = set.getInt("basePoisonVuln", 1);
|
||||
baseStunVuln = set.getInt("baseStunVuln", 1);
|
||||
baseRootVuln = set.getInt("baseRootVuln", 1);
|
||||
baseMovementVuln = set.getInt("baseMovementVuln", 1);
|
||||
baseConfusionVuln = set.getInt("baseConfusionVuln", 1);
|
||||
baseSleepVuln = set.getInt("baseSleepVuln", 1);
|
||||
baseFireVuln = set.getInt("baseFireVuln", 1);
|
||||
baseWindVuln = set.getInt("baseWindVuln", 1);
|
||||
baseWaterVuln = set.getInt("baseWaterVuln", 1);
|
||||
baseEarthVuln = set.getInt("baseEarthVuln", 1);
|
||||
baseHolyVuln = set.getInt("baseHolyVuln", 1);
|
||||
baseDarkVuln = set.getInt("baseDarkVuln", 1);
|
||||
baseCritVuln = set.getInt("baseCritVuln", 1);
|
||||
|
||||
isUndead = set.getInteger("isUndead", 0) == 1;
|
||||
isUndead = set.getInt("isUndead", 0) == 1;
|
||||
|
||||
// C4 Stats
|
||||
baseMpConsumeRate = set.getInteger("baseMpConsumeRate", 0);
|
||||
baseHpConsumeRate = set.getInteger("baseHpConsumeRate", 0);
|
||||
baseMpConsumeRate = set.getInt("baseMpConsumeRate", 0);
|
||||
baseHpConsumeRate = set.getInt("baseHpConsumeRate", 0);
|
||||
|
||||
// Geometry
|
||||
collisionRadius = set.getInteger("collision_radius");
|
||||
collisionHeight = set.getInteger("collision_height");
|
||||
collisionRadius = set.getInt("collision_radius");
|
||||
collisionHeight = set.getInt("collision_height");
|
||||
}
|
||||
}
|
||||
|
@ -26,10 +26,10 @@ import org.l2jmobius.gameserver.model.DropCategory;
|
||||
import org.l2jmobius.gameserver.model.DropData;
|
||||
import org.l2jmobius.gameserver.model.MinionData;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.base.ClassId;
|
||||
import org.l2jmobius.gameserver.model.quest.Quest;
|
||||
import org.l2jmobius.gameserver.skills.Stats;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
/**
|
||||
* This cl contains all generic data of a Spawn object.<BR>
|
||||
@ -134,21 +134,21 @@ public class NpcTemplate extends CreatureTemplate
|
||||
public NpcTemplate(StatsSet set, boolean custom)
|
||||
{
|
||||
super(set);
|
||||
npcId = set.getInteger("npcId");
|
||||
idTemplate = set.getInteger("idTemplate");
|
||||
npcId = set.getInt("npcId");
|
||||
idTemplate = set.getInt("idTemplate");
|
||||
type = set.getString("type");
|
||||
name = set.getString("name");
|
||||
serverSideName = set.getBool("serverSideName");
|
||||
serverSideName = set.getBoolean("serverSideName");
|
||||
title = set.getString("title");
|
||||
serverSideTitle = set.getBool("serverSideTitle");
|
||||
serverSideTitle = set.getBoolean("serverSideTitle");
|
||||
sex = set.getString("sex");
|
||||
level = set.getByte("level");
|
||||
rewardExp = set.getInteger("rewardExp");
|
||||
rewardSp = set.getInteger("rewardSp");
|
||||
aggroRange = set.getInteger("aggroRange");
|
||||
rhand = set.getInteger("rhand");
|
||||
lhand = set.getInteger("lhand");
|
||||
armor = set.getInteger("armor");
|
||||
rewardExp = set.getInt("rewardExp");
|
||||
rewardSp = set.getInt("rewardSp");
|
||||
aggroRange = set.getInt("aggroRange");
|
||||
rhand = set.getInt("rhand");
|
||||
lhand = set.getInt("lhand");
|
||||
armor = set.getInt("armor");
|
||||
final String f = set.getString("factionId", null);
|
||||
if (f == null)
|
||||
{
|
||||
@ -158,8 +158,8 @@ public class NpcTemplate extends CreatureTemplate
|
||||
{
|
||||
factionId = f.intern();
|
||||
}
|
||||
factionRange = set.getInteger("factionRange", 0);
|
||||
absorbLevel = set.getInteger("absorb_level", 0);
|
||||
factionRange = set.getInt("factionRange", 0);
|
||||
absorbLevel = set.getInt("absorb_level", 0);
|
||||
absorbType = AbsorbCrystalType.valueOf(set.getString("absorb_type"));
|
||||
_npcStatsSet = set;
|
||||
_custom = custom;
|
||||
|
@ -20,9 +20,9 @@ import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.l2jmobius.gameserver.datatables.xml.ItemTable;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.base.ClassId;
|
||||
import org.l2jmobius.gameserver.model.base.Race;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.templates.item.Item;
|
||||
|
||||
/**
|
||||
@ -55,17 +55,17 @@ public class PlayerTemplate extends CreatureTemplate
|
||||
public PlayerTemplate(StatsSet set)
|
||||
{
|
||||
super(set);
|
||||
classId = ClassId.values()[set.getInteger("classId")];
|
||||
race = Race.values()[set.getInteger("raceId")];
|
||||
classId = ClassId.values()[set.getInt("classId")];
|
||||
race = Race.values()[set.getInt("raceId")];
|
||||
className = set.getString("className");
|
||||
_currentCollisionRadius = set.getInteger("collision_radius");
|
||||
_currentCollisionHeight = set.getInteger("collision_height");
|
||||
_currentCollisionRadius = set.getInt("collision_radius");
|
||||
_currentCollisionHeight = set.getInt("collision_height");
|
||||
|
||||
spawnX = set.getInteger("spawnX");
|
||||
spawnY = set.getInteger("spawnY");
|
||||
spawnZ = set.getInteger("spawnZ");
|
||||
spawnX = set.getInt("spawnX");
|
||||
spawnY = set.getInt("spawnY");
|
||||
spawnZ = set.getInt("spawnZ");
|
||||
|
||||
classBaseLevel = set.getInteger("classBaseLevel");
|
||||
classBaseLevel = set.getInt("classBaseLevel");
|
||||
lvlHpAdd = set.getFloat("lvlHpAdd");
|
||||
lvlHpMod = set.getFloat("lvlHpMod");
|
||||
lvlCpAdd = set.getFloat("lvlCpAdd");
|
||||
|
@ -21,12 +21,12 @@ import java.util.List;
|
||||
|
||||
import org.l2jmobius.gameserver.datatables.SkillTable;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.ItemInstance;
|
||||
import org.l2jmobius.gameserver.skills.Env;
|
||||
import org.l2jmobius.gameserver.skills.funcs.Func;
|
||||
import org.l2jmobius.gameserver.skills.funcs.FuncTemplate;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
/**
|
||||
* This class is dedicated to the management of armors.
|
||||
@ -55,14 +55,14 @@ public class Armor extends Item
|
||||
public Armor(ArmorType type, StatsSet set)
|
||||
{
|
||||
super(type, set);
|
||||
_avoidModifier = set.getInteger("avoid_modify");
|
||||
_pDef = set.getInteger("p_def");
|
||||
_mDef = set.getInteger("m_def");
|
||||
_mpBonus = set.getInteger("mp_bonus", 0);
|
||||
_hpBonus = set.getInteger("hp_bonus", 0);
|
||||
_avoidModifier = set.getInt("avoid_modify");
|
||||
_pDef = set.getInt("p_def");
|
||||
_mDef = set.getInt("m_def");
|
||||
_mpBonus = set.getInt("mp_bonus", 0);
|
||||
_hpBonus = set.getInt("hp_bonus", 0);
|
||||
|
||||
final int sId = set.getInteger("item_skill_id");
|
||||
final int sLv = set.getInteger("item_skill_lvl");
|
||||
final int sId = set.getInt("item_skill_id");
|
||||
final int sLv = set.getInt("item_skill_lvl");
|
||||
if ((sId > 0) && (sLv > 0))
|
||||
{
|
||||
_itemSkill = SkillTable.getInstance().getInfo(sId, sLv);
|
||||
|
@ -16,7 +16,7 @@
|
||||
*/
|
||||
package org.l2jmobius.gameserver.templates.item;
|
||||
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
|
||||
/**
|
||||
* This class is dedicated to the management of EtcItem.
|
||||
|
@ -16,7 +16,7 @@
|
||||
*/
|
||||
package org.l2jmobius.gameserver.templates.item;
|
||||
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
|
||||
public class Henna
|
||||
{
|
||||
@ -34,17 +34,17 @@ public class Henna
|
||||
|
||||
public Henna(StatsSet set)
|
||||
{
|
||||
symbolId = set.getInteger("symbol_id");
|
||||
symbolId = set.getInt("symbol_id");
|
||||
symbolName = ""; // set.getString("symbol_name");
|
||||
dye = set.getInteger("dye");
|
||||
price = set.getInteger("price");
|
||||
amount = set.getInteger("amount");
|
||||
statINT = set.getInteger("stat_INT");
|
||||
statSTR = set.getInteger("stat_STR");
|
||||
statCON = set.getInteger("stat_CON");
|
||||
statMEM = set.getInteger("stat_MEM");
|
||||
statDEX = set.getInteger("stat_DEX");
|
||||
statWIT = set.getInteger("stat_WIT");
|
||||
dye = set.getInt("dye");
|
||||
price = set.getInt("price");
|
||||
amount = set.getInt("amount");
|
||||
statINT = set.getInt("stat_INT");
|
||||
statSTR = set.getInt("stat_STR");
|
||||
statCON = set.getInt("stat_CON");
|
||||
statMEM = set.getInt("stat_MEM");
|
||||
statDEX = set.getInt("stat_DEX");
|
||||
statWIT = set.getInt("stat_WIT");
|
||||
}
|
||||
|
||||
public int getSymbolId()
|
||||
|
@ -22,13 +22,13 @@ import java.util.List;
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.gameserver.model.Effect;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.ItemInstance;
|
||||
import org.l2jmobius.gameserver.skills.Env;
|
||||
import org.l2jmobius.gameserver.skills.effects.EffectTemplate;
|
||||
import org.l2jmobius.gameserver.skills.funcs.Func;
|
||||
import org.l2jmobius.gameserver.skills.funcs.FuncTemplate;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
/**
|
||||
* This class contains all informations concerning the item (weapon, armor, etc).<BR>
|
||||
@ -163,13 +163,13 @@ public abstract class Item
|
||||
protected Item(Enum<?> type, StatsSet set)
|
||||
{
|
||||
_type = type;
|
||||
_itemId = set.getInteger("item_id");
|
||||
_itemId = set.getInt("item_id");
|
||||
_name = set.getString("name");
|
||||
_type1 = set.getInteger("type1"); // needed for item list (inventory)
|
||||
_type2 = set.getInteger("type2"); // different lists for armor, weapon, etc
|
||||
_weight = set.getInteger("weight");
|
||||
_crystallizable = set.getBool("crystallizable");
|
||||
_stackable = set.getBool("stackable", false);
|
||||
_type1 = set.getInt("type1"); // needed for item list (inventory)
|
||||
_type2 = set.getInt("type2"); // different lists for armor, weapon, etc
|
||||
_weight = set.getInt("weight");
|
||||
_crystallizable = set.getBoolean("crystallizable");
|
||||
_stackable = set.getBoolean("stackable", false);
|
||||
switch (set.getString("crystal_type", ""))
|
||||
{
|
||||
case "d":
|
||||
@ -203,7 +203,7 @@ public abstract class Item
|
||||
break;
|
||||
}
|
||||
}
|
||||
_duration = set.getInteger("duration");
|
||||
_duration = set.getInt("duration");
|
||||
switch (set.getString("bodypart", ""))
|
||||
{
|
||||
case "chest":
|
||||
@ -330,12 +330,12 @@ public abstract class Item
|
||||
}
|
||||
}
|
||||
|
||||
_referencePrice = set.getInteger("price");
|
||||
_crystalCount = set.getInteger("crystal_count", 0);
|
||||
_sellable = set.getBool("sellable", true);
|
||||
_dropable = set.getBool("dropable", true);
|
||||
_destroyable = set.getBool("destroyable", true);
|
||||
_tradeable = set.getBool("tradeable", true);
|
||||
_referencePrice = set.getInt("price");
|
||||
_crystalCount = set.getInt("crystal_count", 0);
|
||||
_sellable = set.getBoolean("sellable", true);
|
||||
_dropable = set.getBoolean("dropable", true);
|
||||
_destroyable = set.getBoolean("destroyable", true);
|
||||
_tradeable = set.getBoolean("tradeable", true);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -26,6 +26,7 @@ import org.l2jmobius.gameserver.handler.SkillHandler;
|
||||
import org.l2jmobius.gameserver.model.Effect;
|
||||
import org.l2jmobius.gameserver.model.Skill;
|
||||
import org.l2jmobius.gameserver.model.Skill.SkillType;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.ItemInstance;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.NpcInstance;
|
||||
@ -35,7 +36,6 @@ import org.l2jmobius.gameserver.skills.Env;
|
||||
import org.l2jmobius.gameserver.skills.conditions.ConditionGameChance;
|
||||
import org.l2jmobius.gameserver.skills.funcs.Func;
|
||||
import org.l2jmobius.gameserver.skills.funcs.FuncTemplate;
|
||||
import org.l2jmobius.gameserver.templates.StatsSet;
|
||||
|
||||
/**
|
||||
* This class is dedicated to the management of weapons.
|
||||
@ -82,37 +82,37 @@ public class Weapon extends Item
|
||||
public Weapon(WeaponType type, StatsSet set)
|
||||
{
|
||||
super(type, set);
|
||||
_soulShotCount = set.getInteger("soulshots");
|
||||
_spiritShotCount = set.getInteger("spiritshots");
|
||||
_pDam = set.getInteger("p_dam");
|
||||
_rndDam = set.getInteger("rnd_dam");
|
||||
_critical = set.getInteger("critical");
|
||||
_soulShotCount = set.getInt("soulshots");
|
||||
_spiritShotCount = set.getInt("spiritshots");
|
||||
_pDam = set.getInt("p_dam");
|
||||
_rndDam = set.getInt("rnd_dam");
|
||||
_critical = set.getInt("critical");
|
||||
_hitModifier = set.getDouble("hit_modify");
|
||||
_avoidModifier = set.getInteger("avoid_modify");
|
||||
_shieldDef = set.getInteger("shield_def");
|
||||
_avoidModifier = set.getInt("avoid_modify");
|
||||
_shieldDef = set.getInt("shield_def");
|
||||
_shieldDefRate = set.getDouble("shield_def_rate");
|
||||
_atkSpeed = set.getInteger("atk_speed");
|
||||
_atkReuse = set.getInteger("atk_reuse", type == WeaponType.BOW ? 1500 : 0);
|
||||
_mpConsume = set.getInteger("mp_consume");
|
||||
_mDam = set.getInteger("m_dam");
|
||||
_atkSpeed = set.getInt("atk_speed");
|
||||
_atkReuse = set.getInt("atk_reuse", type == WeaponType.BOW ? 1500 : 0);
|
||||
_mpConsume = set.getInt("mp_consume");
|
||||
_mDam = set.getInt("m_dam");
|
||||
|
||||
int sId = set.getInteger("item_skill_id");
|
||||
int sLv = set.getInteger("item_skill_lvl");
|
||||
int sId = set.getInt("item_skill_id");
|
||||
int sLv = set.getInt("item_skill_lvl");
|
||||
if ((sId > 0) && (sLv > 0))
|
||||
{
|
||||
_itemSkill = SkillTable.getInstance().getInfo(sId, sLv);
|
||||
}
|
||||
|
||||
sId = set.getInteger("enchant4_skill_id");
|
||||
sLv = set.getInteger("enchant4_skill_lvl");
|
||||
sId = set.getInt("enchant4_skill_id");
|
||||
sLv = set.getInt("enchant4_skill_lvl");
|
||||
if ((sId > 0) && (sLv > 0))
|
||||
{
|
||||
_enchant4Skill = SkillTable.getInstance().getInfo(sId, sLv);
|
||||
}
|
||||
|
||||
sId = set.getInteger("onCast_skill_id");
|
||||
sLv = set.getInteger("onCast_skill_lvl");
|
||||
int sCh = set.getInteger("onCast_skill_chance");
|
||||
sId = set.getInt("onCast_skill_id");
|
||||
sLv = set.getInt("onCast_skill_lvl");
|
||||
int sCh = set.getInt("onCast_skill_chance");
|
||||
if ((sId > 0) && (sLv > 0) && (sCh > 0))
|
||||
{
|
||||
final Skill skill = SkillTable.getInstance().getInfo(sId, sLv);
|
||||
@ -120,9 +120,9 @@ public class Weapon extends Item
|
||||
attachOnCast(skill);
|
||||
}
|
||||
|
||||
sId = set.getInteger("onCrit_skill_id");
|
||||
sLv = set.getInteger("onCrit_skill_lvl");
|
||||
sCh = set.getInteger("onCrit_skill_chance");
|
||||
sId = set.getInt("onCrit_skill_id");
|
||||
sLv = set.getInt("onCrit_skill_lvl");
|
||||
sCh = set.getInt("onCrit_skill_chance");
|
||||
if ((sId > 0) && (sLv > 0) && (sCh > 0))
|
||||
{
|
||||
final Skill skill = SkillTable.getInstance().getInfo(sId, sLv);
|
||||
|
@ -21,7 +21,7 @@ import java.util.logging.LogRecord;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.gameserver.datatables.GmListTable;
|
||||
import org.l2jmobius.gameserver.datatables.xml.AdminData;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
|
||||
/**
|
||||
@ -48,23 +48,23 @@ public class IllegalPlayerAction implements Runnable
|
||||
|
||||
switch (punishment)
|
||||
{
|
||||
case PUNISH_KICK:
|
||||
case PUNISH_KICK:
|
||||
{
|
||||
_actor.sendMessage("You will be kicked for illegal action, GM informed.");
|
||||
break;
|
||||
break;
|
||||
}
|
||||
case PUNISH_KICKBAN:
|
||||
case PUNISH_KICKBAN:
|
||||
{
|
||||
_actor.setAccessLevel(-100);
|
||||
_actor.setAccountAccesslevel(-100);
|
||||
_actor.sendMessage("You are banned for illegal action, GM informed.");
|
||||
break;
|
||||
break;
|
||||
}
|
||||
case PUNISH_JAIL:
|
||||
case PUNISH_JAIL:
|
||||
{
|
||||
_actor.sendMessage("Illegal action performed!");
|
||||
_actor.sendMessage("You will be teleported to GM Consultation Service area and jailed.");
|
||||
break;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -81,28 +81,28 @@ public class IllegalPlayerAction implements Runnable
|
||||
});
|
||||
_logAudit.log(record);
|
||||
|
||||
GmListTable.broadcastMessageToGMs(_message);
|
||||
AdminData.broadcastMessageToGMs(_message);
|
||||
|
||||
switch (_punishment)
|
||||
{
|
||||
case PUNISH_BROADCAST:
|
||||
case PUNISH_BROADCAST:
|
||||
{
|
||||
return;
|
||||
return;
|
||||
}
|
||||
case PUNISH_KICK:
|
||||
case PUNISH_KICK:
|
||||
{
|
||||
_actor.logout(true);
|
||||
break;
|
||||
break;
|
||||
}
|
||||
case PUNISH_KICKBAN:
|
||||
case PUNISH_KICKBAN:
|
||||
{
|
||||
_actor.logout(true);
|
||||
break;
|
||||
break;
|
||||
}
|
||||
case PUNISH_JAIL:
|
||||
case PUNISH_JAIL:
|
||||
{
|
||||
_actor.setPunishLevel(PlayerInstance.PunishLevel.JAIL, Config.DEFAULT_PUNISH_PARAM);
|
||||
break;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user