Skip to content
Snippets Groups Projects
Commit 2efffdf8 authored by Zoey76's avatar Zoey76
Browse files

BETA: Datapack part for [L6447]:

	* Do not perform null checks on `params`.
	* To verify if parameters has been loaded use `StatsSet#isEmpty()`.
	* Minor cleanup.

'''Note:''' Do not hide or mask exceptions, they lead to harder debugging in most cases.
parent 8f51bdd6
No related branches found
No related tags found
No related merge requests found
Showing
with 32 additions and 51 deletions
...@@ -41,29 +41,15 @@ public final class AttackTrait extends AbstractEffect ...@@ -41,29 +41,15 @@ public final class AttackTrait extends AbstractEffect
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
if (params != null) if (params.isEmpty())
{ {
for (Entry<String, Object> param : params.getSet().entrySet()) _log.warning(getClass().getSimpleName() + ": this effect must have parameters!");
{ return;
try
{
final TraitType traitType = TraitType.valueOf(param.getKey());
final float value = (Float.parseFloat((String) param.getValue()) + 100) / 100;
_attackTraits.put(traitType, value);
}
catch (NumberFormatException e)
{
_log.warning(getClass().getSimpleName() + ": value of " + param.getKey() + " must be float value " + param.getValue() + " found.");
}
catch (Exception e)
{
_log.warning(getClass().getSimpleName() + ": value of L2TraitType enum required but found: " + param.getValue());
}
}
} }
else
for (Entry<String, Object> param : params.getSet().entrySet())
{ {
_log.warning(getClass().getSimpleName() + ": must have parameters."); _attackTraits.put(TraitType.valueOf(param.getKey()), (Float.parseFloat((String) param.getValue()) + 100) / 100);
} }
} }
......
...@@ -18,8 +18,8 @@ ...@@ -18,8 +18,8 @@
*/ */
package handlers.effecthandlers; package handlers.effecthandlers;
import java.util.ArrayList; import java.util.HashSet;
import java.util.List; import java.util.Set;
import com.l2jserver.gameserver.datatables.BotReportTable; import com.l2jserver.gameserver.datatables.BotReportTable;
import com.l2jserver.gameserver.instancemanager.PunishmentManager; import com.l2jserver.gameserver.instancemanager.PunishmentManager;
...@@ -37,23 +37,16 @@ import com.l2jserver.gameserver.model.skills.BuffInfo; ...@@ -37,23 +37,16 @@ import com.l2jserver.gameserver.model.skills.BuffInfo;
*/ */
public final class BlockAction extends AbstractEffect public final class BlockAction extends AbstractEffect
{ {
private final List<Integer> _blockedActions; private final Set<Integer> _blockedActions = new HashSet<>();
public BlockAction(Condition attachCond, Condition applyCond, StatsSet set, StatsSet params) public BlockAction(Condition attachCond, Condition applyCond, StatsSet set, StatsSet params)
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
String[] rawActions = params.getString("blockedActions").split(","); final String[] actions = params.getString("blockedActions").split(",");
_blockedActions = new ArrayList<>(rawActions.length); for (String action : actions)
for (String act : rawActions)
{ {
try _blockedActions.add(Integer.parseInt(action));
{
_blockedActions.add(Integer.parseInt(act));
}
catch (Exception e)
{
}
} }
} }
......
...@@ -40,7 +40,7 @@ public final class BlockBuffSlot extends AbstractEffect ...@@ -40,7 +40,7 @@ public final class BlockBuffSlot extends AbstractEffect
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
String blockBuffSlots = params != null ? params.getString("slot", null) : null; String blockBuffSlots = params.getString("slot", null);
if ((blockBuffSlots != null) && !blockBuffSlots.isEmpty()) if ((blockBuffSlots != null) && !blockBuffSlots.isEmpty())
{ {
_blockBuffSlots = new HashSet<>(); _blockBuffSlots = new HashSet<>();
......
...@@ -39,7 +39,7 @@ public final class Bluff extends AbstractEffect ...@@ -39,7 +39,7 @@ public final class Bluff extends AbstractEffect
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
_chance = params != null ? params.getInt("chance", 100) : 100; _chance = params.getInt("chance", 100);
} }
@Override @Override
......
...@@ -36,7 +36,7 @@ public final class ChangeFace extends AbstractEffect ...@@ -36,7 +36,7 @@ public final class ChangeFace extends AbstractEffect
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
_value = params != null ? params.getInt("value", 0) : 0; _value = params.getInt("value", 0);
} }
@Override @Override
......
...@@ -36,7 +36,7 @@ public final class ChangeHairColor extends AbstractEffect ...@@ -36,7 +36,7 @@ public final class ChangeHairColor extends AbstractEffect
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
_value = params != null ? params.getInt("value", 0) : 0; _value = params.getInt("value", 0);
} }
@Override @Override
......
...@@ -35,7 +35,8 @@ public final class ChangeHairStyle extends AbstractEffect ...@@ -35,7 +35,8 @@ public final class ChangeHairStyle extends AbstractEffect
public ChangeHairStyle(Condition attachCond, Condition applyCond, StatsSet set, StatsSet params) public ChangeHairStyle(Condition attachCond, Condition applyCond, StatsSet set, StatsSet params)
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
_value = params != null ? params.getInt("value", 0) : 0;
_value = params.getInt("value", 0);
} }
@Override @Override
......
...@@ -45,7 +45,7 @@ public final class Confuse extends AbstractEffect ...@@ -45,7 +45,7 @@ public final class Confuse extends AbstractEffect
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
_chance = params != null ? params.getInt("chance", 100) : 100; _chance = params.getInt("chance", 100);
} }
@Override @Override
......
...@@ -36,7 +36,7 @@ public final class CrystalGradeModify extends AbstractEffect ...@@ -36,7 +36,7 @@ public final class CrystalGradeModify extends AbstractEffect
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
_grade = params != null ? params.getInt("grade", 0) : 0; _grade = params.getInt("grade", 0);
} }
@Override @Override
......
...@@ -36,7 +36,7 @@ public final class DamOverTime extends AbstractEffect ...@@ -36,7 +36,7 @@ public final class DamOverTime extends AbstractEffect
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
_canKill = (params != null) && params.getBoolean("canKill", false); _canKill = params.getBoolean("canKill", false);
} }
@Override @Override
......
...@@ -37,7 +37,7 @@ public final class DamOverTimePercent extends AbstractEffect ...@@ -37,7 +37,7 @@ public final class DamOverTimePercent extends AbstractEffect
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
_canKill = (params != null) && params.getBoolean("canKill", false); _canKill = params.getBoolean("canKill", false);
} }
@Override @Override
......
...@@ -41,7 +41,7 @@ public final class DefenceTrait extends AbstractEffect ...@@ -41,7 +41,7 @@ public final class DefenceTrait extends AbstractEffect
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
if (params == null) if (params.isEmpty())
{ {
_log.warning(getClass().getSimpleName() + ": must have parameters."); _log.warning(getClass().getSimpleName() + ": must have parameters.");
return; return;
......
...@@ -39,7 +39,7 @@ public final class DeleteHate extends AbstractEffect ...@@ -39,7 +39,7 @@ public final class DeleteHate extends AbstractEffect
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
_chance = params != null ? params.getInt("chance", 100) : 100; _chance = params.getInt("chance", 100);
} }
@Override @Override
......
...@@ -39,7 +39,7 @@ public final class DeleteHateOfMe extends AbstractEffect ...@@ -39,7 +39,7 @@ public final class DeleteHateOfMe extends AbstractEffect
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
_chance = params != null ? params.getInt("chance", 100) : 100; _chance = params.getInt("chance", 100);
} }
@Override @Override
......
...@@ -40,6 +40,7 @@ public final class DispelByCategory extends AbstractEffect ...@@ -40,6 +40,7 @@ public final class DispelByCategory extends AbstractEffect
public DispelByCategory(Condition attachCond, Condition applyCond, StatsSet set, StatsSet params) public DispelByCategory(Condition attachCond, Condition applyCond, StatsSet set, StatsSet params)
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
_slot = params.getString("slot", null); _slot = params.getString("slot", null);
_rate = params.getInt("rate", 0); _rate = params.getInt("rate", 0);
_max = params.getInt("max", 0); _max = params.getInt("max", 0);
......
...@@ -35,7 +35,7 @@ public final class GiveSp extends AbstractEffect ...@@ -35,7 +35,7 @@ public final class GiveSp extends AbstractEffect
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
_sp = params != null ? params.getInt("sp", 0) : 0; _sp = params.getInt("sp", 0);
} }
@Override @Override
......
...@@ -46,7 +46,7 @@ public class HeadquarterCreate extends AbstractEffect ...@@ -46,7 +46,7 @@ public class HeadquarterCreate extends AbstractEffect
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
_isAdvanced = params != null ? params.getBoolean("isAdvanced", false) : false; _isAdvanced = params.getBoolean("isAdvanced", false);
} }
@Override @Override
......
...@@ -42,8 +42,8 @@ public final class OpenDoor extends AbstractEffect ...@@ -42,8 +42,8 @@ public final class OpenDoor extends AbstractEffect
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
_chance = params != null ? params.getInt("chance", 0) : 0; _chance = params.getInt("chance", 0);
_isItem = params != null ? params.getBoolean("isItem", false) : false; _isItem = params.getBoolean("isItem", false);
} }
@Override @Override
......
...@@ -47,7 +47,7 @@ public final class Pumping extends AbstractEffect ...@@ -47,7 +47,7 @@ public final class Pumping extends AbstractEffect
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
if ((params == null) || (params.getString("power", null) == null)) if (params.getString("power", null) == null)
{ {
throw new IllegalArgumentException(getClass().getSimpleName() + ": effect without power!"); throw new IllegalArgumentException(getClass().getSimpleName() + ": effect without power!");
} }
......
...@@ -41,7 +41,7 @@ public final class RandomizeHate extends AbstractEffect ...@@ -41,7 +41,7 @@ public final class RandomizeHate extends AbstractEffect
{ {
super(attachCond, applyCond, set, params); super(attachCond, applyCond, set, params);
_chance = params != null ? params.getInt("chance", 100) : 100; _chance = params.getInt("chance", 100);
} }
@Override @Override
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment