Sync with L2JServer Feb 7th 2015.

This commit is contained in:
mobius
2015-02-07 23:48:56 +00:00
parent 1e166ca657
commit ecd17fdefb
1949 changed files with 3120 additions and 33466 deletions

View File

@@ -858,8 +858,7 @@ public final class CharEffectList
public void stopEffects(L2EffectType type)
{
boolean update = false;
final Consumer<BuffInfo> action = info ->
{
final Consumer<BuffInfo> action = info -> {
if (info.getEffects().stream().anyMatch(effect -> (effect != null) && (effect.getEffectType() == type)))
{
stopAndRemove(info);
@@ -1022,25 +1021,25 @@ public final class CharEffectList
{
if (hasBuffs())
{
getBuffs().values().stream().filter(info -> info.getSkill().isRemovedOnDamage()).forEach(info -> stopAndRemove(info, getBuffs()));
getBuffs().values().stream().filter(Objects::nonNull).filter(info -> info.getSkill().isRemovedOnDamage()).forEach(info -> stopAndRemove(info, getBuffs()));
update = true;
}
if (hasTriggered())
{
getTriggered().values().stream().filter(info -> info.getSkill().isRemovedOnDamage()).forEach(info -> stopAndRemove(info, getTriggered()));
getTriggered().values().stream().filter(Objects::nonNull).filter(info -> info.getSkill().isRemovedOnDamage()).forEach(info -> stopAndRemove(info, getTriggered()));
update = true;
}
if (hasDances())
{
getDances().values().stream().filter(info -> info.getSkill().isRemovedOnDamage()).forEach(info -> stopAndRemove(info, getDances()));
getDances().values().stream().filter(Objects::nonNull).filter(info -> info.getSkill().isRemovedOnDamage()).forEach(info -> stopAndRemove(info, getDances()));
update = true;
}
if (hasToggles())
{
getToggles().values().stream().filter(info -> info.getSkill().isRemovedOnDamage()).forEach(info -> stopAndRemove(info, getToggles()));
getToggles().values().stream().filter(Objects::nonNull).filter(info -> info.getSkill().isRemovedOnDamage()).forEach(info -> stopAndRemove(info, getToggles()));
update = true;
}
}
@@ -1049,7 +1048,7 @@ public final class CharEffectList
{
if (hasDebuffs())
{
getDebuffs().values().stream().filter(info -> info.getSkill().isRemovedOnDamage()).forEach(info -> stopAndRemove(info, getDebuffs()));
getDebuffs().values().stream().filter(Objects::nonNull).filter(info -> info.getSkill().isRemovedOnDamage()).forEach(info -> stopAndRemove(info, getDebuffs()));
update = true;
}
}

View File

@@ -39,6 +39,7 @@ import com.l2jserver.gameserver.ai.L2SiegeGuardAI;
import com.l2jserver.gameserver.datatables.EventDroplist;
import com.l2jserver.gameserver.datatables.EventDroplist.DateDrop;
import com.l2jserver.gameserver.datatables.ItemTable;
import com.l2jserver.gameserver.enums.ChatType;
import com.l2jserver.gameserver.enums.InstanceType;
import com.l2jserver.gameserver.instancemanager.CursedWeaponsManager;
import com.l2jserver.gameserver.instancemanager.PcCafePointsManager;
@@ -69,7 +70,6 @@ import com.l2jserver.gameserver.model.items.instance.L2ItemInstance;
import com.l2jserver.gameserver.model.skills.Skill;
import com.l2jserver.gameserver.model.stats.Stats;
import com.l2jserver.gameserver.network.SystemMessageId;
import com.l2jserver.gameserver.network.clientpackets.Say2;
import com.l2jserver.gameserver.network.serverpackets.CreatureSay;
import com.l2jserver.gameserver.network.serverpackets.SystemMessage;
import com.l2jserver.gameserver.taskmanager.DecayTaskManager;
@@ -279,7 +279,7 @@ public class L2Attackable extends L2Npc
_commandChannelTimer = new CommandChannelTimer(this);
_commandChannelLastAttack = System.currentTimeMillis();
ThreadPoolManager.getInstance().scheduleGeneral(_commandChannelTimer, 10000); // check for last attack
_firstCommandChannelAttacked.broadcastPacket(new CreatureSay(0, Say2.PARTYROOM_ALL, "", "You have looting rights!")); // TODO: retail msg
_firstCommandChannelAttacked.broadcastPacket(new CreatureSay(0, ChatType.PARTYROOM_ALL, "", "You have looting rights!")); // TODO: retail msg
}
}
}

View File

@@ -23,6 +23,7 @@ import javolution.util.FastList;
import com.l2jserver.Config;
import com.l2jserver.gameserver.ThreadPoolManager;
import com.l2jserver.gameserver.ai.CtrlIntention;
import com.l2jserver.gameserver.enums.ChatType;
import com.l2jserver.gameserver.enums.InstanceType;
import com.l2jserver.gameserver.instancemanager.FortSiegeManager;
import com.l2jserver.gameserver.model.FortSiegeSpawn;
@@ -32,7 +33,6 @@ import com.l2jserver.gameserver.model.actor.L2Summon;
import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate;
import com.l2jserver.gameserver.model.skills.Skill;
import com.l2jserver.gameserver.network.NpcStringId;
import com.l2jserver.gameserver.network.clientpackets.Say2;
import com.l2jserver.gameserver.network.serverpackets.NpcSay;
public class L2FortCommanderInstance extends L2DefenderInstance
@@ -148,7 +148,7 @@ public class L2FortCommanderInstance extends L2DefenderInstance
}
if (npcString != null)
{
NpcSay ns = new NpcSay(getObjectId(), Say2.NPC_SHOUT, getId(), npcString);
NpcSay ns = new NpcSay(getObjectId(), ChatType.NPC_SHOUT, getId(), npcString);
if (npcString.getParamCount() == 1)
{
ns.addStringParameter(attacker.getName());

View File

@@ -84,6 +84,7 @@ import com.l2jserver.gameserver.datatables.ItemTable;
import com.l2jserver.gameserver.datatables.SkillData;
import com.l2jserver.gameserver.enums.CastleSide;
import com.l2jserver.gameserver.enums.CategoryType;
import com.l2jserver.gameserver.enums.ChatType;
import com.l2jserver.gameserver.enums.HtmlActionScope;
import com.l2jserver.gameserver.enums.IllegalActionPunishmentType;
import com.l2jserver.gameserver.enums.InstanceType;
@@ -96,6 +97,7 @@ import com.l2jserver.gameserver.enums.Race;
import com.l2jserver.gameserver.enums.Sex;
import com.l2jserver.gameserver.enums.ShortcutType;
import com.l2jserver.gameserver.enums.ShotType;
import com.l2jserver.gameserver.enums.SubclassInfoType;
import com.l2jserver.gameserver.enums.Team;
import com.l2jserver.gameserver.enums.UserInfoType;
import com.l2jserver.gameserver.handler.IItemHandler;
@@ -365,8 +367,8 @@ public final class L2PcInstance extends L2Playable
private static final String DELETE_ITEM_REUSE_SAVE = "DELETE FROM character_item_reuse_save WHERE charId=?";
// Character Character SQL String Definitions:
private static final String INSERT_CHARACTER = "INSERT INTO characters (account_name,charId,char_name,level,maxHp,curHp,maxCp,curCp,maxMp,curMp,face,hairStyle,hairColor,sex,exp,sp,karma,fame,pvpkills,pkkills,clanid,race,classid,deletetime,cancraft,title,title_color,accesslevel,online,isin7sdungeon,clan_privs,wantspeace,base_class,newbie,nobless,power_grade,createDate) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
private static final String UPDATE_CHARACTER = "UPDATE characters SET level=?,maxHp=?,curHp=?,maxCp=?,curCp=?,maxMp=?,curMp=?,face=?,hairStyle=?,hairColor=?,sex=?,heading=?,x=?,y=?,z=?,exp=?,expBeforeDeath=?,sp=?,karma=?,fame=?,pvpkills=?,pkkills=?,clanid=?,race=?,classid=?,deletetime=?,title=?,title_color=?,accesslevel=?,online=?,isin7sdungeon=?,clan_privs=?,wantspeace=?,base_class=?,onlinetime=?,newbie=?,nobless=?,power_grade=?,subpledge=?,lvl_joined_academy=?,apprentice=?,sponsor=?,clan_join_expiry_time=?,clan_create_expiry_time=?,char_name=?,death_penalty_level=?,bookmarkslot=?,vitality_points=?,pccafe_points=?,language=?,faction=? WHERE charId=?";
private static final String INSERT_CHARACTER = "INSERT INTO characters (account_name,charId,char_name,level,maxHp,curHp,maxCp,curCp,maxMp,curMp,face,hairStyle,hairColor,sex,exp,sp,karma,fame,pvpkills,pkkills,clanid,race,classid,deletetime,cancraft,title,title_color,accesslevel,online,clan_privs,wantspeace,base_class,nobless,power_grade,createDate) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
private static final String UPDATE_CHARACTER = "UPDATE characters SET level=?,maxHp=?,curHp=?,maxCp=?,curCp=?,maxMp=?,curMp=?,face=?,hairStyle=?,hairColor=?,sex=?,heading=?,x=?,y=?,z=?,exp=?,expBeforeDeath=?,sp=?,karma=?,fame=?,pvpkills=?,pkkills=?,clanid=?,race=?,classid=?,deletetime=?,title=?,title_color=?,accesslevel=?,online=?,clan_privs=?,wantspeace=?,base_class=?,onlinetime=?,nobless=?,power_grade=?,subpledge=?,lvl_joined_academy=?,apprentice=?,sponsor=?,clan_join_expiry_time=?,clan_create_expiry_time=?,char_name=?,death_penalty_level=?,bookmarkslot=?,vitality_points=?,pccafe_points=?,language=?,faction=? WHERE charId=?";
private static final String RESTORE_CHARACTER = "SELECT * FROM characters WHERE charId=?";
// Character Premium System String Definitions:
@@ -400,8 +402,6 @@ public final class L2PcInstance extends L2Playable
private static final String COND_OVERRIDE_KEY = "cond_override";
public static final String NEWBIE_KEY = "NEWBIE";
public static final int ID_NONE = -1;
public static final int REQUEST_TIMEOUT = 15;
@@ -608,9 +608,6 @@ public final class L2PcInstance extends L2Playable
// Multisell
private PreparedListContainer _currentMultiSell = null;
/** Bitmask used to keep track of one-time/newbie quest rewards */
private int _newbie;
private boolean _noble = false;
private boolean _hero = false;
@@ -935,6 +932,8 @@ public final class L2PcInstance extends L2Playable
private boolean _hasCharmOfCourage = false;
private final Set<Integer> _whispepers = ConcurrentHashMap.newKeySet();
private int _jumpTrackId = 0;
/**
@@ -961,8 +960,6 @@ public final class L2PcInstance extends L2Playable
player.setCreateDate(Calendar.getInstance());
// Set the base class ID to that of the actual class ID.
player.setBaseClass(player.getClassId());
// Kept for backwards compatibility.
player.setNewbie(1);
// Give 20 recommendations
player.setRecomLeft(20);
// Add the player in the characters table of the database
@@ -1259,23 +1256,6 @@ public final class L2PcInstance extends L2Playable
return super.getLevelMod();
}
/**
* @return the _newbie rewards state of the L2PcInstance.
*/
public int getNewbie()
{
return _newbie;
}
/**
* Set the _newbie rewards state of the L2PcInstance.
* @param newbieRewards The Identifier of the _newbie state
*/
public void setNewbie(int newbieRewards)
{
_newbie = newbieRewards;
}
public void setBaseClass(int baseClass)
{
_baseClass = baseClass;
@@ -2426,6 +2406,8 @@ public final class L2PcInstance extends L2Playable
getClan().broadcastToOnlineMembers(new PledgeShowMemberListUpdate(this));
}
sendPacket(new ExSubjobInfo(this, SubclassInfoType.CLASS_CHANGED));
// Add AutoGet skills and normal skills and/or learnByFS depending on configurations.
rewardSkills();
@@ -7025,14 +7007,12 @@ public final class L2PcInstance extends L2Playable
statement.setInt(27, getAppearance().getTitleColor());
statement.setInt(28, getAccessLevel().getLevel());
statement.setInt(29, isOnlineInt());
statement.setInt(30, 0); // Unused
statement.setInt(31, getClanPrivileges().getBitmask());
statement.setInt(32, getWantsPeace());
statement.setInt(33, getBaseClass());
statement.setInt(34, getNewbie());
statement.setInt(35, isNoble() ? 1 : 0);
statement.setLong(36, 0);
statement.setDate(37, new Date(getCreateDate().getTimeInMillis()));
statement.setInt(30, getClanPrivileges().getBitmask());
statement.setInt(31, getWantsPeace());
statement.setInt(32, getBaseClass());
statement.setInt(33, isNoble() ? 1 : 0);
statement.setLong(34, 0);
statement.setDate(35, new Date(getCreateDate().getTimeInMillis()));
statement.executeUpdate();
}
catch (Exception e)
@@ -7088,7 +7068,6 @@ public final class L2PcInstance extends L2Playable
player.setPvpKills(rset.getInt("pvpkills"));
player.setPkKills(rset.getInt("pkkills"));
player.setOnlineTime(rset.getLong("onlinetime"));
player.setNewbie(rset.getInt("newbie"));
player.setNoble(rset.getInt("nobless") == 1);
final int factionId = rset.getInt("faction");
@@ -7660,10 +7639,9 @@ public final class L2PcInstance extends L2Playable
statement.setInt(28, getAppearance().getTitleColor());
statement.setInt(29, getAccessLevel().getLevel());
statement.setInt(30, isOnlineInt());
statement.setInt(31, 0); // Unused
statement.setInt(32, getClanPrivileges().getBitmask());
statement.setInt(33, getWantsPeace());
statement.setInt(34, getBaseClass());
statement.setInt(31, getClanPrivileges().getBitmask());
statement.setInt(32, getWantsPeace());
statement.setInt(33, getBaseClass());
long totalOnlineTime = _onlineTime;
if (_onlineBeginTime > 0)
@@ -7671,22 +7649,21 @@ public final class L2PcInstance extends L2Playable
totalOnlineTime += (System.currentTimeMillis() - _onlineBeginTime) / 1000;
}
statement.setLong(35, totalOnlineTime);
statement.setInt(36, getNewbie());
statement.setInt(37, isNoble() ? 1 : 0);
statement.setInt(38, getPowerGrade());
statement.setInt(39, getPledgeType());
statement.setInt(40, getLvlJoinedAcademy());
statement.setLong(41, getApprentice());
statement.setLong(42, getSponsor());
statement.setLong(43, getClanJoinExpiryTime());
statement.setLong(44, getClanCreateExpiryTime());
statement.setString(45, getName());
statement.setLong(46, 0); // unset
statement.setInt(47, getBookMarkSlot());
statement.setInt(48, _vitalityPoints); // unset
statement.setInt(49, getPcBangPoints());
statement.setString(50, getLang());
statement.setLong(34, totalOnlineTime);
statement.setInt(35, isNoble() ? 1 : 0);
statement.setInt(36, getPowerGrade());
statement.setInt(37, getPledgeType());
statement.setInt(38, getLvlJoinedAcademy());
statement.setLong(39, getApprentice());
statement.setLong(40, getSponsor());
statement.setLong(41, getClanJoinExpiryTime());
statement.setLong(42, getClanCreateExpiryTime());
statement.setString(43, getName());
statement.setLong(44, 0); // unset
statement.setInt(45, getBookMarkSlot());
statement.setInt(46, _vitalityPoints); // unset
statement.setInt(47, getPcBangPoints());
statement.setString(48, getLang());
int factionId = 0;
if (isGood())
@@ -7697,9 +7674,9 @@ public final class L2PcInstance extends L2Playable
{
factionId = 2;
}
statement.setInt(51, factionId);
statement.setInt(49, factionId);
statement.setInt(52, getObjectId());
statement.setInt(50, getObjectId());
statement.execute();
}
catch (Exception e)
@@ -10752,7 +10729,6 @@ public final class L2PcInstance extends L2Playable
broadcastPacket(new SocialAction(getObjectId(), SocialAction.LEVEL_UP));
sendPacket(new SkillCoolTime(this));
sendPacket(new ExStorageMaxCount(this));
sendPacket(new ExSubjobInfo(this));
EventDispatcher.getInstance().notifyEventAsync(new OnPlayerSubChange(this), this);
return true;
@@ -11176,8 +11152,7 @@ public final class L2PcInstance extends L2Playable
pet.updateAndBroadcastStatus(0);
}
getServitors().values().forEach(s ->
{
getServitors().values().forEach(s -> {
s.setFollowStatus(false);
s.teleToLocation(getLocation(), false);
((L2SummonAI) s.getAI()).setStartFollowController(true);
@@ -11282,11 +11257,11 @@ public final class L2PcInstance extends L2Playable
}
}
public void broadcastSnoop(int type, String name, String _text)
public void broadcastSnoop(ChatType type, String name, String _text)
{
if (!_snoopListener.isEmpty())
{
Snoop sn = new Snoop(getObjectId(), getName(), type, name, _text);
final Snoop sn = new Snoop(getObjectId(), getName(), type, name, _text);
for (L2PcInstance pci : _snoopListener)
{
@@ -11780,8 +11755,7 @@ public final class L2PcInstance extends L2Playable
}
}
getServitors().values().forEach(s ->
{
getServitors().values().forEach(s -> {
s.setRestoreSummon(true);
s.unSummon(this);
});
@@ -15196,4 +15170,13 @@ public final class L2PcInstance extends L2Playable
vars.set("PRIME_POINTS", points);
vars.storeMe();
}
/**
* Gets the whisperers.
* @return the whisperers
*/
public Set<Integer> getWhisperers()
{
return _whispepers;
}
}

View File

@@ -21,6 +21,7 @@ package com.l2jserver.gameserver.model.actor.instance;
import java.util.concurrent.Future;
import com.l2jserver.gameserver.ThreadPoolManager;
import com.l2jserver.gameserver.enums.ChatType;
import com.l2jserver.gameserver.enums.InstanceType;
import com.l2jserver.gameserver.instancemanager.FourSepulchersManager;
import com.l2jserver.gameserver.model.actor.L2Character;
@@ -359,7 +360,7 @@ public class L2SepulcherMonsterInstance extends L2MonsterInstance
return;
}
broadcastPacket(new NpcSay(getObjectId(), 0, getId(), "forgive me!!"));
broadcastPacket(new NpcSay(getObjectId(), ChatType.NPC_GENERAL, getId(), "forgive me!!"));
}
}
@@ -386,7 +387,7 @@ public class L2SepulcherMonsterInstance extends L2MonsterInstance
}
FourSepulchersManager.getInstance().spawnKeyBox(_activeChar);
broadcastPacket(new NpcSay(getObjectId(), 0, getId(), "Many thanks for rescue me."));
broadcastPacket(new NpcSay(getObjectId(), ChatType.NPC_GENERAL, getId(), "Many thanks for rescue me."));
if (_victimShout != null)
{
_victimShout.cancel(true);

View File

@@ -24,6 +24,7 @@ import com.l2jserver.Config;
import com.l2jserver.gameserver.ThreadPoolManager;
import com.l2jserver.gameserver.ai.CtrlIntention;
import com.l2jserver.gameserver.data.xml.impl.DoorData;
import com.l2jserver.gameserver.enums.ChatType;
import com.l2jserver.gameserver.enums.InstanceType;
import com.l2jserver.gameserver.instancemanager.FourSepulchersManager;
import com.l2jserver.gameserver.model.L2World;
@@ -34,7 +35,6 @@ import com.l2jserver.gameserver.model.events.EventType;
import com.l2jserver.gameserver.model.events.impl.character.npc.OnNpcFirstTalk;
import com.l2jserver.gameserver.model.items.instance.L2ItemInstance;
import com.l2jserver.gameserver.network.NpcStringId;
import com.l2jserver.gameserver.network.clientpackets.Say2;
import com.l2jserver.gameserver.network.serverpackets.ActionFailed;
import com.l2jserver.gameserver.network.serverpackets.CreatureSay;
import com.l2jserver.gameserver.network.serverpackets.NpcHtmlMessage;
@@ -433,7 +433,7 @@ public class L2SepulcherNpcInstance extends L2Npc
return;// wrong usage
}
final CreatureSay creatureSay = new CreatureSay(0, Say2.NPC_SHOUT, getName(), msg);
final CreatureSay creatureSay = new CreatureSay(0, ChatType.NPC_SHOUT, getName(), msg);
for (L2PcInstance player : L2World.getInstance().getPlayers())
{
if (Util.checkIfInRange(15000, player, this, true))

View File

@@ -34,6 +34,7 @@ import com.l2jserver.L2DatabaseFactory;
import com.l2jserver.gameserver.ThreadPoolManager;
import com.l2jserver.gameserver.data.sql.impl.ClanTable;
import com.l2jserver.gameserver.data.xml.impl.NpcData;
import com.l2jserver.gameserver.enums.ChatType;
import com.l2jserver.gameserver.enums.FortTeleportWhoType;
import com.l2jserver.gameserver.enums.SiegeClanType;
import com.l2jserver.gameserver.instancemanager.FortManager;
@@ -57,7 +58,6 @@ import com.l2jserver.gameserver.model.events.impl.sieges.fort.OnFortSiegeFinish;
import com.l2jserver.gameserver.model.events.impl.sieges.fort.OnFortSiegeStart;
import com.l2jserver.gameserver.network.NpcStringId;
import com.l2jserver.gameserver.network.SystemMessageId;
import com.l2jserver.gameserver.network.clientpackets.Say2;
import com.l2jserver.gameserver.network.serverpackets.NpcSay;
import com.l2jserver.gameserver.network.serverpackets.SystemMessage;
@@ -648,7 +648,7 @@ public class FortSiege implements Siegable
}
if (npcString != null)
{
instance.broadcastPacket(new NpcSay(instance.getObjectId(), Say2.NPC_SHOUT, instance.getId(), npcString));
instance.broadcastPacket(new NpcSay(instance.getObjectId(), ChatType.NPC_SHOUT, instance.getId(), npcString));
}
}
}

View File

@@ -45,6 +45,7 @@ import com.l2jserver.Config;
import com.l2jserver.gameserver.ThreadPoolManager;
import com.l2jserver.gameserver.data.xml.impl.DoorData;
import com.l2jserver.gameserver.data.xml.impl.NpcData;
import com.l2jserver.gameserver.enums.ChatType;
import com.l2jserver.gameserver.enums.InstanceReenterType;
import com.l2jserver.gameserver.enums.InstanceRemoveBuffType;
import com.l2jserver.gameserver.idfactory.IdFactory;
@@ -64,7 +65,6 @@ import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate;
import com.l2jserver.gameserver.model.holders.InstanceReenterTimeHolder;
import com.l2jserver.gameserver.model.instancezone.InstanceWorld;
import com.l2jserver.gameserver.network.SystemMessageId;
import com.l2jserver.gameserver.network.clientpackets.Say2;
import com.l2jserver.gameserver.network.serverpackets.CreatureSay;
import com.l2jserver.gameserver.network.serverpackets.SystemMessage;
import com.l2jserver.gameserver.util.Broadcast;
@@ -801,14 +801,14 @@ public final class Instance
{
timeLeft = remaining / 1000;
interval = 30000;
cs = new CreatureSay(0, Say2.ALLIANCE, "Notice", timeLeft + " seconds left.");
cs = new CreatureSay(0, ChatType.ALLIANCE, "Notice", timeLeft + " seconds left.");
remaining = remaining - 30000;
}
else
{
timeLeft = remaining / 1000;
interval = 10000;
cs = new CreatureSay(0, Say2.ALLIANCE, "Notice", timeLeft + " seconds left.");
cs = new CreatureSay(0, ChatType.ALLIANCE, "Notice", timeLeft + " seconds left.");
remaining = remaining - 10000;
}
if (cs != null)
@@ -857,8 +857,7 @@ public final class Instance
{
if ((player != null))
{
_ejectDeadTasks.put(player.getObjectId(), ThreadPoolManager.getInstance().scheduleGeneral(() ->
{
_ejectDeadTasks.put(player.getObjectId(), ThreadPoolManager.getInstance().scheduleGeneral(() -> {
if (player.isDead() && (player.getInstanceId() == getId()))
{
player.setInstanceId(0);

View File

@@ -34,6 +34,7 @@ import com.l2jserver.gameserver.data.xml.impl.NpcData;
import com.l2jserver.gameserver.datatables.ItemTable;
import com.l2jserver.gameserver.datatables.SkillData;
import com.l2jserver.gameserver.datatables.SpawnTable;
import com.l2jserver.gameserver.enums.ChatType;
import com.l2jserver.gameserver.instancemanager.AntiFeedManager;
import com.l2jserver.gameserver.instancemanager.InstanceManager;
import com.l2jserver.gameserver.model.L2Spawn;
@@ -54,7 +55,6 @@ import com.l2jserver.gameserver.model.events.impl.events.OnTvTEventStart;
import com.l2jserver.gameserver.model.itemcontainer.PcInventory;
import com.l2jserver.gameserver.model.skills.Skill;
import com.l2jserver.gameserver.network.SystemMessageId;
import com.l2jserver.gameserver.network.clientpackets.Say2;
import com.l2jserver.gameserver.network.serverpackets.CreatureSay;
import com.l2jserver.gameserver.network.serverpackets.ExUserInfoInvenWeight;
import com.l2jserver.gameserver.network.serverpackets.MagicSkillUse;
@@ -856,7 +856,7 @@ public class TvTEvent
killerTeam.increasePoints();
CreatureSay cs = new CreatureSay(killerPlayerInstance.getObjectId(), Say2.TELL, killerPlayerInstance.getName(), "I have killed " + killedPlayerInstance.getName() + "!");
CreatureSay cs = new CreatureSay(killerPlayerInstance.getObjectId(), ChatType.TELL, killerPlayerInstance.getName(), "I have killed " + killedPlayerInstance.getName() + "!");
for (L2PcInstance playerInstance : _teams[killerTeamId].getParticipatedPlayers().values())
{

View File

@@ -35,6 +35,7 @@ import com.l2jserver.L2DatabaseFactory;
import com.l2jserver.gameserver.ThreadPoolManager;
import com.l2jserver.gameserver.data.sql.impl.ClanTable;
import com.l2jserver.gameserver.data.xml.impl.NpcData;
import com.l2jserver.gameserver.enums.ChatType;
import com.l2jserver.gameserver.enums.SiegeClanType;
import com.l2jserver.gameserver.instancemanager.CHSiegeManager;
import com.l2jserver.gameserver.instancemanager.MapRegionManager;
@@ -480,7 +481,7 @@ public abstract class ClanHallSiegeEngine extends Quest implements Siegable
return Config.CHS_FAME_FREQUENCY;
}
public final void broadcastNpcSay(final L2Npc npc, final int type, final NpcStringId messageId)
public final void broadcastNpcSay(final L2Npc npc, final ChatType type, final NpcStringId messageId)
{
final NpcSay npcSay = new NpcSay(npc.getObjectId(), type, npc.getId(), messageId);
final int sourceRegion = MapRegionManager.getInstance().getMapRegionLocId(npc);

View File

@@ -18,6 +18,7 @@
*/
package com.l2jserver.gameserver.model.events.impl.character.player;
import com.l2jserver.gameserver.enums.ChatType;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
import com.l2jserver.gameserver.model.events.EventType;
import com.l2jserver.gameserver.model.events.impl.IBaseEvent;
@@ -30,9 +31,9 @@ public class OnPlayerChat implements IBaseEvent
private final L2PcInstance _activeChar;
private final L2PcInstance _target;
private final String _text;
private final int _type;
private final ChatType _type;
public OnPlayerChat(L2PcInstance activeChar, L2PcInstance target, String text, int type)
public OnPlayerChat(L2PcInstance activeChar, L2PcInstance target, String text, ChatType type)
{
_activeChar = activeChar;
_target = target;
@@ -55,7 +56,7 @@ public class OnPlayerChat implements IBaseEvent
return _text;
}
public int getChatType()
public ChatType getChatType()
{
return _type;
}

View File

@@ -21,10 +21,10 @@ package com.l2jserver.gameserver.model.olympiad;
import java.util.Set;
import com.l2jserver.gameserver.datatables.SpawnTable;
import com.l2jserver.gameserver.enums.ChatType;
import com.l2jserver.gameserver.model.L2Spawn;
import com.l2jserver.gameserver.model.actor.L2Npc;
import com.l2jserver.gameserver.network.NpcStringId;
import com.l2jserver.gameserver.network.clientpackets.Say2;
import com.l2jserver.gameserver.network.serverpackets.NpcSay;
/**
@@ -79,7 +79,7 @@ public final class OlympiadAnnouncer implements Runnable
manager = spawn.getLastSpawn();
if (manager != null)
{
packet = new NpcSay(manager.getObjectId(), Say2.NPC_SHOUT, manager.getId(), npcString);
packet = new NpcSay(manager.getObjectId(), ChatType.NPC_SHOUT, manager.getId(), npcString);
packet.addStringParameter(arenaId);
manager.broadcastPacket(packet);
}

View File

@@ -172,6 +172,7 @@ public enum AbnormalType
IRON_SHIELD_I,
KAMAEL_SPECIAL,
KNIGHT_AURA,
KNOCK_DOWN,
LIFE_FORCE_KAMAEL,
LIFE_FORCE_ORC,
LIFE_FORCE_OTHERS,
@@ -183,6 +184,7 @@ public enum AbnormalType
MAX_BREATH_UP,
MAX_HP_DOWN,
MAX_HP_UP,
MAX_HP_CP_UP,
MAX_MP_UP,
MA_DOWN,
MA_MD_UP,

View File

@@ -66,6 +66,8 @@ public enum TraitType
UNK_40(40, 3),
DUALDAGGER(41, 1),
DUALBLUNT(42, 1),
KNOCKBACK(43, 3),
KNOCKDOWN(44, 3),
NONE(43, 0);
private final int _id;
@@ -86,4 +88,4 @@ public enum TraitType
{
return _type;
}
}
}

View File

@@ -18,15 +18,15 @@
*/
package com.l2jserver.gameserver.model.variables;
import com.l2jserver.gameserver.model.actor.L2Summon;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
/**
* NPC Variables implementation.
* @author GKR
*/
public class NpcVariables extends AbstractVariables
{
public NpcVariables()
{
}
@Override
public int getInt(String key)
{
@@ -50,4 +50,24 @@ public class NpcVariables extends AbstractVariables
{
return true;
}
/**
* Gets the stored player.
* @param name the name of the variable
* @return the stored player or {@code null}
*/
public L2PcInstance getPlayer(String name)
{
return getObject(name, L2PcInstance.class);
}
/**
* Gets the stored summon.
* @param name the name of the variable
* @return the stored summon or {@code null}
*/
public L2Summon getSummon(String name)
{
return getObject(name, L2Summon.class);
}
}