Revelation skill exploit prevention.
Contributed by nasseka.
This commit is contained in:
parent
a0bf69f75a
commit
e8efb64cb0
@ -433,8 +433,6 @@ public class RequestAcquireSkill implements ClientPacket
|
||||
final String varName = count == 0 ? REVELATION_VAR_NAMES[0] : REVELATION_VAR_NAMES[1];
|
||||
player.getVariables().set(varName, skill.getId());
|
||||
giveSkill(player, trainer, skill);
|
||||
// Exploit prevention.
|
||||
SkillData.getInstance().getSkill(1570, 1).applyEffects(player, player);
|
||||
}
|
||||
|
||||
final List<SkillLearn> skills = SkillTreeData.getInstance().getAvailableRevelationSkills(player, SubclassType.BASECLASS);
|
||||
|
@ -48,5 +48,6 @@ public class RequestAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.sendSkillList();
|
||||
}
|
||||
}
|
||||
|
@ -24,6 +24,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.l2jmobius.commons.network.ReadablePacket;
|
||||
import org.l2jmobius.commons.threads.ThreadPool;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillData;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillTreeData;
|
||||
import org.l2jmobius.gameserver.model.SkillLearn;
|
||||
@ -194,6 +195,12 @@ public class RequestAcquireAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.getStat().recalculateStats(true);
|
||||
|
||||
ThreadPool.schedule(() ->
|
||||
{
|
||||
player.sendSkillList();
|
||||
player.getStat().recalculateStats(false);
|
||||
player.broadcastInfo();
|
||||
}, 100);
|
||||
}
|
||||
}
|
@ -433,8 +433,6 @@ public class RequestAcquireSkill implements ClientPacket
|
||||
final String varName = count == 0 ? REVELATION_VAR_NAMES[0] : REVELATION_VAR_NAMES[1];
|
||||
player.getVariables().set(varName, skill.getId());
|
||||
giveSkill(player, trainer, skill);
|
||||
// Exploit prevention.
|
||||
SkillData.getInstance().getSkill(1570, 1).applyEffects(player, player);
|
||||
}
|
||||
|
||||
final List<SkillLearn> skills = SkillTreeData.getInstance().getAvailableRevelationSkills(player, SubclassType.BASECLASS);
|
||||
|
@ -48,5 +48,6 @@ public class RequestAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.sendSkillList();
|
||||
}
|
||||
}
|
||||
|
@ -24,6 +24,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.l2jmobius.commons.network.ReadablePacket;
|
||||
import org.l2jmobius.commons.threads.ThreadPool;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillData;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillTreeData;
|
||||
import org.l2jmobius.gameserver.model.SkillLearn;
|
||||
@ -194,6 +195,12 @@ public class RequestAcquireAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.getStat().recalculateStats(true);
|
||||
|
||||
ThreadPool.schedule(() ->
|
||||
{
|
||||
player.sendSkillList();
|
||||
player.getStat().recalculateStats(false);
|
||||
player.broadcastInfo();
|
||||
}, 100);
|
||||
}
|
||||
}
|
@ -433,8 +433,6 @@ public class RequestAcquireSkill implements ClientPacket
|
||||
final String varName = count == 0 ? REVELATION_VAR_NAMES[0] : REVELATION_VAR_NAMES[1];
|
||||
player.getVariables().set(varName, skill.getId());
|
||||
giveSkill(player, trainer, skill);
|
||||
// Exploit prevention.
|
||||
SkillData.getInstance().getSkill(1570, 1).applyEffects(player, player);
|
||||
}
|
||||
|
||||
final List<SkillLearn> skills = SkillTreeData.getInstance().getAvailableRevelationSkills(player, SubclassType.BASECLASS);
|
||||
|
@ -48,5 +48,6 @@ public class RequestAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.sendSkillList();
|
||||
}
|
||||
}
|
||||
|
@ -24,6 +24,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.l2jmobius.commons.network.ReadablePacket;
|
||||
import org.l2jmobius.commons.threads.ThreadPool;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillData;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillTreeData;
|
||||
import org.l2jmobius.gameserver.model.SkillLearn;
|
||||
@ -194,6 +195,12 @@ public class RequestAcquireAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.getStat().recalculateStats(true);
|
||||
|
||||
ThreadPool.schedule(() ->
|
||||
{
|
||||
player.sendSkillList();
|
||||
player.getStat().recalculateStats(false);
|
||||
player.broadcastInfo();
|
||||
}, 100);
|
||||
}
|
||||
}
|
@ -433,8 +433,6 @@ public class RequestAcquireSkill implements ClientPacket
|
||||
final String varName = count == 0 ? REVELATION_VAR_NAMES[0] : REVELATION_VAR_NAMES[1];
|
||||
player.getVariables().set(varName, skill.getId());
|
||||
giveSkill(player, trainer, skill);
|
||||
// Exploit prevention.
|
||||
SkillData.getInstance().getSkill(1570, 1).applyEffects(player, player);
|
||||
}
|
||||
|
||||
final List<SkillLearn> skills = SkillTreeData.getInstance().getAvailableRevelationSkills(player, SubclassType.BASECLASS);
|
||||
|
@ -48,5 +48,6 @@ public class RequestAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.sendSkillList();
|
||||
}
|
||||
}
|
||||
|
@ -24,6 +24,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.l2jmobius.commons.network.ReadablePacket;
|
||||
import org.l2jmobius.commons.threads.ThreadPool;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillData;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillTreeData;
|
||||
import org.l2jmobius.gameserver.model.SkillLearn;
|
||||
@ -194,6 +195,12 @@ public class RequestAcquireAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.getStat().recalculateStats(true);
|
||||
|
||||
ThreadPool.schedule(() ->
|
||||
{
|
||||
player.sendSkillList();
|
||||
player.getStat().recalculateStats(false);
|
||||
player.broadcastInfo();
|
||||
}, 100);
|
||||
}
|
||||
}
|
@ -383,8 +383,6 @@ public class RequestAcquireSkill implements ClientPacket
|
||||
final String varName = count == 0 ? REVELATION_VAR_NAMES[0] : REVELATION_VAR_NAMES[1];
|
||||
player.getVariables().set(varName, skill.getId());
|
||||
giveSkill(player, trainer, skill);
|
||||
// Exploit prevention.
|
||||
SkillData.getInstance().getSkill(1570, 1).applyEffects(player, player);
|
||||
}
|
||||
|
||||
final List<SkillLearn> skills = SkillTreeData.getInstance().getAvailableRevelationSkills(player, SubclassType.BASECLASS);
|
||||
|
@ -48,5 +48,6 @@ public class RequestAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.sendSkillList();
|
||||
}
|
||||
}
|
||||
|
@ -24,6 +24,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.l2jmobius.commons.network.ReadablePacket;
|
||||
import org.l2jmobius.commons.threads.ThreadPool;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillData;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillTreeData;
|
||||
import org.l2jmobius.gameserver.model.SkillLearn;
|
||||
@ -194,6 +195,12 @@ public class RequestAcquireAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.getStat().recalculateStats(true);
|
||||
|
||||
ThreadPool.schedule(() ->
|
||||
{
|
||||
player.sendSkillList();
|
||||
player.getStat().recalculateStats(false);
|
||||
player.broadcastInfo();
|
||||
}, 100);
|
||||
}
|
||||
}
|
@ -383,8 +383,6 @@ public class RequestAcquireSkill implements ClientPacket
|
||||
final String varName = count == 0 ? REVELATION_VAR_NAMES[0] : REVELATION_VAR_NAMES[1];
|
||||
player.getVariables().set(varName, skill.getId());
|
||||
giveSkill(player, trainer, skill);
|
||||
// Exploit prevention.
|
||||
SkillData.getInstance().getSkill(1570, 1).applyEffects(player, player);
|
||||
}
|
||||
|
||||
final List<SkillLearn> skills = SkillTreeData.getInstance().getAvailableRevelationSkills(player, SubclassType.BASECLASS);
|
||||
|
@ -48,5 +48,6 @@ public class RequestAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.sendSkillList();
|
||||
}
|
||||
}
|
||||
|
@ -24,6 +24,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.l2jmobius.commons.network.ReadablePacket;
|
||||
import org.l2jmobius.commons.threads.ThreadPool;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillData;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillTreeData;
|
||||
import org.l2jmobius.gameserver.model.SkillLearn;
|
||||
@ -194,6 +195,12 @@ public class RequestAcquireAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.getStat().recalculateStats(true);
|
||||
|
||||
ThreadPool.schedule(() ->
|
||||
{
|
||||
player.sendSkillList();
|
||||
player.getStat().recalculateStats(false);
|
||||
player.broadcastInfo();
|
||||
}, 100);
|
||||
}
|
||||
}
|
@ -383,8 +383,6 @@ public class RequestAcquireSkill implements ClientPacket
|
||||
final String varName = count == 0 ? REVELATION_VAR_NAMES[0] : REVELATION_VAR_NAMES[1];
|
||||
player.getVariables().set(varName, skill.getId());
|
||||
giveSkill(player, trainer, skill);
|
||||
// Exploit prevention.
|
||||
SkillData.getInstance().getSkill(1570, 1).applyEffects(player, player);
|
||||
}
|
||||
|
||||
final List<SkillLearn> skills = SkillTreeData.getInstance().getAvailableRevelationSkills(player, SubclassType.BASECLASS);
|
||||
|
@ -48,5 +48,6 @@ public class RequestAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.sendSkillList();
|
||||
}
|
||||
}
|
||||
|
@ -24,6 +24,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.l2jmobius.commons.network.ReadablePacket;
|
||||
import org.l2jmobius.commons.threads.ThreadPool;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillData;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillTreeData;
|
||||
import org.l2jmobius.gameserver.model.SkillLearn;
|
||||
@ -194,6 +195,12 @@ public class RequestAcquireAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.getStat().recalculateStats(true);
|
||||
|
||||
ThreadPool.schedule(() ->
|
||||
{
|
||||
player.sendSkillList();
|
||||
player.getStat().recalculateStats(false);
|
||||
player.broadcastInfo();
|
||||
}, 100);
|
||||
}
|
||||
}
|
@ -383,8 +383,6 @@ public class RequestAcquireSkill implements ClientPacket
|
||||
final String varName = count == 0 ? REVELATION_VAR_NAMES[0] : REVELATION_VAR_NAMES[1];
|
||||
player.getVariables().set(varName, skill.getId());
|
||||
giveSkill(player, trainer, skill);
|
||||
// Exploit prevention.
|
||||
SkillData.getInstance().getSkill(1570, 1).applyEffects(player, player);
|
||||
}
|
||||
|
||||
final List<SkillLearn> skills = SkillTreeData.getInstance().getAvailableRevelationSkills(player, SubclassType.BASECLASS);
|
||||
|
@ -48,5 +48,6 @@ public class RequestAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.sendSkillList();
|
||||
}
|
||||
}
|
||||
|
@ -24,6 +24,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.l2jmobius.commons.network.ReadablePacket;
|
||||
import org.l2jmobius.commons.threads.ThreadPool;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillData;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillTreeData;
|
||||
import org.l2jmobius.gameserver.model.SkillLearn;
|
||||
@ -194,6 +195,12 @@ public class RequestAcquireAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.getStat().recalculateStats(true);
|
||||
|
||||
ThreadPool.schedule(() ->
|
||||
{
|
||||
player.sendSkillList();
|
||||
player.getStat().recalculateStats(false);
|
||||
player.broadcastInfo();
|
||||
}, 100);
|
||||
}
|
||||
}
|
@ -391,8 +391,6 @@ public class RequestAcquireSkill implements ClientPacket
|
||||
final String varName = count == 0 ? REVELATION_VAR_NAMES[0] : REVELATION_VAR_NAMES[1];
|
||||
player.getVariables().set(varName, skill.getId());
|
||||
giveSkill(player, trainer, skill);
|
||||
// Exploit prevention.
|
||||
SkillData.getInstance().getSkill(1570, 1).applyEffects(player, player);
|
||||
}
|
||||
|
||||
final List<SkillLearn> skills = SkillTreeData.getInstance().getAvailableRevelationSkills(player, SubclassType.BASECLASS);
|
||||
|
@ -48,5 +48,6 @@ public class RequestAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.sendSkillList();
|
||||
}
|
||||
}
|
||||
|
@ -24,6 +24,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.l2jmobius.commons.network.ReadablePacket;
|
||||
import org.l2jmobius.commons.threads.ThreadPool;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillData;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillTreeData;
|
||||
import org.l2jmobius.gameserver.model.SkillLearn;
|
||||
@ -194,6 +195,12 @@ public class RequestAcquireAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.getStat().recalculateStats(true);
|
||||
|
||||
ThreadPool.schedule(() ->
|
||||
{
|
||||
player.sendSkillList();
|
||||
player.getStat().recalculateStats(false);
|
||||
player.broadcastInfo();
|
||||
}, 100);
|
||||
}
|
||||
}
|
@ -391,8 +391,6 @@ public class RequestAcquireSkill implements ClientPacket
|
||||
final String varName = count == 0 ? REVELATION_VAR_NAMES[0] : REVELATION_VAR_NAMES[1];
|
||||
player.getVariables().set(varName, skill.getId());
|
||||
giveSkill(player, trainer, skill);
|
||||
// Exploit prevention.
|
||||
SkillData.getInstance().getSkill(1570, 1).applyEffects(player, player);
|
||||
}
|
||||
|
||||
final List<SkillLearn> skills = SkillTreeData.getInstance().getAvailableRevelationSkills(player, SubclassType.BASECLASS);
|
||||
|
@ -48,5 +48,6 @@ public class RequestAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.sendSkillList();
|
||||
}
|
||||
}
|
||||
|
@ -24,6 +24,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.l2jmobius.commons.network.ReadablePacket;
|
||||
import org.l2jmobius.commons.threads.ThreadPool;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillData;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillTreeData;
|
||||
import org.l2jmobius.gameserver.model.SkillLearn;
|
||||
@ -194,6 +195,12 @@ public class RequestAcquireAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.getStat().recalculateStats(true);
|
||||
|
||||
ThreadPool.schedule(() ->
|
||||
{
|
||||
player.sendSkillList();
|
||||
player.getStat().recalculateStats(false);
|
||||
player.broadcastInfo();
|
||||
}, 100);
|
||||
}
|
||||
}
|
@ -391,8 +391,6 @@ public class RequestAcquireSkill implements ClientPacket
|
||||
final String varName = count == 0 ? REVELATION_VAR_NAMES[0] : REVELATION_VAR_NAMES[1];
|
||||
player.getVariables().set(varName, skill.getId());
|
||||
giveSkill(player, trainer, skill);
|
||||
// Exploit prevention.
|
||||
SkillData.getInstance().getSkill(1570, 1).applyEffects(player, player);
|
||||
}
|
||||
|
||||
final List<SkillLearn> skills = SkillTreeData.getInstance().getAvailableRevelationSkills(player, SubclassType.BASECLASS);
|
||||
|
@ -48,5 +48,6 @@ public class RequestAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.sendSkillList();
|
||||
}
|
||||
}
|
||||
|
@ -24,6 +24,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.l2jmobius.commons.network.ReadablePacket;
|
||||
import org.l2jmobius.commons.threads.ThreadPool;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillData;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillTreeData;
|
||||
import org.l2jmobius.gameserver.model.SkillLearn;
|
||||
@ -194,6 +195,12 @@ public class RequestAcquireAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.getStat().recalculateStats(true);
|
||||
|
||||
ThreadPool.schedule(() ->
|
||||
{
|
||||
player.sendSkillList();
|
||||
player.getStat().recalculateStats(false);
|
||||
player.broadcastInfo();
|
||||
}, 100);
|
||||
}
|
||||
}
|
@ -391,8 +391,6 @@ public class RequestAcquireSkill implements ClientPacket
|
||||
final String varName = count == 0 ? REVELATION_VAR_NAMES[0] : REVELATION_VAR_NAMES[1];
|
||||
player.getVariables().set(varName, skill.getId());
|
||||
giveSkill(player, trainer, skill);
|
||||
// Exploit prevention.
|
||||
SkillData.getInstance().getSkill(1570, 1).applyEffects(player, player);
|
||||
}
|
||||
|
||||
final List<SkillLearn> skills = SkillTreeData.getInstance().getAvailableRevelationSkills(player, SubclassType.BASECLASS);
|
||||
|
@ -48,5 +48,6 @@ public class RequestAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.sendSkillList();
|
||||
}
|
||||
}
|
||||
|
@ -24,6 +24,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.l2jmobius.commons.network.ReadablePacket;
|
||||
import org.l2jmobius.commons.threads.ThreadPool;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillData;
|
||||
import org.l2jmobius.gameserver.data.xml.SkillTreeData;
|
||||
import org.l2jmobius.gameserver.model.SkillLearn;
|
||||
@ -194,6 +195,12 @@ public class RequestAcquireAbilityList implements ClientPacket
|
||||
}
|
||||
|
||||
player.sendPacket(new ExAcquireAPSkillList(player));
|
||||
player.getStat().recalculateStats(true);
|
||||
|
||||
ThreadPool.schedule(() ->
|
||||
{
|
||||
player.sendSkillList();
|
||||
player.getStat().recalculateStats(false);
|
||||
player.broadcastInfo();
|
||||
}, 100);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user