Reformat and clean up "net" package

This commit is contained in:
P0nk
2021-09-09 23:26:02 +02:00
parent 69f4580637
commit 6be6ea9927
235 changed files with 3556 additions and 3398 deletions

View File

@@ -60,11 +60,8 @@ public final class PacketProcessor {
return null;
}
PacketHandler handler = handlers[packetId];
if (handler != null) {
return handler;
}
return null;
}
public void registerHandler(RecvOpcode code, PacketHandler handler) {
try {

View File

@@ -206,7 +206,7 @@ public enum RecvOpcode {
private int code = -2;
private RecvOpcode(int code) {
RecvOpcode(int code) {
this.code = code;
}

View File

@@ -356,7 +356,7 @@ public enum SendOpcode {
VEGA_SCROLL(0x166);
private int code = -2;
private SendOpcode(int code) {
SendOpcode(int code) {
this.code = code;
}

View File

@@ -33,15 +33,14 @@ import java.util.Map;
import java.util.concurrent.locks.Lock;
/**
*
* @author Danny//changed to map :3
* @author Ronan//debuffs to storage as well
*/
public class PlayerBuffStorage {
private int id = (int) (Math.random() * 100);
private final int id = (int) (Math.random() * 100);
private final Lock lock = MonitoredReentrantLockFactory.createLock(MonitoredLockType.BUFF_STORAGE, true);
private Map<Integer, List<PlayerBuffValueHolder>> buffs = new HashMap<>();
private Map<Integer, Map<Disease, Pair<Long, MobSkill>>> diseases = new HashMap<>();
private final Map<Integer, List<PlayerBuffValueHolder>> buffs = new HashMap<>();
private final Map<Integer, Map<Disease, Pair<Long, MobSkill>>> diseases = new HashMap<>();
public void addBuffsToStorage(int chrid, List<PlayerBuffValueHolder> toStore) {
lock.lock();
@@ -99,9 +98,6 @@ public class PlayerBuffStorage {
return false;
}
final PlayerBuffStorage other = (PlayerBuffStorage) obj;
if (id != other.id) {
return false;
}
return true;
return id == other.id;
}
}

View File

@@ -24,7 +24,6 @@ package net.server;
import server.StatEffect;
/**
*
* @author Danny
*/
public class PlayerBuffValueHolder {

View File

@@ -22,7 +22,6 @@
package net.server;
/**
*
* @author Danny
*/
public class PlayerCoolDownValueHolder {

View File

@@ -36,8 +36,8 @@ public class PlayerStorage {
private final MonitoredReentrantReadWriteLock locks = new MonitoredReentrantReadWriteLock(MonitoredLockType.PLAYER_STORAGE, true);
private final Map<Integer, Character> storage = new LinkedHashMap<>();
private final Map<String, Character> nameStorage = new LinkedHashMap<>();
private MonitoredReadLock rlock = MonitoredReadLockFactory.createLock(locks);
private MonitoredWriteLock wlock = MonitoredWriteLockFactory.createLock(locks);
private final MonitoredReadLock rlock = MonitoredReadLockFactory.createLock(locks);
private final MonitoredWriteLock wlock = MonitoredWriteLockFactory.createLock(locks);
public void addPlayer(Character chr) {
wlock.lock();
@@ -53,7 +53,9 @@ public class PlayerStorage {
wlock.lock();
try {
Character mc = storage.remove(chr);
if(mc != null) nameStorage.remove(mc.getName().toLowerCase());
if (mc != null) {
nameStorage.remove(mc.getName().toLowerCase());
}
return mc;
} finally {

View File

@@ -96,14 +96,14 @@ public class Server {
private static final List<Integer> activeCoupons = new LinkedList<>();
private LoginServer loginServer;
private List<Map<Integer, String>> channels = new LinkedList<>();
private List<World> worlds = new ArrayList<>();
private final List<Map<Integer, String>> channels = new LinkedList<>();
private final List<World> worlds = new ArrayList<>();
private final Properties subnetInfo = new Properties();
private final Map<Integer, Set<Integer>> accountChars = new HashMap<>();
private final Map<Integer, Short> accountCharacterCount = new HashMap<>();
private final Map<Integer, Integer> worldChars = new HashMap<>();
private final Map<String, Integer> transitioningChars = new HashMap<>();
private List<Pair<Integer, String>> worldRecommendedList = new LinkedList<>();
private final List<Pair<Integer, String>> worldRecommendedList = new LinkedList<>();
private final Map<Integer, Guild> guilds = new HashMap<>(100);
private final Map<Client, Long> inLoginState = new HashMap<>(100);
@@ -1613,7 +1613,7 @@ public class Server {
String reason = Character.checkWorldTransferEligibility(con, characterId, oldWorld, newWorld); //check if character is still eligible
if (reason != null) {
removedTransfers.add(nameChangeId);
FilePrinter.print(FilePrinter.WORLD_TRANSFER, "World transfer cancelled : Character ID " + characterId + " at " + Calendar.getInstance().getTime().toString() + ", Reason : " + reason);
FilePrinter.print(FilePrinter.WORLD_TRANSFER, "World transfer cancelled : Character ID " + characterId + " at " + Calendar.getInstance().getTime() + ", Reason : " + reason);
try (PreparedStatement delPs = con.prepareStatement("DELETE FROM worldtransfers WHERE id = ?")) {
delPs.setInt(1, nameChangeId);
delPs.executeUpdate();

View File

@@ -20,15 +20,14 @@
package net.server.audit;
import java.util.ArrayList;
import java.util.List;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.concurrent.locks.Lock;
import java.util.concurrent.locks.ReentrantLock;
/**
*
* @author Ronan
*/
public class LockCollector {
@@ -39,7 +38,7 @@ public class LockCollector {
return instance;
}
private Map<Runnable, Integer> disposableLocks = new HashMap<>(200);
private final Map<Runnable, Integer> disposableLocks = new HashMap<>(200);
private final Lock lock = new ReentrantLock(true);
public void registerDisposeAction(Runnable r) {

View File

@@ -33,9 +33,8 @@ import java.util.concurrent.locks.Lock;
import java.util.concurrent.locks.ReentrantLock;
/**
*
* @author RonanLana
*
* <p>
* This tool has the main purpose of auditing deadlocks throughout the server and must be used only for debugging. The flag is USE_THREAD_TRACKER.
*/
public class ThreadTracker {
@@ -229,8 +228,7 @@ public class ThreadTracker {
} else {
threadLock.put(tid, 1);
}
}
else {
} else {
AtomicInteger c = lockCount.get(lockOid);
if (c != null) { // thanks BHB for detecting an NPE here
c.decrementAndGet();

View File

@@ -20,7 +20,6 @@
package net.server.audit.locks;
/**
*
* @author RonanLana
*/

View File

@@ -20,7 +20,6 @@
package net.server.audit.locks;
/**
*
* @author RonanLana
*/
public interface MonitoredReadLock {

View File

@@ -20,7 +20,6 @@
package net.server.audit.locks;
/**
*
* @author RonanLana
*/
public interface MonitoredReentrantLock {

View File

@@ -22,7 +22,6 @@ package net.server.audit.locks;
import java.util.concurrent.locks.ReentrantReadWriteLock;
/**
*
* @author RonanLana
*/
public class MonitoredReentrantReadWriteLock extends ReentrantReadWriteLock {

View File

@@ -20,7 +20,6 @@
package net.server.audit.locks;
/**
*
* @author RonanLana
*/
public interface MonitoredWriteLock {

View File

@@ -37,7 +37,6 @@ import java.util.concurrent.locks.ReentrantLock;
import java.util.concurrent.locks.ReentrantReadWriteLock;
/**
*
* @author RonanLana
*/
public class TrackerReadLock extends ReentrantReadWriteLock.ReadLock implements MonitoredReadLock {

View File

@@ -35,7 +35,6 @@ import java.util.concurrent.locks.Lock;
import java.util.concurrent.locks.ReentrantLock;
/**
*
* @author RonanLana
*/
public class TrackerReentrantLock extends ReentrantLock implements MonitoredReentrantLock {

View File

@@ -37,7 +37,6 @@ import java.util.concurrent.locks.ReentrantLock;
import java.util.concurrent.locks.ReentrantReadWriteLock;
/**
*
* @author RonanLana
*/
public class TrackerWriteLock extends ReentrantReadWriteLock.WriteLock implements MonitoredWriteLock {

View File

@@ -24,7 +24,6 @@ import net.server.audit.locks.MonitoredReadLock;
import tools.FilePrinter;
/**
*
* @author RonanLana
*/
public class EmptyReadLock extends AbstractEmptyLock implements MonitoredReadLock {

View File

@@ -24,7 +24,6 @@ import net.server.audit.locks.MonitoredReentrantLock;
import tools.FilePrinter;
/**
*
* @author RonanLana
*/
public class EmptyReentrantLock extends AbstractEmptyLock implements MonitoredReentrantLock {

View File

@@ -24,7 +24,6 @@ import net.server.audit.locks.MonitoredWriteLock;
import tools.FilePrinter;
/**
*
* @author RonanLana
*/
public class EmptyWriteLock extends AbstractEmptyLock implements MonitoredWriteLock {

View File

@@ -23,7 +23,6 @@ import net.server.audit.locks.MonitoredReentrantReadWriteLock;
import net.server.audit.locks.active.TrackerReadLock;
/**
*
* @author RonanLana
*/
public class MonitoredReadLockFactory {

View File

@@ -23,7 +23,6 @@ import net.server.audit.locks.MonitoredLockType;
import net.server.audit.locks.active.TrackerReentrantLock;
/**
*
* @author RonanLana
*/
public class MonitoredReentrantLockFactory {

View File

@@ -23,7 +23,6 @@ import net.server.audit.locks.MonitoredReentrantReadWriteLock;
import net.server.audit.locks.active.TrackerWriteLock;
/**
*
* @author RonanLana
*/
public class MonitoredWriteLockFactory {

View File

@@ -70,25 +70,25 @@ public final class Channel {
private MapManager mapManager;
private EventScriptManager eventSM;
private ServicesManager services;
private Map<Integer, HiredMerchant> hiredMerchants = new HashMap<>();
private final Map<Integer, HiredMerchant> hiredMerchants = new HashMap<>();
private final Map<Integer, Integer> storedVars = new HashMap<>();
private Set<Integer> playersAway = new HashSet<>();
private Map<ExpeditionType, Expedition> expeditions = new HashMap<>();
private Map<Integer, MiniDungeon> dungeons = new HashMap<>();
private List<ExpeditionType> expedType = new ArrayList<>();
private Set<MapleMap> ownedMaps = Collections.synchronizedSet(Collections.newSetFromMap(new WeakHashMap<>()));
private final Set<Integer> playersAway = new HashSet<>();
private final Map<ExpeditionType, Expedition> expeditions = new HashMap<>();
private final Map<Integer, MiniDungeon> dungeons = new HashMap<>();
private final List<ExpeditionType> expedType = new ArrayList<>();
private final Set<MapleMap> ownedMaps = Collections.synchronizedSet(Collections.newSetFromMap(new WeakHashMap<>()));
private Event event;
private boolean finishedShutdown = false;
private Set<Integer> usedMC = new HashSet<>();
private final Set<Integer> usedMC = new HashSet<>();
private int usedDojo = 0;
private int[] dojoStage;
private long[] dojoFinishTime;
private ScheduledFuture<?>[] dojoTask;
private Map<Integer, Integer> dojoParty = new HashMap<>();
private final Map<Integer, Integer> dojoParty = new HashMap<>();
private List<Integer> chapelReservationQueue = new LinkedList<>();
private List<Integer> cathedralReservationQueue = new LinkedList<>();
private final List<Integer> chapelReservationQueue = new LinkedList<>();
private final List<Integer> cathedralReservationQueue = new LinkedList<>();
private ScheduledFuture<?> chapelReservationTask;
private ScheduledFuture<?> cathedralReservationTask;
@@ -100,11 +100,11 @@ public final class Channel {
private Set<Integer> ongoingCathedralGuests = null;
private long ongoingStartTime;
private MonitoredReentrantReadWriteLock merchantLock = new MonitoredReentrantReadWriteLock(MonitoredLockType.MERCHANT, true);
private MonitoredReadLock merchRlock = MonitoredReadLockFactory.createLock(merchantLock);
private MonitoredWriteLock merchWlock = MonitoredWriteLockFactory.createLock(merchantLock);
private final MonitoredReentrantReadWriteLock merchantLock = new MonitoredReentrantReadWriteLock(MonitoredLockType.MERCHANT, true);
private final MonitoredReadLock merchRlock = MonitoredReadLockFactory.createLock(merchantLock);
private final MonitoredWriteLock merchWlock = MonitoredWriteLockFactory.createLock(merchantLock);
private MonitoredReentrantLock[] faceLock = new MonitoredReentrantLock[YamlConfig.config.server.CHANNEL_LOCKS];
private final MonitoredReentrantLock[] faceLock = new MonitoredReentrantLock[YamlConfig.config.server.CHANNEL_LOCKS];
private MonitoredReentrantLock lock = MonitoredReentrantLockFactory.createLock(MonitoredLockType.CHANNEL, true);
@@ -466,7 +466,9 @@ public final class Channel {
}
public int lookupPartyDojo(Party party) {
if(party == null) return -1;
if (party == null) {
return -1;
}
Integer i = dojoParty.get(party.hashCode());
return (i != null) ? i : -1;
@@ -499,7 +501,9 @@ public final class Channel {
int dojoSlot = getDojoSlot(slotMapid);
if (party != null) {
if(dojoParty.containsKey(party.hashCode())) return -2;
if (dojoParty.containsKey(party.hashCode())) {
return -2;
}
dojoParty.put(party.hashCode(), dojoSlot);
}
@@ -528,7 +532,9 @@ public final class Channel {
}
if (party != null) {
if(dojoParty.remove(party.hashCode()) != null) return;
if (dojoParty.remove(party.hashCode()) != null) {
return;
}
}
if (dojoParty.containsValue(slot)) { // strange case, no party there!
@@ -573,7 +579,9 @@ public final class Channel {
break;
}
MapleMap dojoMap = getMapFactory().getMap(dojoBaseMap + (100 * (stage + i)) + delta);
if(!dojoMap.getAllPlayers().isEmpty()) return;
if (!dojoMap.getAllPlayers().isEmpty()) {
return;
}
}
freeDojoSlot(slot, null);
@@ -582,7 +590,9 @@ public final class Channel {
private void startDojoSchedule(final int dojoMapId) {
final int slot = getDojoSlot(dojoMapId);
final int stage = (dojoMapId / 100) % 100;
if(stage <= dojoStage[slot]) return;
if (stage <= dojoStage[slot]) {
return;
}
long clockTime = (stage > 36 ? 15 : (stage / 6) + 5) * 60000;
@@ -622,7 +632,9 @@ public final class Channel {
public void dismissDojoSchedule(int dojoMapId, Party party) {
int slot = getDojoSlot(dojoMapId);
int stage = (dojoMapId / 100) % 100;
if(stage <= dojoStage[slot]) return;
if (stage <= dojoStage[slot]) {
return;
}
lock.lock();
try {
@@ -656,7 +668,9 @@ public final class Channel {
public boolean addMiniDungeon(int dungeonid) {
lock.lock();
try {
if(dungeons.containsKey(dungeonid)) return false;
if (dungeons.containsKey(dungeonid)) {
return false;
}
MiniDungeonInfo mmdi = MiniDungeonInfo.getDungeon(dungeonid);
MiniDungeon mmd = new MiniDungeon(mmdi.getBase(), this.getMapFactory().getMap(mmdi.getDungeonId()).getTimeLimit()); // thanks Conrad for noticing hardcoded time limit for minidungeons
@@ -692,10 +706,14 @@ public final class Channel {
lock.lock();
try {
List<Integer> weddingReservationQueue = (cathedral ? cathedralReservationQueue : chapelReservationQueue);
if(weddingReservationQueue.isEmpty()) return null;
if (weddingReservationQueue.isEmpty()) {
return null;
}
ret = weddingReservationQueue.remove(0);
if(ret == null) return null;
if (ret == null) {
return null;
}
} finally {
lock.unlock();
}
@@ -723,12 +741,16 @@ public final class Channel {
}
public int getWeddingReservationStatus(Integer weddingId, boolean cathedral) {
if(weddingId == null) return -1;
if (weddingId == null) {
return -1;
}
lock.lock();
try {
if (cathedral) {
if(weddingId.equals(ongoingCathedral)) return 0;
if (weddingId.equals(ongoingCathedral)) {
return 0;
}
for (int i = 0; i < cathedralReservationQueue.size(); i++) {
if (weddingId.equals(cathedralReservationQueue.get(i))) {
@@ -736,7 +758,9 @@ public final class Channel {
}
}
} else {
if(weddingId.equals(ongoingChapel)) return 0;
if (weddingId.equals(ongoingChapel)) {
return 0;
}
for (int i = 0; i < chapelReservationQueue.size(); i++) {
if (weddingId.equals(chapelReservationQueue.get(i))) {
@@ -752,7 +776,9 @@ public final class Channel {
}
public int pushWeddingReservation(Integer weddingId, boolean cathedral, boolean premium, Integer groomId, Integer brideId) {
if(weddingId == null || isWeddingReserved(weddingId)) return -1;
if (weddingId == null || isWeddingReserved(weddingId)) {
return -1;
}
World wserv = getWorldServer();
wserv.putMarriageQueued(weddingId, cathedral, premium, groomId, brideId);
@@ -851,12 +877,16 @@ public final class Channel {
public synchronized boolean acceptOngoingWedding(final boolean cathedral) { // couple succeeded to show up and started the ceremony
if (cathedral) {
if(cathedralReservationTask == null) return false;
if (cathedralReservationTask == null) {
return false;
}
cathedralReservationTask.cancel(false);
cathedralReservationTask = null;
} else {
if(chapelReservationTask == null) return false;
if (chapelReservationTask == null) {
return false;
}
chapelReservationTask.cancel(false);
chapelReservationTask = null;
@@ -877,9 +907,10 @@ public final class Channel {
if (leftTime / (60 * 1000) > 0) {
mode++; //counts minutes
if(leftTime / (60*60*1000) > 0)
if (leftTime / (60 * 60 * 1000) > 0) {
mode++; //counts hours
}
}
switch (mode) {
case 2:
@@ -907,7 +938,9 @@ public final class Channel {
}
public String getWeddingReservationTimeLeft(Integer weddingId) {
if(weddingId == null) return null;
if (weddingId == null) {
return null;
}
lock.lock();
try {

View File

@@ -22,7 +22,6 @@
package net.server.channel;
/**
*
* @author Frz
*/
public class CharacterIdChannelPair {

View File

@@ -65,7 +65,9 @@ public abstract class AbstractDealDamageHandler extends AbstractPacketHandler {
}
int skillLevel = chr.getSkillLevel(mySkill);
if(skillLevel == 0 && GameConstants.isPqSkillMap(chr.getMapId()) && GameConstants.isPqSkill(mySkill.getId())) skillLevel = 1;
if (skillLevel == 0 && GameConstants.isPqSkillMap(chr.getMapId()) && GameConstants.isPqSkill(mySkill.getId())) {
skillLevel = 1;
}
if (skillLevel == 0) {
return null;
@@ -189,29 +191,29 @@ public abstract class AbstractDealDamageHandler extends AbstractPacketHandler {
double distance = player.getPosition().distanceSq(monster.getPosition());
double distanceToDetect = 200000.0;
if(attack.ranged)
if (attack.ranged) {
distanceToDetect += 400000;
}
if(attack.magic)
if (attack.magic) {
distanceToDetect += 200000;
}
if(player.getJob().isA(Job.ARAN1))
if (player.getJob().isA(Job.ARAN1)) {
distanceToDetect += 200000; // Arans have extra range over normal warriors.
}
if(attack.skill == Aran.COMBO_SMASH || attack.skill == Aran.BODY_PRESSURE)
if (attack.skill == Aran.COMBO_SMASH || attack.skill == Aran.BODY_PRESSURE) {
distanceToDetect += 40000;
else if(attack.skill == Bishop.GENESIS || attack.skill == ILArchMage.BLIZZARD || attack.skill == FPArchMage.METEOR_SHOWER)
} else if (attack.skill == Bishop.GENESIS || attack.skill == ILArchMage.BLIZZARD || attack.skill == FPArchMage.METEOR_SHOWER) {
distanceToDetect += 275000;
else if(attack.skill == Hero.BRANDISH || attack.skill == DragonKnight.SPEAR_CRUSHER || attack.skill == DragonKnight.POLE_ARM_CRUSHER)
} else if (attack.skill == Hero.BRANDISH || attack.skill == DragonKnight.SPEAR_CRUSHER || attack.skill == DragonKnight.POLE_ARM_CRUSHER) {
distanceToDetect += 40000;
else if(attack.skill == DragonKnight.DRAGON_ROAR || attack.skill == SuperGM.SUPER_DRAGON_ROAR)
} else if (attack.skill == DragonKnight.DRAGON_ROAR || attack.skill == SuperGM.SUPER_DRAGON_ROAR) {
distanceToDetect += 250000;
else if(attack.skill == Shadower.BOOMERANG_STEP)
} else if (attack.skill == Shadower.BOOMERANG_STEP) {
distanceToDetect += 60000;
}
if (distance > distanceToDetect) {
AutobanFactory.DISTANCE_HACK.alert(player, "Distance Sq to monster: " + distance + " SID: " + attack.skill + " MID: " + monster.getId());
@@ -244,7 +246,9 @@ public abstract class AbstractDealDamageHandler extends AbstractPacketHandler {
}
for (Integer eachd : onedList) {
if(eachd < 0) eachd += Integer.MAX_VALUE;
if (eachd < 0) {
eachd += Integer.MAX_VALUE;
}
totDamageToOneMonster += eachd;
}
totDamage += totDamageToOneMonster;
@@ -260,10 +264,11 @@ public abstract class AbstractDealDamageHandler extends AbstractPacketHandler {
if (pickpocket.getEffect(picklv).makeChanceResult()) {
final int eachdf;
if(eachd < 0)
if (eachd < 0) {
eachdf = eachd + Integer.MAX_VALUE;
else
} else {
eachdf = eachd;
}
TimerManager.getInstance().schedule(() -> map.spawnMesoDrop(Math.min((int) Math.max(((double) eachdf / (double) 20000) * (double) maxmeso, 1), maxmeso), new Point((int) (monster.getPosition().getX() + Randomizer.nextInt(100) - 50), (int) (monster.getPosition().getY())), monster, player, true, (byte) 2), delay);
delay += 100;
@@ -284,7 +289,9 @@ public abstract class AbstractDealDamageHandler extends AbstractPacketHandler {
int rndPool = (int) Math.floor(Math.random() * dropPool.get(dropPool.size() - 1));
int i = 0;
while(rndPool >= dropPool.get(i)) i++;
while (rndPool >= dropPool.get(i)) {
i++;
}
List<MonsterDropEntry> toSteal = new ArrayList<>();
toSteal.add(mi.retrieveDrop(monster.getId()).get(i));
@@ -511,8 +518,11 @@ public abstract class AbstractDealDamageHandler extends AbstractPacketHandler {
private static void damageMonsterWithSkill(final Character attacker, final MapleMap map, final Monster monster, final int damage, int skillid, int fixedTime) {
int animationTime;
if(fixedTime == 0) animationTime = SkillFactory.getSkill(skillid).getAnimationTime();
else animationTime = fixedTime;
if (fixedTime == 0) {
animationTime = SkillFactory.getSkill(skillid).getAnimationTime();
} else {
animationTime = fixedTime;
}
if (animationTime > 0) { // be sure to only use LIMITED ATTACKS with animation time here
TimerManager.getInstance().schedule(() -> {
@@ -539,7 +549,9 @@ public abstract class AbstractDealDamageHandler extends AbstractPacketHandler {
if (ret.skill > 0) {
ret.skilllevel = chr.getSkillLevel(ret.skill);
if(ret.skilllevel == 0 && GameConstants.isPqSkillMap(chr.getMapId()) && GameConstants.isPqSkill(ret.skill)) ret.skilllevel = 1;
if (ret.skilllevel == 0 && GameConstants.isPqSkillMap(chr.getMapId()) && GameConstants.isPqSkill(ret.skill)) {
ret.skilllevel = 1;
}
}
if (ret.skill == Evan.ICE_BREATH || ret.skill == Evan.FIRE_BREATH || ret.skill == FPArchMage.BIG_BANG || ret.skill == ILArchMage.BIG_BANG || ret.skill == Bishop.BIG_BANG || ret.skill == Gunslinger.GRENADE || ret.skill == Brawler.CORKSCREW_BLOW || ret.skill == ThunderBreaker.CORKSCREW_BLOW || ret.skill == NightWalker.POISON_BOMB) {
@@ -627,21 +639,25 @@ public abstract class AbstractDealDamageHandler extends AbstractPacketHandler {
// Since the skill is magic based, use the magic formula
if (chr.getJob() == Job.IL_ARCHMAGE || chr.getJob() == Job.IL_MAGE) {
int skillLvl = chr.getSkillLevel(ILMage.ELEMENT_AMPLIFICATION);
if(skillLvl > 0)
if (skillLvl > 0) {
calcDmgMax = calcDmgMax * SkillFactory.getSkill(ILMage.ELEMENT_AMPLIFICATION).getEffect(skillLvl).getY() / 100;
}
} else if (chr.getJob() == Job.FP_ARCHMAGE || chr.getJob() == Job.FP_MAGE) {
int skillLvl = chr.getSkillLevel(FPMage.ELEMENT_AMPLIFICATION);
if(skillLvl > 0)
if (skillLvl > 0) {
calcDmgMax = calcDmgMax * SkillFactory.getSkill(FPMage.ELEMENT_AMPLIFICATION).getEffect(skillLvl).getY() / 100;
}
} else if (chr.getJob() == Job.BLAZEWIZARD3 || chr.getJob() == Job.BLAZEWIZARD4) {
int skillLvl = chr.getSkillLevel(BlazeWizard.ELEMENT_AMPLIFICATION);
if(skillLvl > 0)
if (skillLvl > 0) {
calcDmgMax = calcDmgMax * SkillFactory.getSkill(BlazeWizard.ELEMENT_AMPLIFICATION).getEffect(skillLvl).getY() / 100;
}
} else if (chr.getJob() == Job.EVAN7 || chr.getJob() == Job.EVAN8 || chr.getJob() == Job.EVAN9 || chr.getJob() == Job.EVAN10) {
int skillLvl = chr.getSkillLevel(Evan.MAGIC_AMPLIFICATION);
if(skillLvl > 0)
if (skillLvl > 0) {
calcDmgMax = calcDmgMax * SkillFactory.getSkill(Evan.MAGIC_AMPLIFICATION).getEffect(skillLvl).getY() / 100;
}
}
calcDmgMax *= effect.getMatk();
if (ret.skill == Cleric.HEAL) {
@@ -673,7 +689,9 @@ public abstract class AbstractDealDamageHandler extends AbstractPacketHandler {
} else {
// Normal Combo
int skillLv = chr.getSkillLevel(oid);
if(skillLv <= 0 || chr.isGM()) skillLv = SkillFactory.getSkill(oid).getMaxLevel();
if (skillLv <= 0 || chr.isGM()) {
skillLv = SkillFactory.getSkill(oid).getMaxLevel();
}
if (skillLv > 0) {
StatEffect ceffect = SkillFactory.getSkill(oid).getEffect(skillLv);
@@ -684,16 +702,17 @@ public abstract class AbstractDealDamageHandler extends AbstractPacketHandler {
if (GameConstants.isFinisherSkill(ret.skill)) {
// Finisher skills do more damage based on how many orbs the player has.
int orbs = comboBuff - 1;
if(orbs == 2)
if (orbs == 2) {
calcDmgMax *= 1.2;
else if(orbs == 3)
} else if (orbs == 3) {
calcDmgMax *= 1.54;
else if(orbs == 4)
} else if (orbs == 4) {
calcDmgMax *= 2;
else if(orbs >= 5)
} else if (orbs >= 5) {
calcDmgMax *= 2.5;
}
}
}
if (chr.getEnergyBar() == 15000) {
int energycharge = chr.isCygnus() ? ThunderBreaker.ENERGY_CHARGE : Marauder.ENERGY_CHARGE;
@@ -716,10 +735,7 @@ public abstract class AbstractDealDamageHandler extends AbstractPacketHandler {
calcDmgMax += 80000; // Aran Tutorial.
}
boolean canCrit = false;
if(chr.getJob().isA((Job.BOWMAN)) || chr.getJob().isA(Job.THIEF) || chr.getJob().isA(Job.NIGHTWALKER1) || chr.getJob().isA(Job.WINDARCHER1) || chr.getJob() == Job.ARAN3 || chr.getJob() == Job.ARAN4 || chr.getJob() == Job.MARAUDER || chr.getJob() == Job.BUCCANEER) {
canCrit = true;
}
boolean canCrit = chr.getJob().isA((Job.BOWMAN)) || chr.getJob().isA(Job.THIEF) || chr.getJob().isA(Job.NIGHTWALKER1) || chr.getJob().isA(Job.WINDARCHER1) || chr.getJob() == Job.ARAN3 || chr.getJob() == Job.ARAN4 || chr.getJob() == Job.MARAUDER || chr.getJob() == Job.BUCCANEER;
if (chr.getBuffEffect(BuffStat.SHARP_EYES) != null) {
// Any class that has sharp eyes can crit. Also, since it stacks with normal crit go ahead
@@ -729,16 +745,14 @@ public abstract class AbstractDealDamageHandler extends AbstractPacketHandler {
calcDmgMax *= 1.4;
}
boolean shadowPartner = false;
if(chr.getBuffEffect(BuffStat.SHADOWPARTNER) != null) {
shadowPartner = true;
}
boolean shadowPartner = chr.getBuffEffect(BuffStat.SHADOWPARTNER) != null;
if (ret.skill != 0) {
int fixed = ret.getAttackEffect(chr, SkillFactory.getSkill(ret.skill)).getFixDamage();
if(fixed > 0)
if (fixed > 0) {
calcDmgMax = fixed;
}
}
for (int i = 0; i < ret.numAttacked; i++) {
int oid = p.readInt();
p.skip(14);
@@ -818,9 +832,10 @@ public abstract class AbstractDealDamageHandler extends AbstractPacketHandler {
int damage = p.readInt();
long hitDmgMax = calcDmgMax;
if (ret.skill == Buccaneer.BARRAGE || ret.skill == ThunderBreaker.BARRAGE) {
if(j > 3)
if (j > 3) {
hitDmgMax *= Math.pow(2, (j - 3));
}
}
if (shadowPartner) {
// For shadow partner, the second half of the hits only do 50% damage. So calc that
// in for the crit effects.
@@ -838,7 +853,9 @@ public abstract class AbstractDealDamageHandler extends AbstractPacketHandler {
long maxWithCrit = hitDmgMax;
if (canCrit) // They can crit, so up the max.
{
maxWithCrit *= 2;
}
// Warn if the damage is over 1.5x what we calculated above.
if (damage > maxWithCrit * 1.5) {

View File

@@ -36,7 +36,9 @@ public abstract class AbstractMovementPacketHandler extends AbstractPacketHandle
protected List<LifeMovementFragment> parseMovement(InPacket p) throws EmptyMovementException {
List<LifeMovementFragment> res = new ArrayList<>();
byte numCommands = p.readByte();
if (numCommands < 1) throw new EmptyMovementException(p);
if (numCommands < 1) {
throw new EmptyMovementException(p);
}
for (byte i = 0; i < numCommands; i++) {
byte command = p.readByte();
switch (command) {
@@ -148,7 +150,9 @@ public abstract class AbstractMovementPacketHandler extends AbstractPacketHandle
protected void updatePosition(InPacket p, AnimatedMapObject target, int yOffset) throws EmptyMovementException {
byte numCommands = p.readByte();
if (numCommands < 1) throw new EmptyMovementException(p);
if (numCommands < 1) {
throw new EmptyMovementException(p);
}
for (byte i = 0; i < numCommands; i++) {
byte command = p.readByte();
switch (command) {

View File

@@ -41,7 +41,6 @@ import java.sql.PreparedStatement;
import java.sql.SQLException;
/**
*
* @author Jay Estrella
* @author Ubaware
*/
@@ -60,7 +59,9 @@ public final class AcceptFamilyHandler extends AbstractPacketHandler {
Character inviter = c.getWorldServer().getPlayerStorage().getCharacterById(inviterId);
if (inviter != null) {
InviteResult inviteResult = InviteCoordinator.answerInvite(InviteType.FAMILY, c.getPlayer().getId(), c.getPlayer(), accept);
if(inviteResult.result == InviteResultType.NOT_FOUND) return; //was never invited. (or expired on server only somehow?)
if (inviteResult.result == InviteResultType.NOT_FOUND) {
return; //was never invited. (or expired on server only somehow?)
}
if (accept) {
if (inviter.getFamily() != null) {
if (chr.getFamily() == null) {
@@ -77,7 +78,9 @@ public final class AcceptFamilyHandler extends AbstractPacketHandler {
} else { //absorb target family
FamilyEntry targetEntry = chr.getFamilyEntry();
Family targetFamily = targetEntry.getFamily();
if(targetFamily.getLeader() != targetEntry) return;
if (targetFamily.getLeader() != targetEntry) {
return;
}
if (inviter.getFamily().getTotalGenerations() + targetFamily.getTotalGenerations() <= YamlConfig.config.server.FAMILY_MAX_GENERATIONS) {
targetEntry.join(inviter.getFamilyEntry());
} else {

View File

@@ -9,7 +9,6 @@ import tools.LogHelper;
import tools.PacketCreator;
/**
*
* @author kevintjuh93
*/
public class AdminChatHandler extends AbstractPacketHandler {

View File

@@ -176,7 +176,7 @@ public final class AdminCommandHandler extends AbstractPacketHandler {
}
break;
default:
System.out.println("New GM packet encountered (MODE : " + mode + ": " + p.toString());
System.out.println("New GM packet encountered (MODE : " + mode + ": " + p);
break;
}
}

View File

@@ -33,7 +33,6 @@ import net.server.guild.GuildPackets;
import tools.PacketCreator;
/**
*
* @author XoticStory, Ronan
*/
public final class AllianceOperationHandler extends AbstractPacketHandler {
@@ -215,7 +214,9 @@ public final class AllianceOperationHandler extends AbstractPacketHandler {
private void changePlayerAllianceRank(Alliance alliance, Character chr, boolean raise) {
int newRank = chr.getAllianceRank() + (raise ? -1 : 1);
if(newRank < 3 || newRank > 5) return;
if (newRank < 3 || newRank > 5) {
return;
}
chr.getMGC().setAllianceRank(newRank);
chr.saveGuildStatus();

View File

@@ -53,7 +53,9 @@ public class AranComboHandler extends AbstractPacketHandler {
case 80:
case 90:
case 100:
if (player.getJob().getId() != 2000 && (combo / 10) > skillLevel) break;
if (player.getJob().getId() != 2000 && (combo / 10) > skillLevel) {
break;
}
SkillFactory.getSkill(Aran.COMBO_ABILITY).getEffect(combo / 10).applyComboBuff(player, combo);
break;
}

View File

@@ -33,7 +33,9 @@ public final class AutoAggroHandler extends AbstractPacketHandler {
@Override
public final void handlePacket(InPacket p, Client c) {
Character player = c.getPlayer();
if (player.isHidden()) return; // Don't auto aggro GM's in hide...
if (player.isHidden()) {
return; // Don't auto aggro GM's in hide...
}
MapleMap map = player.getMap();
int oid = p.readInt();

View File

@@ -27,7 +27,6 @@ import net.AbstractPacketHandler;
import net.packet.InPacket;
/**
*
* @author Generic, Ronan
*/
public class AutoAssignHandler extends AbstractPacketHandler {

View File

@@ -30,7 +30,6 @@ import server.maps.Summon;
import java.util.Collection;
/**
*
* @author BubblesDev
*/
public final class BeholderHandler extends AbstractPacketHandler {//Summon Skills noobs

View File

@@ -40,7 +40,7 @@ import static client.BuddyList.BuddyOperation.ADDED;
public class BuddylistModifyHandler extends AbstractPacketHandler {
private static class CharacterIdNameBuddyCapacity extends CharacterNameAndId {
private int buddyCapacity;
private final int buddyCapacity;
public CharacterIdNameBuddyCapacity(int id, String name, int buddyCapacity) {
super(id, name);

View File

@@ -129,7 +129,9 @@ public final class CashOperationHandler extends AbstractPacketHandler {
ex.printStackTrace();
}
Character receiver = c.getChannelServer().getPlayerStorage().getCharacterByName(recipient.get("name"));
if (receiver != null) receiver.showNote();
if (receiver != null) {
receiver.showNote();
}
} else if (action == 0x05) { // Modify wish list
cs.clearWishList();
for (byte i = 0; i < 10; i++) {

View File

@@ -28,7 +28,6 @@ import tools.PacketCreator;
import tools.Pair;
/**
*
* @author RonanLana
*/
public class CashShopSurpriseHandler extends AbstractPacketHandler {

View File

@@ -28,7 +28,6 @@ import net.packet.InPacket;
import net.server.Server;
/**
*
* @author Matze
*/
public final class ChangeChannelHandler extends AbstractPacketHandler {

View File

@@ -46,7 +46,7 @@ public final class ChangeMapHandler extends AbstractPacketHandler {
if (chr.isChangingMaps() || chr.isBanned()) {
if (chr.isChangingMaps()) {
FilePrinter.printError(FilePrinter.PORTAL_STUCK + chr.getName() + ".txt", "Player " + chr.getName() + " got stuck when changing maps. Timestamp: " + Calendar.getInstance().getTime().toString() + " Last visited mapids: " + chr.getLastVisitedMapids());
FilePrinter.printError(FilePrinter.PORTAL_STUCK + chr.getName() + ".txt", "Player " + chr.getName() + " got stuck when changing maps. Timestamp: " + Calendar.getInstance().getTime() + " Last visited mapids: " + chr.getLastVisitedMapids());
}
c.sendPacket(PacketCreator.enableActions());

View File

@@ -29,7 +29,6 @@ import net.packet.InPacket;
import scripting.npc.NPCScriptManager;
/**
*
* @author kevintjuh93
*/
public class ClickGuideHandler extends AbstractPacketHandler {

View File

@@ -27,7 +27,6 @@ import net.packet.InPacket;
import tools.PacketCreator;
/**
*
* @author Xterminator
*/
public final class CloseChalkboardHandler extends AbstractPacketHandler {

View File

@@ -57,7 +57,9 @@ public final class CloseRangeDamageHandler extends AbstractDealDamageHandler {
}
if (chr.getDojoEnergy() < 10000 && (attack.skill == 1009 || attack.skill == 10001009 || attack.skill == 20001009)) // PE hacking or maybe just lagging
{
return;
}
if (GameConstants.isDojo(chr.getMap().getId()) && attack.numAttacked > 0) {
chr.setDojoEnergy(chr.getDojoEnergy() + YamlConfig.config.server.DOJO_ENERGY_ATK);
c.sendPacket(PacketCreator.getEnergy("energy", chr.getDojoEnergy()));
@@ -84,10 +86,15 @@ public final class CloseRangeDamageHandler extends AbstractDealDamageHandler {
ceffect = advcombo.getEffect(advComboSkillLevel);
} else {
int comboLv = chr.getSkillLevel(combo);
if(comboLv <= 0 || chr.isGM()) comboLv = SkillFactory.getSkill(oid).getMaxLevel();
if (comboLv <= 0 || chr.isGM()) {
comboLv = SkillFactory.getSkill(oid).getMaxLevel();
}
if(comboLv > 0) ceffect = combo.getEffect(comboLv);
else ceffect = null;
if (comboLv > 0) {
ceffect = combo.getEffect(comboLv);
} else {
ceffect = null;
}
}
if (ceffect != null) {
if (orbcount < ceffect.getX() + 1) {
@@ -99,7 +106,9 @@ public final class CloseRangeDamageHandler extends AbstractDealDamageHandler {
}
int olv = chr.getSkillLevel(oid);
if(olv <= 0) olv = SkillFactory.getSkill(oid).getMaxLevel();
if (olv <= 0) {
olv = SkillFactory.getSkill(oid).getMaxLevel();
}
int duration = combo.getEffect(olv).getDuration();
List<Pair<BuffStat, Integer>> stat = Collections.singletonList(new Pair<>(BuffStat.COMBO, neworbcount));

View File

@@ -31,7 +31,6 @@ import server.maps.MapleMap;
import tools.PacketCreator;
/**
*
* @author kevintjuh93
*/
public final class CoconutHandler extends AbstractPacketHandler {

View File

@@ -45,7 +45,6 @@ import java.util.*;
import java.util.Map.Entry;
/**
*
* @author Penguins (Acrylic)
* @author Ronan (HeavenMS)
*/

View File

@@ -28,7 +28,6 @@ import net.packet.InPacket;
import net.server.guild.Guild;
/**
*
* @author Xterminator
*/
public final class DenyGuildRequestHandler extends AbstractPacketHandler {

View File

@@ -30,7 +30,6 @@ import server.maps.MapObject;
import tools.PacketCreator;
/**
*
* @author Matze
*/
public final class DoorHandler extends AbstractPacketHandler {

View File

@@ -30,7 +30,6 @@ import server.maps.MiniDungeonInfo;
import tools.PacketCreator;
/**
*
* @author Flav
*/
public class EnterCashShopHandler extends AbstractPacketHandler {

View File

@@ -31,7 +31,6 @@ import net.server.coordinator.world.InviteCoordinator.InviteType;
import tools.PacketCreator;
/**
*
* @author Jay Estrella
* @author Ubaware
*/

View File

@@ -11,10 +11,16 @@ public class FamilyPreceptsHandler extends AbstractPacketHandler {
@Override
public void handlePacket(InPacket p, Client c) {
Family family = c.getPlayer().getFamily();
if(family == null) return;
if(family.getLeader().getChr() != c.getPlayer()) return; //only the leader can set the precepts
if (family == null) {
return;
}
if (family.getLeader().getChr() != c.getPlayer()) {
return; //only the leader can set the precepts
}
String newPrecepts = p.readString();
if(newPrecepts.length() > 200) return;
if (newPrecepts.length() > 200) {
return;
}
family.setMessage(newPrecepts, true);
//family.broadcastFamilyInfoUpdate(); //probably don't need to broadcast for this?
c.sendPacket(PacketCreator.getFamilyInfo(c.getPlayer().getFamilyEntry()));

View File

@@ -31,23 +31,33 @@ public class FamilySeparateHandler extends AbstractPacketHandler {
@Override
public void handlePacket(InPacket p, Client c) {
if(!YamlConfig.config.server.USE_FAMILY_SYSTEM) return;
if (!YamlConfig.config.server.USE_FAMILY_SYSTEM) {
return;
}
Family oldFamily = c.getPlayer().getFamily();
if(oldFamily == null) return;
if (oldFamily == null) {
return;
}
FamilyEntry forkOn = null;
boolean isSenior;
if (p.available() > 0) { //packet 0x95 doesn't send id, since there is only one senior
forkOn = c.getPlayer().getFamily().getEntryByID(p.readInt());
if(!c.getPlayer().getFamilyEntry().isJunior(forkOn)) return; //packet editing?
if (!c.getPlayer().getFamilyEntry().isJunior(forkOn)) {
return; //packet editing?
}
isSenior = true;
} else {
forkOn = c.getPlayer().getFamilyEntry();
isSenior = false;
}
if(forkOn == null) return;
if (forkOn == null) {
return;
}
FamilyEntry senior = forkOn.getSenior();
if(senior == null) return;
if (senior == null) {
return;
}
int levelDiff = Math.abs(c.getPlayer().getLevel() - senior.getLevel());
int cost = 2500 * levelDiff;
cost += levelDiff * levelDiff;
@@ -58,7 +68,9 @@ public class FamilySeparateHandler extends AbstractPacketHandler {
c.getPlayer().gainMeso(-cost);
int repCost = separateRepCost(forkOn);
senior.gainReputation(-repCost, false);
if(senior.getSenior() != null) senior.getSenior().gainReputation(-(repCost/2), false);
if (senior.getSenior() != null) {
senior.getSenior().gainReputation(-(repCost / 2), false);
}
forkOn.announceToSenior(PacketCreator.serverNotice(5, forkOn.getName() + " has left the family."), true);
forkOn.fork();
c.sendPacket(PacketCreator.getFamilyInfo(forkOn)); //pedigree info will be requested from the client if the window is open

View File

@@ -18,14 +18,20 @@ public class FamilySummonResponseHandler extends AbstractPacketHandler {
@Override
public void handlePacket(InPacket p, Client c) {
if(!YamlConfig.config.server.USE_FAMILY_SYSTEM) return;
if (!YamlConfig.config.server.USE_FAMILY_SYSTEM) {
return;
}
p.readString(); //family name
boolean accept = p.readByte() != 0;
InviteResult inviteResult = InviteCoordinator.answerInvite(InviteType.FAMILY_SUMMON, c.getPlayer().getId(), c.getPlayer(), accept);
if(inviteResult.result == InviteResultType.NOT_FOUND) return;
if (inviteResult.result == InviteResultType.NOT_FOUND) {
return;
}
Character inviter = inviteResult.from;
FamilyEntry inviterEntry = inviter.getFamilyEntry();
if(inviterEntry == null) return;
if (inviterEntry == null) {
return;
}
MapleMap map = (MapleMap) inviteResult.params[0];
if (accept && inviter.getMap() == map) { //cancel if inviter has changed maps
c.getPlayer().changeMap(map, map.getPortal(0));

View File

@@ -35,7 +35,6 @@ import server.maps.MapleMap;
import tools.PacketCreator;
/**
*
* @author Moogra
* @author Ubaware
*/

View File

@@ -28,7 +28,6 @@ import net.AbstractPacketHandler;
import net.packet.InPacket;
/**
*
* @author kevintjuh93
*/
public class FredrickHandler extends AbstractPacketHandler {

View File

@@ -111,7 +111,8 @@ public final class GuildOperationHandler extends AbstractPacketHandler {
GuildResponse mgr = Guild.sendInvitation(c, targetName);
if (mgr != null) {
c.sendPacket(mgr.getPacket(targetName));
} else {} // already sent invitation, do nothing
} else {
} // already sent invitation, do nothing
break;
case 0x06:
@@ -144,7 +145,9 @@ public final class GuildOperationHandler extends AbstractPacketHandler {
c.sendPacket(GuildPackets.showGuildInfo(mc));
allianceId = mc.getGuild().getAllianceId();
if(allianceId > 0) Server.getInstance().getAlliance(allianceId).updateAlliancePackets(mc);
if (allianceId > 0) {
Server.getInstance().getAlliance(allianceId).updateAlliancePackets(mc);
}
mc.saveGuildStatus(); // update database
mc.getMap().broadcastPacket(mc, GuildPackets.guildNameChanged(mc.getId(), mc.getGuild().getName())); // thanks Vcoc for pointing out an issue with updating guild tooltip to players in the map
@@ -164,7 +167,9 @@ public final class GuildOperationHandler extends AbstractPacketHandler {
Server.getInstance().leaveGuild(mc.getMGC());
c.sendPacket(GuildPackets.showGuildInfo(null));
if(allianceId > 0) Server.getInstance().getAlliance(allianceId).updateAlliancePackets(mc);
if (allianceId > 0) {
Server.getInstance().getAlliance(allianceId).updateAlliancePackets(mc);
}
mc.getMGC().setGuildId(0);
mc.getMGC().setGuildRank(5);
@@ -182,7 +187,9 @@ public final class GuildOperationHandler extends AbstractPacketHandler {
}
Server.getInstance().expelMember(mc.getMGC(), name, cid);
if(allianceId > 0) Server.getInstance().getAlliance(allianceId).updateAlliancePackets(mc);
if (allianceId > 0) {
Server.getInstance().getAlliance(allianceId).updateAlliancePackets(mc);
}
break;
case 0x0d:
if (mc.getGuildId() <= 0 || mc.getGuildRank() != 1) {
@@ -234,7 +241,9 @@ public final class GuildOperationHandler extends AbstractPacketHandler {
break;
case 0x10:
if (mc.getGuildId() <= 0 || mc.getGuildRank() > 2) {
if(mc.getGuildId() <= 0) System.out.println("[Hack] " + mc.getName() + " tried to change guild notice while not in a guild.");
if (mc.getGuildId() <= 0) {
System.out.println("[Hack] " + mc.getName() + " tried to change guild notice while not in a guild.");
}
return;
}
String notice = p.readString();
@@ -270,7 +279,7 @@ public final class GuildOperationHandler extends AbstractPacketHandler {
break;
default:
System.out.println("Unhandled GUILD_OPERATION packet: \n" + p.toString());
System.out.println("Unhandled GUILD_OPERATION packet: \n" + p);
}
}
}

View File

@@ -35,7 +35,9 @@ public final class HealOvertimeHandler extends AbstractPacketHandler {
@Override
public final void handlePacket(InPacket p, Client c) {
Character chr = c.getPlayer();
if(!chr.isLoggedinWorld()) return;
if (!chr.isLoggedinWorld()) {
return;
}
AutobanManager abm = chr.getAutobanManager();
int timestamp = Server.getInstance().getCurrentTimestamp();
@@ -44,7 +46,9 @@ public final class HealOvertimeHandler extends AbstractPacketHandler {
short healHP = p.readShort();
if (healHP != 0) {
abm.setTimestamp(8, timestamp, 28); // thanks Vcoc & Thora for pointing out d/c happening here
if ((abm.getLastSpam(0) + 1500) > timestamp) AutobanFactory.FAST_HP_HEALING.addPoint(abm, "Fast hp healing");
if ((abm.getLastSpam(0) + 1500) > timestamp) {
AutobanFactory.FAST_HP_HEALING.addPoint(abm, "Fast hp healing");
}
MapleMap map = chr.getMap();
int abHeal = (int) (77 * map.getRecovery() * 1.5); // thanks Ari for noticing players not getting healed in sauna in certain cases

View File

@@ -38,7 +38,6 @@ import java.sql.SQLException;
import java.util.Arrays;
/**
*
* @author XoticStory
*/
public final class HiredMerchantRequest extends AbstractPacketHandler {

View File

@@ -26,7 +26,6 @@ import net.AbstractPacketHandler;
import net.packet.InPacket;
/**
*
* @author BubblesDev
*/
public final class InnerPortalHandler extends AbstractPacketHandler {

View File

@@ -64,14 +64,22 @@ public final class InventoryMergeHandler extends AbstractPacketHandler {
for (short dst = 1; dst <= inventory.getSlotLimit(); dst++) {
dstItem = inventory.getItem(dst);
if(dstItem == null) continue;
if (dstItem == null) {
continue;
}
for (short src = (short) (dst + 1); src <= inventory.getSlotLimit(); src++) {
srcItem = inventory.getItem(src);
if(srcItem == null) continue;
if (srcItem == null) {
continue;
}
if(dstItem.getItemId() != srcItem.getItemId()) continue;
if(dstItem.getQuantity() == ii.getSlotMax(c, inventory.getItem(dst).getItemId())) break;
if (dstItem.getItemId() != srcItem.getItemId()) {
continue;
}
if (dstItem.getQuantity() == ii.getSlotMax(c, inventory.getItem(dst).getItemId())) {
break;
}
InventoryManipulator.move(c, inventoryType, src, dst);
}

View File

@@ -35,7 +35,6 @@ import java.util.ArrayList;
import java.util.List;
/**
*
* @author BubblesDev
* @author Ronan
*/
@@ -54,8 +53,12 @@ class PairedQuicksort {
x = A.get((i + j) / 2);
do {
while (x.getItemId() > A.get(i).getItemId()) i++;
while (x.getItemId() < A.get(j).getItemId()) j--;
while (x.getItemId() > A.get(i).getItemId()) {
i++;
}
while (x.getItemId() < A.get(j).getItemId()) {
j--;
}
if (i <= j) {
w = A.get(i);
@@ -81,8 +84,12 @@ class PairedQuicksort {
x = A.get((i + j) / 2);
do {
int watk = getWatkForProjectile(x);
while (watk < getWatkForProjectile(A.get(i))) i++;
while (watk > getWatkForProjectile(A.get(j))) j--;
while (watk < getWatkForProjectile(A.get(i))) {
i++;
}
while (watk > getWatkForProjectile(A.get(j))) {
j--;
}
if (i <= j) {
w = A.get(i);
@@ -103,8 +110,12 @@ class PairedQuicksort {
x = A.get((i + j) / 2);
do {
while (ii.getName(x.getItemId()).compareTo(ii.getName(A.get(i).getItemId())) > 0) i++;
while (ii.getName(x.getItemId()).compareTo(ii.getName(A.get(j).getItemId())) < 0) j--;
while (ii.getName(x.getItemId()).compareTo(ii.getName(A.get(i).getItemId())) > 0) {
i++;
}
while (ii.getName(x.getItemId()).compareTo(ii.getName(A.get(j).getItemId())) < 0) {
j--;
}
if (i <= j) {
w = A.get(i);
@@ -125,8 +136,12 @@ class PairedQuicksort {
x = A.get((i + j) / 2);
do {
while (x.getQuantity() > A.get(i).getQuantity()) i++;
while (x.getQuantity() < A.get(j).getQuantity()) j--;
while (x.getQuantity() > A.get(i).getQuantity()) {
i++;
}
while (x.getQuantity() < A.get(j).getQuantity()) {
j--;
}
if (i <= j) {
w = A.get(i);
@@ -149,8 +164,12 @@ class PairedQuicksort {
do {
while (x.getLevel() > ((Equip)A.get(i)).getLevel()) i++;
while (x.getLevel() < ((Equip)A.get(j)).getLevel()) j--;
while (x.getLevel() > ((Equip) A.get(i)).getLevel()) {
i++;
}
while (x.getLevel() < ((Equip) A.get(j)).getLevel()) {
j--;
}
if (i <= j) {
w = (Equip) A.get(i);
@@ -182,8 +201,12 @@ class PairedQuicksort {
}
if (Esq < j) MapleQuicksort(Esq, j, A, sort);
if (i < Dir) MapleQuicksort(i, Dir, A, sort);
if (Esq < j) {
MapleQuicksort(Esq, j, A, sort);
}
if (i < Dir) {
MapleQuicksort(i, Dir, A, sort);
}
}
private static int getItemSubtype(Item it) {
@@ -254,7 +277,9 @@ class PairedQuicksort {
intersect.add(A.size());
for (int ind = 0; ind < intersect.size() - 1; ind++) {
if(intersect.get(ind + 1) > intersect.get(ind)) MapleQuicksort(intersect.get(ind), intersect.get(ind + 1) - 1, A, secondarySort);
if (intersect.get(ind + 1) > intersect.get(ind)) {
MapleQuicksort(intersect.get(ind), intersect.get(ind + 1) - 1, A, secondarySort);
}
}
}
}

View File

@@ -29,7 +29,6 @@ import net.packet.InPacket;
import tools.PacketCreator;
/**
*
* @author Matze
*/
public final class ItemMoveHandler extends AbstractPacketHandler {
@@ -56,7 +55,9 @@ public final class ItemMoveHandler extends AbstractPacketHandler {
InventoryManipulator.move(c, type, src, action);
}
if (c.getPlayer().getMap().getHPDec() > 0) c.getPlayer().resetHpDecreaseTask();
if (c.getPlayer().getMap().getHPDec() > 0) {
c.getPlayer().resetHpDecreaseTask();
}
c.getPlayer().getAutobanManager().spam(6);
}
}

View File

@@ -31,7 +31,6 @@ import tools.FilePrinter;
import java.awt.*;
/**
*
* @author Matze
* @author Ronan
*/
@@ -45,7 +44,9 @@ public final class ItemPickupHandler extends AbstractPacketHandler {
int oid = p.readInt();
Character chr = c.getPlayer();
MapObject ob = chr.getMap().getMapObject(oid);
if(ob == null) return;
if (ob == null) {
return;
}
Point charPos = chr.getPosition();
Point obPos = ob.getPosition();

View File

@@ -48,7 +48,9 @@ public final class ItemRewardHandler extends AbstractPacketHandler {
int itemId = p.readInt(); // will load from xml I don't care.
Item it = c.getPlayer().getInventory(InventoryType.USE).getItem(slot); // null check here thanks to Thora
if (it == null || it.getItemId() != itemId || c.getPlayer().getInventory(InventoryType.USE).countById(itemId) < 1) return;
if (it == null || it.getItemId() != itemId || c.getPlayer().getInventory(InventoryType.USE).countById(itemId) < 1) {
return;
}
ItemInformationProvider ii = ItemInformationProvider.getInstance();
Pair<Integer, List<RewardItem>> rewards = ii.getItemReward(itemId);

View File

@@ -28,7 +28,6 @@ import net.packet.InPacket;
import tools.PacketCreator;
/**
*
* @author kevintjuh93
*/
public class LeftKnockbackHandler extends AbstractPacketHandler {

View File

@@ -537,7 +537,7 @@ public final class MTSHandler extends AbstractPacketHandler {
c.sendPacket(PacketCreator.MTSFailBuy());
}
} else {
System.out.println("Unhandled OP(MTS): " + op + " Packet: " + p.toString());
System.out.println("Unhandled OP(MTS): " + op + " Packet: " + p);
}
} else {
c.sendPacket(PacketCreator.showMTSCash(c.getPlayer()));

View File

@@ -27,7 +27,6 @@ import net.AbstractPacketHandler;
import net.packet.InPacket;
/**
*
* @author Jay Estrella, Ronan
*/
public final class MakerSkillHandler extends AbstractPacketHandler {

View File

@@ -28,7 +28,6 @@ import net.packet.InPacket;
import tools.PacketCreator;
/**
*
* @author Matze
* @author Ronan - concurrency protection
*/

View File

@@ -31,7 +31,6 @@ import tools.PacketCreator;
import tools.Randomizer;
/**
*
* @author Xotic (XoticStory) & BubblesDev
*/

View File

@@ -37,7 +37,6 @@ import tools.PacketCreator;
import java.util.Map;
/**
*
* @author Jay Estrella
* @author Ronan
*/

View File

@@ -49,7 +49,8 @@ public class MoveDragonHandler extends AbstractMovementPacketHandler {
} else {
chr.getMap().broadcastMessage(chr, PacketCreator.moveDragon(dragon, startPos, p, movementDataLength), dragon.getPosition());
}
} catch (EmptyMovementException e) {}
} catch (EmptyMovementException e) {
}
}
}
}

View File

@@ -147,7 +147,9 @@ public final class MoveLifeHandler extends AbstractMovementPacketHandler {
Point serverStartPos = new Point(monster.getPosition());
Boolean aggro = monster.aggroMoveLifeUpdate(player);
if (aggro == null) return;
if (aggro == null) {
return;
}
if (nextUse != null) {
c.sendPacket(PacketCreator.moveMonsterResponse(objectid, moveid, mobMp, aggro, nextSkillId, nextSkillLevel));
@@ -169,7 +171,8 @@ public final class MoveLifeHandler extends AbstractMovementPacketHandler {
map.broadcastMessage(player, PacketCreator.moveMonster(objectid, nextMovementCouldBeSkill, rawActivity, useSkillId, useSkillLevel, pOption, startPos, p, movementDataLength), serverStartPos);
//updatePosition(res, monster, -2); //does this need to be done after the packet is broadcast?
map.moveMonster(monster, monster.getPosition());
} catch (EmptyMovementException e) {}
} catch (EmptyMovementException e) {
}
if (banishPlayers != null) {
for (Character chr : banishPlayers) {

View File

@@ -42,6 +42,7 @@ public final class MovePlayerHandler extends AbstractMovementPacketHandler {
} else {
c.getPlayer().getMap().broadcastMessage(c.getPlayer(), PacketCreator.movePlayer(c.getPlayer().getId(), p, movementDataLength), false);
}
} catch (EmptyMovementException e) {}
} catch (EmptyMovementException e) {
}
}
}

View File

@@ -53,7 +53,8 @@ public final class MoveSummonHandler extends AbstractMovementPacketHandler {
p.seek(movementDataStart);
player.getMap().broadcastMessage(player, PacketCreator.moveSummon(player.getId(), oid, startPos, p, movementDataLength), summon.getPosition());
} catch (EmptyMovementException e) {}
} catch (EmptyMovementException e) {
}
}
}
}

View File

@@ -28,7 +28,6 @@ import scripting.npc.NPCScriptManager;
import scripting.quest.QuestScriptManager;
/**
*
* @author Matze
*/
public final class NPCMoreTalkHandler extends AbstractPacketHandler {

View File

@@ -29,7 +29,6 @@ import net.packet.InPacket;
import tools.FilePrinter;
/**
*
* @author Matze
*/
public final class NPCShopHandler extends AbstractPacketHandler {

View File

@@ -50,7 +50,9 @@ public final class NPCTalkHandler extends AbstractPacketHandler {
MapObject obj = c.getPlayer().getMap().getMapObject(oid);
if (obj instanceof NPC) {
NPC npc = (NPC) obj;
if(YamlConfig.config.server.USE_DEBUG == true) c.getPlayer().dropMessage(5, "Talking to NPC " + npc.getId());
if (YamlConfig.config.server.USE_DEBUG == true) {
c.getPlayer().dropMessage(5, "Talking to NPC " + npc.getId());
}
if (npc.getId() == 9010009) { //is duey
DueyProcessor.dueySendTalk(c, false);

View File

@@ -36,9 +36,8 @@ import java.sql.ResultSet;
import java.sql.SQLException;
/**
*
* @author Ronan
*
* <p>
* Header layout thanks to Eric
*/
public final class NewYearCardHandler extends AbstractPacketHandler {
@@ -100,7 +99,9 @@ public final class NewYearCardHandler extends AbstractPacketHandler {
NewYearCardRecord.updateNewYearCard(newyear);
player.getAbstractPlayerInteraction().gainItem(4301000, (short) 1);
if(!newyear.getMessage().isEmpty()) player.dropMessage(6, "[New Year] " + newyear.getSenderName() + ": " + newyear.getMessage());
if (!newyear.getMessage().isEmpty()) {
player.dropMessage(6, "[New Year] " + newyear.getSenderName() + ": " + newyear.getMessage());
}
player.addNewYearRecord(newyear);
player.sendPacket(PacketCreator.onNewYearCardRes(player, newyear, 6, 0)); // successfully rcvd
@@ -146,7 +147,9 @@ public final class NewYearCardHandler extends AbstractPacketHandler {
}
private static int getValidNewYearCardStatus(int itemid, Character player, short slot) {
if(!ItemConstants.isNewYearCardUse(itemid)) return 0x14;
if (!ItemConstants.isNewYearCardUse(itemid)) {
return 0x14;
}
Item it = player.getInventory(ItemConstants.getInventoryType(itemid)).getItem(slot);
return (it != null && it.getItemId() == itemid) ? 0 : 0x12;

View File

@@ -27,13 +27,14 @@ import net.packet.InPacket;
import tools.PacketCreator;
/**
*
* @author Ubaware
*/
public final class OpenFamilyHandler extends AbstractPacketHandler {
@Override
public final void handlePacket(InPacket p, Client c) {
if(!YamlConfig.config.server.USE_FAMILY_SYSTEM) return;
if (!YamlConfig.config.server.USE_FAMILY_SYSTEM) {
return;
}
Character chr = c.getPlayer();
c.sendPacket(PacketCreator.getFamilyInfo(chr.getFamilyEntry()));
}

View File

@@ -27,13 +27,14 @@ import net.packet.InPacket;
import tools.PacketCreator;
/**
*
* @author Ubaware
*/
public final class OpenFamilyPedigreeHandler extends AbstractPacketHandler {
@Override
public final void handlePacket(InPacket p, Client c) {
if(!YamlConfig.config.server.USE_FAMILY_SYSTEM) return;
if (!YamlConfig.config.server.USE_FAMILY_SYSTEM) {
return;
}
Character target = c.getChannelServer().getPlayerStorage().getCharacterByName(p.readString());
if (target != null && target.getFamily() != null) {
c.sendPacket(PacketCreator.showPedigree(target.getFamilyEntry()));

View File

@@ -47,8 +47,11 @@ public final class OwlWarpHandler extends AbstractPacketHandler {
if (hm == null || hm.getMapId() != mapid || !hm.hasItem(c.getPlayer().getOwlSearch())) {
ps = c.getWorldServer().getPlayerShop(ownerid);
if (ps == null || ps.getMapId() != mapid || !ps.hasItem(c.getPlayer().getOwlSearch())) {
if(hm == null && ps == null) c.sendPacket(PacketCreator.getOwlMessage(1));
else c.sendPacket(PacketCreator.getOwlMessage(3));
if (hm == null && ps == null) {
c.sendPacket(PacketCreator.getOwlMessage(1));
} else {
c.sendPacket(PacketCreator.getOwlMessage(3));
}
return;
}
@@ -59,8 +62,11 @@ public final class OwlWarpHandler extends AbstractPacketHandler {
if (ps.isOpen()) { //change map has a delay, must double check
if (!ps.visitShop(c.getPlayer())) {
if(!ps.isBanned(c.getPlayer().getName())) c.sendPacket(PacketCreator.getOwlMessage(2));
else c.sendPacket(PacketCreator.getOwlMessage(17));
if (!ps.isBanned(c.getPlayer().getName())) {
c.sendPacket(PacketCreator.getOwlMessage(2));
} else {
c.sendPacket(PacketCreator.getOwlMessage(17));
}
}
} else {
//c.sendPacket(PacketCreator.serverNotice(1, "That merchant has either been closed or is under maintenance."));

View File

@@ -26,7 +26,6 @@ import net.AbstractPacketHandler;
import net.packet.InPacket;
/**
*
* @author Quasar
*/
public class PartySearchRegisterHandler extends AbstractPacketHandler {

View File

@@ -30,7 +30,6 @@ import net.server.world.World;
import tools.PacketCreator;
/**
*
* @author XoticStory
* @author BubblesDev
* @author Ronan
@@ -64,7 +63,9 @@ public class PartySearchStartHandler extends AbstractPacketHandler {
int jobs = p.readInt();
Party party = c.getPlayer().getParty();
if (party == null || !c.getPlayer().isPartyLeader()) return;
if (party == null || !c.getPlayer().isPartyLeader()) {
return;
}
World world = c.getWorldServer();
world.getPartySearchCoordinator().registerPartyLeader(chr, min, max, jobs);

View File

@@ -41,7 +41,9 @@ public final class PetExcludeItemsHandler extends AbstractPacketHandler {
Character chr = c.getPlayer();
byte petIndex = chr.getPetIndex(petId);
if (petIndex < 0) return;
if (petIndex < 0) {
return;
}
final Pet pet = chr.getPet(petIndex);
if (pet == null) {

View File

@@ -64,7 +64,9 @@ public final class PetFoodHandler extends AbstractPacketHandler {
}
Pet pet = chr.getPet(slot);
if(pet == null) return;
if (pet == null) {
return;
}
short pos = p.readShort();
int itemId = p.readInt();

View File

@@ -46,7 +46,6 @@ import java.sql.SQLException;
import java.util.Arrays;
/**
*
* @author Matze
* @author Ronan - concurrency safety and reviewed minigames
*/
@@ -100,7 +99,7 @@ public final class PlayerInteractionHandler extends AbstractPacketHandler {
SELECT_CARD(0x44);
final byte code;
private Action(int code) {
Action(int code) {
this.code = (byte) code;
}
@@ -278,7 +277,9 @@ public final class PlayerInteractionHandler extends AbstractPacketHandler {
return;
}
} else {
if (isTradeOpen(chr)) return;
if (isTradeOpen(chr)) {
return;
}
int oid = p.readInt();
MapObject ob = chr.getMap().getMapObject(oid);
@@ -339,7 +340,9 @@ public final class PlayerInteractionHandler extends AbstractPacketHandler {
chr.closeHiredMerchant(true);
}
} else if (mode == Action.OPEN_STORE.getCode() || mode == Action.OPEN_CASH.getCode()) {
if (isTradeOpen(chr)) return;
if (isTradeOpen(chr)) {
return;
}
if (mode == Action.OPEN_STORE.getCode()) {
p.readByte(); //01
@@ -364,7 +367,8 @@ public final class PlayerInteractionHandler extends AbstractPacketHandler {
if (YamlConfig.config.server.USE_ERASE_PERMIT_ON_OPENSHOP) {
try {
InventoryManipulator.removeById(c, InventoryType.CASH, shop.getItemId(), 1, true, false);
} catch(RuntimeException re) {} // fella does not have a player shop permit...
} catch (RuntimeException re) {
} // fella does not have a player shop permit...
}
chr.getMap().broadcastMessage(PacketCreator.updatePlayerShopBox(shop));
@@ -554,7 +558,9 @@ public final class PlayerInteractionHandler extends AbstractPacketHandler {
} else if (mode == Action.CONFIRM.getCode()) {
Trade.completeTrade(chr);
} else if (mode == Action.ADD_ITEM.getCode() || mode == Action.PUT_ITEM.getCode()) {
if (isTradeOpen(chr)) return;
if (isTradeOpen(chr)) {
return;
}
InventoryType ivType = InventoryType.getByType(p.readByte());
short slot = p.readShort();
@@ -647,7 +653,9 @@ public final class PlayerInteractionHandler extends AbstractPacketHandler {
c.sendPacket(PacketCreator.serverNotice(1, "You can't sell without owning a shop."));
}
} else if (mode == Action.REMOVE_ITEM.getCode()) {
if (isTradeOpen(chr)) return;
if (isTradeOpen(chr)) {
return;
}
PlayerShop shop = chr.getPlayerShop();
if (shop != null && shop.isOwner(chr)) {
@@ -668,12 +676,16 @@ public final class PlayerInteractionHandler extends AbstractPacketHandler {
}
} else if (mode == Action.MERCHANT_MESO.getCode()) {
HiredMerchant merchant = chr.getHiredMerchant();
if (merchant == null) return;
if (merchant == null) {
return;
}
merchant.withdrawMesos(chr);
} else if (mode == Action.MERCHANT_ORGANIZE.getCode()) {
HiredMerchant merchant = chr.getHiredMerchant();
if (merchant == null || !merchant.isOwner(chr)) return;
if (merchant == null || !merchant.isOwner(chr)) {
return;
}
merchant.withdrawMesos(chr);
merchant.clearInexistentItems();
@@ -685,7 +697,9 @@ public final class PlayerInteractionHandler extends AbstractPacketHandler {
c.sendPacket(PacketCreator.updateHiredMerchant(merchant, chr));
} else if (mode == Action.BUY.getCode() || mode == Action.MERCHANT_BUY.getCode()) {
if (isTradeOpen(chr)) return;
if (isTradeOpen(chr)) {
return;
}
int itemid = p.readByte();
short quantity = p.readShort();
@@ -706,7 +720,9 @@ public final class PlayerInteractionHandler extends AbstractPacketHandler {
merchant.broadcastToVisitorsThreadsafe(PacketCreator.updateHiredMerchant(merchant, chr));
}
} else if (mode == Action.TAKE_ITEM_BACK.getCode()) {
if (isTradeOpen(chr)) return;
if (isTradeOpen(chr)) {
return;
}
HiredMerchant merchant = chr.getHiredMerchant();
if (merchant != null && merchant.isOwner(chr)) {
@@ -726,14 +742,18 @@ public final class PlayerInteractionHandler extends AbstractPacketHandler {
merchant.takeItemBack(slot, chr);
}
} else if (mode == Action.CLOSE_MERCHANT.getCode()) {
if (isTradeOpen(chr)) return;
if (isTradeOpen(chr)) {
return;
}
HiredMerchant merchant = chr.getHiredMerchant();
if (merchant != null) {
merchant.closeOwnerMerchant(chr);
}
} else if (mode == Action.MAINTENANCE_OFF.getCode()) {
if (isTradeOpen(chr)) return;
if (isTradeOpen(chr)) {
return;
}
HiredMerchant merchant = chr.getHiredMerchant();
if (merchant != null) {

View File

@@ -385,7 +385,9 @@ public final class PlayerLoggedinHandler extends AbstractPacketHandler {
player.commitExcludedItems();
showDueyNotification(c, player);
if (player.getMap().getHPDec() > 0) player.resetHpDecreaseTask();
if (player.getMap().getHPDec() > 0) {
player.resetHpDecreaseTask();
}
player.resetPlayerRates();
if (YamlConfig.config.server.USE_ADD_RATES_BY_LEVEL) {
@@ -432,7 +434,9 @@ public final class PlayerLoggedinHandler extends AbstractPacketHandler {
c.sendPacket(PacketCreator.setNPCScriptable(npcsIds));
}
if (newcomer) player.setLoginTime(System.currentTimeMillis());
if (newcomer) {
player.setLoginTime(System.currentTimeMillis());
}
} catch (Exception e) {
e.printStackTrace();
} finally {

View File

@@ -34,7 +34,6 @@ import java.util.Collections;
import java.util.List;
/**
*
* @author Ronan
*/
public final class PlayerMapTransitionHandler extends AbstractPacketHandler {

View File

@@ -32,7 +32,6 @@ import server.quest.Quest;
import java.awt.*;
/**
*
* @author Matze
*/
public final class QuestActionHandler extends AbstractPacketHandler {

View File

@@ -6,26 +6,21 @@ import net.AbstractPacketHandler;
import net.packet.InPacket;
/**
*
* @author Shavit
*/
public class QuickslotKeyMappedModifiedHandler extends AbstractPacketHandler
{
public class QuickslotKeyMappedModifiedHandler extends AbstractPacketHandler {
@Override
public void handlePacket(InPacket p, Client c)
{
public void handlePacket(InPacket p, Client c) {
// Invalid size for the packet.
if (p.available() != QuickslotBinding.QUICKSLOT_SIZE * Integer.BYTES ||
// not logged in-game
c.getPlayer() == null)
{
c.getPlayer() == null) {
return;
}
byte[] aQuickslotKeyMapped = new byte[QuickslotBinding.QUICKSLOT_SIZE];
for(int i = 0; i < QuickslotBinding.QUICKSLOT_SIZE; i++)
{
for (int i = 0; i < QuickslotBinding.QUICKSLOT_SIZE; i++) {
aQuickslotKeyMapped[i] = (byte) p.readInt();
}

View File

@@ -16,7 +16,6 @@ import tools.PacketCreator;
import java.util.Map;
/**
*
* @author Xari
* @author Ronan - added concurrency protection and quest progress limit
*/

View File

@@ -10,7 +10,6 @@ import scripting.quest.QuestScriptManager;
import server.quest.Quest;
/**
*
* @author Xari
*/
public class RaiseUIStateHandler extends AbstractPacketHandler {

View File

@@ -167,8 +167,11 @@ public final class RangedAttackHandler extends AbstractDealDamageHandler {
bulletConsume = (byte) (effect.getBulletConsume() * (hasShadowPartner ? 2 : 1));
}
if(slot < 0) System.out.println("<ERROR> Projectile to use was unable to be found.");
else InventoryManipulator.removeFromSlot(c, InventoryType.USE, slot, bulletConsume, false, true);
if (slot < 0) {
System.out.println("<ERROR> Projectile to use was unable to be found.");
} else {
InventoryManipulator.removeFromSlot(c, InventoryType.USE, slot, bulletConsume, false, true);
}
}
}

View File

@@ -29,7 +29,6 @@ import net.packet.InPacket;
import scripting.npc.NPCScriptManager;
/**
*
* @author Generic
*/
public final class RemoteGachaponHandler extends AbstractPacketHandler {

View File

@@ -30,7 +30,6 @@ import server.maps.HiredMerchant;
import tools.PacketCreator;
/**
*
* @author kevintjuh93 - :3
*/
public class RemoteStoreHandler extends AbstractPacketHandler {

View File

@@ -86,7 +86,7 @@ public final class ReportHandler extends AbstractPacketHandler {
Timestamp currentTimestamp = new java.sql.Timestamp(calendar.getTime().getTime());
try (Connection con = DatabaseConnection.getConnection();
PreparedStatement ps = con.prepareStatement("INSERT INTO reports (`reporttime`, `reporterid`, `victimid`, `reason`, `chatlog`, `description`) VALUES (?, ?, ?, ?, ?, ?)")) {
ps.setString(1, currentTimestamp.toGMTString().toString());
ps.setString(1, currentTimestamp.toGMTString());
ps.setInt(2, reporterid);
ps.setInt(3, victimid);
ps.setInt(4, reason);

View File

@@ -173,7 +173,9 @@ public final class RingActionHandler extends AbstractPacketHandler {
private synchronized static void breakMarriage(Character chr) {
int partnerid = chr.getPartnerId();
if(partnerid <= 0) return;
if (partnerid <= 0) {
return;
}
chr.getClient().getWorldServer().deleteRelationship(chr.getId(), partnerid);
Ring.removeRing(chr.getMarriageRing());
@@ -493,12 +495,13 @@ public final class RingActionHandler extends AbstractPacketHandler {
}
}
}
} catch (NumberFormatException nfe) {}
} catch (NumberFormatException nfe) {
}
break;
default:
System.out.println("Unhandled RING_ACTION Mode: " + p.toString());
System.out.println("Unhandled RING_ACTION Mode: " + p);
break;
}

View File

@@ -31,7 +31,6 @@ import server.ItemInformationProvider;
import server.ItemInformationProvider.ScriptedItem;
/**
*
* @author Jay Estrella
*/
public final class ScriptedItemHandler extends AbstractPacketHandler {
@@ -43,7 +42,9 @@ public final class ScriptedItemHandler extends AbstractPacketHandler {
ItemInformationProvider ii = ItemInformationProvider.getInstance();
ScriptedItem info = ii.getScriptedItemInfo(itemId);
if (info == null) return;
if (info == null) {
return;
}
Item item = c.getPlayer().getInventory(ItemConstants.getInventoryType(itemId)).getItem(itemSlot);
if (item == null || item.getItemId() != itemId || item.getQuantity() < 1) {

View File

@@ -34,7 +34,9 @@ public final class SkillMacroHandler extends AbstractPacketHandler {
public final void handlePacket(InPacket p, Client c) {
Character chr = c.getPlayer();
int num = p.readByte();
if (num > 5) return;
if (num > 5) {
return;
}
for (int i = 0; i < num; i++) {
String name = p.readString();

View File

@@ -29,7 +29,6 @@ import server.events.gm.Snowball;
import server.maps.MapleMap;
/**
*
* @author kevintjuh93
*/
public final class SnowballHandler extends AbstractPacketHandler {
@@ -43,23 +42,31 @@ public final class SnowballHandler extends AbstractPacketHandler {
int what = p.readByte();
//slea.skip(4);
if (snowball == null || othersnowball == null || snowball.getSnowmanHP() == 0) return;
if ((currentServerTime() - chr.getLastSnowballAttack()) < 500) return;
if (chr.getTeam() != (what % 2)) return;
if (snowball == null || othersnowball == null || snowball.getSnowmanHP() == 0) {
return;
}
if ((currentServerTime() - chr.getLastSnowballAttack()) < 500) {
return;
}
if (chr.getTeam() != (what % 2)) {
return;
}
chr.setLastSnowballAttack(currentServerTime());
int damage = 0;
if (what < 2 && othersnowball.getSnowmanHP() > 0)
if (what < 2 && othersnowball.getSnowmanHP() > 0) {
damage = 10;
else if (what == 2 || what == 3) {
if (Math.random() < 0.03)
} else if (what == 2 || what == 3) {
if (Math.random() < 0.03) {
damage = 45;
else
} else {
damage = 15;
}
}
if (what >= 0 && what <= 4)
if (what >= 0 && what <= 4) {
snowball.hit(what, damage);
}
}
}

Some files were not shown because too many files have changed in this diff Show More