diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
index f2a7bfedf6..370df17a85 100644
--- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
+++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
@@ -19,6 +19,7 @@ package handlers.skillconditionhandlers;
import org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.WorldObject;
import org.l2jmobius.gameserver.model.actor.Creature;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.skills.ISkillCondition;
import org.l2jmobius.gameserver.model.skills.Skill;
@@ -37,6 +38,18 @@ public class OpSocialClassSkillCondition implements ISkillCondition
@Override
public boolean canUse(Creature caster, Skill skill, WorldObject target)
{
- return caster.isPlayer() && (caster.getActingPlayer().getPledgeClass() >= _socialClass);
+ final PlayerInstance player = caster.getActingPlayer();
+ if ((player == null) || (player.getClan() == null))
+ {
+ return false;
+ }
+
+ final boolean isClanLeader = player.isClanLeader();
+ if ((_socialClass == -1) && !isClanLeader)
+ {
+ return false;
+ }
+
+ return isClanLeader || (player.getPledgeClass() >= _socialClass);
}
}
diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/stats/skills/15000-15099.xml b/L2J_Mobius_1.0_Ertheia/dist/game/data/stats/skills/15000-15099.xml
index ec2e220d80..0c904e5d66 100644
--- a/L2J_Mobius_1.0_Ertheia/dist/game/data/stats/skills/15000-15099.xml
+++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/stats/skills/15000-15099.xml
@@ -2788,7 +2788,7 @@
- 8
+ -1
diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/stats/skills/19000-19099.xml b/L2J_Mobius_1.0_Ertheia/dist/game/data/stats/skills/19000-19099.xml
index ab79816506..e6f634cc56 100644
--- a/L2J_Mobius_1.0_Ertheia/dist/game/data/stats/skills/19000-19099.xml
+++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/stats/skills/19000-19099.xml
@@ -219,6 +219,9 @@
3031
+
+ -1
+
diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/xsd/skills.xsd b/L2J_Mobius_1.0_Ertheia/dist/game/data/xsd/skills.xsd
index 57cd89f529..1feadfb902 100644
--- a/L2J_Mobius_1.0_Ertheia/dist/game/data/xsd/skills.xsd
+++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/xsd/skills.xsd
@@ -439,7 +439,7 @@
-
+
diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
index f2a7bfedf6..370df17a85 100644
--- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
+++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
@@ -19,6 +19,7 @@ package handlers.skillconditionhandlers;
import org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.WorldObject;
import org.l2jmobius.gameserver.model.actor.Creature;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.skills.ISkillCondition;
import org.l2jmobius.gameserver.model.skills.Skill;
@@ -37,6 +38,18 @@ public class OpSocialClassSkillCondition implements ISkillCondition
@Override
public boolean canUse(Creature caster, Skill skill, WorldObject target)
{
- return caster.isPlayer() && (caster.getActingPlayer().getPledgeClass() >= _socialClass);
+ final PlayerInstance player = caster.getActingPlayer();
+ if ((player == null) || (player.getClan() == null))
+ {
+ return false;
+ }
+
+ final boolean isClanLeader = player.isClanLeader();
+ if ((_socialClass == -1) && !isClanLeader)
+ {
+ return false;
+ }
+
+ return isClanLeader || (player.getPledgeClass() >= _socialClass);
}
}
diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/stats/skills/15000-15099.xml b/L2J_Mobius_2.5_Underground/dist/game/data/stats/skills/15000-15099.xml
index 434935de06..5198d29648 100644
--- a/L2J_Mobius_2.5_Underground/dist/game/data/stats/skills/15000-15099.xml
+++ b/L2J_Mobius_2.5_Underground/dist/game/data/stats/skills/15000-15099.xml
@@ -2788,7 +2788,7 @@
- 8
+ -1
diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/stats/skills/19000-19099.xml b/L2J_Mobius_2.5_Underground/dist/game/data/stats/skills/19000-19099.xml
index 7fa6fcdec6..c9e27f6bde 100644
--- a/L2J_Mobius_2.5_Underground/dist/game/data/stats/skills/19000-19099.xml
+++ b/L2J_Mobius_2.5_Underground/dist/game/data/stats/skills/19000-19099.xml
@@ -218,6 +218,9 @@
3031
+
+ -1
+
diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/xsd/skills.xsd b/L2J_Mobius_2.5_Underground/dist/game/data/xsd/skills.xsd
index 05ef32a51d..5616b56295 100644
--- a/L2J_Mobius_2.5_Underground/dist/game/data/xsd/skills.xsd
+++ b/L2J_Mobius_2.5_Underground/dist/game/data/xsd/skills.xsd
@@ -443,7 +443,7 @@
-
+
diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
index f2a7bfedf6..370df17a85 100644
--- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
+++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
@@ -19,6 +19,7 @@ package handlers.skillconditionhandlers;
import org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.WorldObject;
import org.l2jmobius.gameserver.model.actor.Creature;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.skills.ISkillCondition;
import org.l2jmobius.gameserver.model.skills.Skill;
@@ -37,6 +38,18 @@ public class OpSocialClassSkillCondition implements ISkillCondition
@Override
public boolean canUse(Creature caster, Skill skill, WorldObject target)
{
- return caster.isPlayer() && (caster.getActingPlayer().getPledgeClass() >= _socialClass);
+ final PlayerInstance player = caster.getActingPlayer();
+ if ((player == null) || (player.getClan() == null))
+ {
+ return false;
+ }
+
+ final boolean isClanLeader = player.isClanLeader();
+ if ((_socialClass == -1) && !isClanLeader)
+ {
+ return false;
+ }
+
+ return isClanLeader || (player.getPledgeClass() >= _socialClass);
}
}
diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/stats/skills/15000-15099.xml b/L2J_Mobius_3.0_Helios/dist/game/data/stats/skills/15000-15099.xml
index 434935de06..5198d29648 100644
--- a/L2J_Mobius_3.0_Helios/dist/game/data/stats/skills/15000-15099.xml
+++ b/L2J_Mobius_3.0_Helios/dist/game/data/stats/skills/15000-15099.xml
@@ -2788,7 +2788,7 @@
- 8
+ -1
diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/stats/skills/19000-19099.xml b/L2J_Mobius_3.0_Helios/dist/game/data/stats/skills/19000-19099.xml
index 7fa6fcdec6..c9e27f6bde 100644
--- a/L2J_Mobius_3.0_Helios/dist/game/data/stats/skills/19000-19099.xml
+++ b/L2J_Mobius_3.0_Helios/dist/game/data/stats/skills/19000-19099.xml
@@ -218,6 +218,9 @@
3031
+
+ -1
+
diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/xsd/skills.xsd b/L2J_Mobius_3.0_Helios/dist/game/data/xsd/skills.xsd
index 4e660dd344..6c15e63f85 100644
--- a/L2J_Mobius_3.0_Helios/dist/game/data/xsd/skills.xsd
+++ b/L2J_Mobius_3.0_Helios/dist/game/data/xsd/skills.xsd
@@ -443,7 +443,7 @@
-
+
diff --git a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
index f2a7bfedf6..370df17a85 100644
--- a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
+++ b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
@@ -19,6 +19,7 @@ package handlers.skillconditionhandlers;
import org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.WorldObject;
import org.l2jmobius.gameserver.model.actor.Creature;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.skills.ISkillCondition;
import org.l2jmobius.gameserver.model.skills.Skill;
@@ -37,6 +38,18 @@ public class OpSocialClassSkillCondition implements ISkillCondition
@Override
public boolean canUse(Creature caster, Skill skill, WorldObject target)
{
- return caster.isPlayer() && (caster.getActingPlayer().getPledgeClass() >= _socialClass);
+ final PlayerInstance player = caster.getActingPlayer();
+ if ((player == null) || (player.getClan() == null))
+ {
+ return false;
+ }
+
+ final boolean isClanLeader = player.isClanLeader();
+ if ((_socialClass == -1) && !isClanLeader)
+ {
+ return false;
+ }
+
+ return isClanLeader || (player.getPledgeClass() >= _socialClass);
}
}
diff --git a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/stats/skills/15000-15099.xml b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/stats/skills/15000-15099.xml
index 434935de06..5198d29648 100644
--- a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/stats/skills/15000-15099.xml
+++ b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/stats/skills/15000-15099.xml
@@ -2788,7 +2788,7 @@
- 8
+ -1
diff --git a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/stats/skills/19000-19099.xml b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/stats/skills/19000-19099.xml
index b512ad319a..03383a7df4 100644
--- a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/stats/skills/19000-19099.xml
+++ b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/stats/skills/19000-19099.xml
@@ -218,6 +218,9 @@
3031
+
+ -1
+
diff --git a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/xsd/skills.xsd b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/xsd/skills.xsd
index 6c81fcb945..fb7c0a6615 100644
--- a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/xsd/skills.xsd
+++ b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/xsd/skills.xsd
@@ -445,7 +445,7 @@
-
+
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
index f2a7bfedf6..370df17a85 100644
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
@@ -19,6 +19,7 @@ package handlers.skillconditionhandlers;
import org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.WorldObject;
import org.l2jmobius.gameserver.model.actor.Creature;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.skills.ISkillCondition;
import org.l2jmobius.gameserver.model.skills.Skill;
@@ -37,6 +38,18 @@ public class OpSocialClassSkillCondition implements ISkillCondition
@Override
public boolean canUse(Creature caster, Skill skill, WorldObject target)
{
- return caster.isPlayer() && (caster.getActingPlayer().getPledgeClass() >= _socialClass);
+ final PlayerInstance player = caster.getActingPlayer();
+ if ((player == null) || (player.getClan() == null))
+ {
+ return false;
+ }
+
+ final boolean isClanLeader = player.isClanLeader();
+ if ((_socialClass == -1) && !isClanLeader)
+ {
+ return false;
+ }
+
+ return isClanLeader || (player.getPledgeClass() >= _socialClass);
}
}
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/15000-15099.xml b/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/15000-15099.xml
index 0b0f248ddd..8efccf1649 100644
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/15000-15099.xml
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/15000-15099.xml
@@ -2787,7 +2787,7 @@
- 8
+ -1
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/19000-19099.xml b/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/19000-19099.xml
index bfce7ab658..0ad88961de 100644
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/19000-19099.xml
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/19000-19099.xml
@@ -222,7 +222,7 @@
true
- 8
+ -1
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/19500-19599.xml b/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/19500-19599.xml
index a28929e820..63b8e67e22 100644
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/19500-19599.xml
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/19500-19599.xml
@@ -1053,7 +1053,7 @@
- 8
+ -1
@@ -1081,7 +1081,7 @@
- 8
+ -1
@@ -1109,7 +1109,7 @@
- 8
+ -1
@@ -1137,7 +1137,7 @@
- 8
+ -1
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/xsd/skills.xsd b/L2J_Mobius_5.0_Salvation/dist/game/data/xsd/skills.xsd
index bdb51310ff..16112d7bdb 100644
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/xsd/skills.xsd
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/xsd/skills.xsd
@@ -348,7 +348,7 @@
-
+
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
index f2a7bfedf6..370df17a85 100644
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
@@ -19,6 +19,7 @@ package handlers.skillconditionhandlers;
import org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.WorldObject;
import org.l2jmobius.gameserver.model.actor.Creature;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.skills.ISkillCondition;
import org.l2jmobius.gameserver.model.skills.Skill;
@@ -37,6 +38,18 @@ public class OpSocialClassSkillCondition implements ISkillCondition
@Override
public boolean canUse(Creature caster, Skill skill, WorldObject target)
{
- return caster.isPlayer() && (caster.getActingPlayer().getPledgeClass() >= _socialClass);
+ final PlayerInstance player = caster.getActingPlayer();
+ if ((player == null) || (player.getClan() == null))
+ {
+ return false;
+ }
+
+ final boolean isClanLeader = player.isClanLeader();
+ if ((_socialClass == -1) && !isClanLeader)
+ {
+ return false;
+ }
+
+ return isClanLeader || (player.getPledgeClass() >= _socialClass);
}
}
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/15000-15099.xml b/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/15000-15099.xml
index 9d40b8f3a8..ee163f00ac 100644
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/15000-15099.xml
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/15000-15099.xml
@@ -2787,7 +2787,7 @@
- 8
+ -1
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/19000-19099.xml b/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/19000-19099.xml
index 143efd211b..b3af019a4b 100644
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/19000-19099.xml
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/19000-19099.xml
@@ -222,7 +222,7 @@
true
- 8
+ -1
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/19500-19599.xml b/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/19500-19599.xml
index 386f291907..ccae1db057 100644
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/19500-19599.xml
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/19500-19599.xml
@@ -1053,7 +1053,7 @@
- 8
+ -1
@@ -1081,7 +1081,7 @@
- 8
+ -1
@@ -1109,7 +1109,7 @@
- 8
+ -1
@@ -1137,7 +1137,7 @@
- 8
+ -1
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/xsd/skills.xsd b/L2J_Mobius_5.5_EtinasFate/dist/game/data/xsd/skills.xsd
index bdb51310ff..16112d7bdb 100644
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/xsd/skills.xsd
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/xsd/skills.xsd
@@ -348,7 +348,7 @@
-
+
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
index f2a7bfedf6..370df17a85 100644
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
@@ -19,6 +19,7 @@ package handlers.skillconditionhandlers;
import org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.WorldObject;
import org.l2jmobius.gameserver.model.actor.Creature;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.skills.ISkillCondition;
import org.l2jmobius.gameserver.model.skills.Skill;
@@ -37,6 +38,18 @@ public class OpSocialClassSkillCondition implements ISkillCondition
@Override
public boolean canUse(Creature caster, Skill skill, WorldObject target)
{
- return caster.isPlayer() && (caster.getActingPlayer().getPledgeClass() >= _socialClass);
+ final PlayerInstance player = caster.getActingPlayer();
+ if ((player == null) || (player.getClan() == null))
+ {
+ return false;
+ }
+
+ final boolean isClanLeader = player.isClanLeader();
+ if ((_socialClass == -1) && !isClanLeader)
+ {
+ return false;
+ }
+
+ return isClanLeader || (player.getPledgeClass() >= _socialClass);
}
}
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/15000-15099.xml b/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/15000-15099.xml
index d8a2991725..e1ed321a5b 100644
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/15000-15099.xml
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/15000-15099.xml
@@ -2788,7 +2788,7 @@
- 8
+ -1
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/19000-19099.xml b/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/19000-19099.xml
index d9a7b7d5cb..476811b1d6 100644
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/19000-19099.xml
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/19000-19099.xml
@@ -222,7 +222,7 @@
true
- 8
+ -1
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/19500-19599.xml b/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/19500-19599.xml
index a533eaa491..8aa10ef077 100644
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/19500-19599.xml
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/19500-19599.xml
@@ -1061,7 +1061,7 @@
- 8
+ -1
@@ -1089,7 +1089,7 @@
- 8
+ -1
@@ -1117,7 +1117,7 @@
- 8
+ -1
@@ -1145,7 +1145,7 @@
- 8
+ -1
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/xsd/skills.xsd b/L2J_Mobius_6.0_Fafurion/dist/game/data/xsd/skills.xsd
index 8ae89bb560..9e2ceb8a20 100644
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/xsd/skills.xsd
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/xsd/skills.xsd
@@ -348,7 +348,7 @@
-
+
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
index f2a7bfedf6..370df17a85 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
@@ -19,6 +19,7 @@ package handlers.skillconditionhandlers;
import org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.WorldObject;
import org.l2jmobius.gameserver.model.actor.Creature;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.skills.ISkillCondition;
import org.l2jmobius.gameserver.model.skills.Skill;
@@ -37,6 +38,18 @@ public class OpSocialClassSkillCondition implements ISkillCondition
@Override
public boolean canUse(Creature caster, Skill skill, WorldObject target)
{
- return caster.isPlayer() && (caster.getActingPlayer().getPledgeClass() >= _socialClass);
+ final PlayerInstance player = caster.getActingPlayer();
+ if ((player == null) || (player.getClan() == null))
+ {
+ return false;
+ }
+
+ final boolean isClanLeader = player.isClanLeader();
+ if ((_socialClass == -1) && !isClanLeader)
+ {
+ return false;
+ }
+
+ return isClanLeader || (player.getPledgeClass() >= _socialClass);
}
}
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/15000-15099.xml b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/15000-15099.xml
index ffbf2588ae..ca3ad005a3 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/15000-15099.xml
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/15000-15099.xml
@@ -2789,7 +2789,7 @@
- 8
+ -1
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/19000-19099.xml b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/19000-19099.xml
index 3095706fef..fb7447f1c4 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/19000-19099.xml
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/19000-19099.xml
@@ -222,7 +222,7 @@
true
- 8
+ -1
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/19500-19599.xml b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/19500-19599.xml
index 6495eb3518..f9e903070f 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/19500-19599.xml
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/19500-19599.xml
@@ -1061,7 +1061,7 @@
- 8
+ -1
@@ -1089,7 +1089,7 @@
- 8
+ -1
@@ -1117,7 +1117,7 @@
- 8
+ -1
@@ -1145,7 +1145,7 @@
- 8
+ -1
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/xsd/skills.xsd b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/xsd/skills.xsd
index f4e94b76ca..4eac2a95c5 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/xsd/skills.xsd
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/xsd/skills.xsd
@@ -348,7 +348,7 @@
-
+
diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
index f2a7bfedf6..370df17a85 100644
--- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
+++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
@@ -19,6 +19,7 @@ package handlers.skillconditionhandlers;
import org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.WorldObject;
import org.l2jmobius.gameserver.model.actor.Creature;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.skills.ISkillCondition;
import org.l2jmobius.gameserver.model.skills.Skill;
@@ -37,6 +38,18 @@ public class OpSocialClassSkillCondition implements ISkillCondition
@Override
public boolean canUse(Creature caster, Skill skill, WorldObject target)
{
- return caster.isPlayer() && (caster.getActingPlayer().getPledgeClass() >= _socialClass);
+ final PlayerInstance player = caster.getActingPlayer();
+ if ((player == null) || (player.getClan() == null))
+ {
+ return false;
+ }
+
+ final boolean isClanLeader = player.isClanLeader();
+ if ((_socialClass == -1) && !isClanLeader)
+ {
+ return false;
+ }
+
+ return isClanLeader || (player.getPledgeClass() >= _socialClass);
}
}
diff --git a/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java b/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
index f2a7bfedf6..370df17a85 100644
--- a/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
+++ b/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
@@ -19,6 +19,7 @@ package handlers.skillconditionhandlers;
import org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.WorldObject;
import org.l2jmobius.gameserver.model.actor.Creature;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.skills.ISkillCondition;
import org.l2jmobius.gameserver.model.skills.Skill;
@@ -37,6 +38,18 @@ public class OpSocialClassSkillCondition implements ISkillCondition
@Override
public boolean canUse(Creature caster, Skill skill, WorldObject target)
{
- return caster.isPlayer() && (caster.getActingPlayer().getPledgeClass() >= _socialClass);
+ final PlayerInstance player = caster.getActingPlayer();
+ if ((player == null) || (player.getClan() == null))
+ {
+ return false;
+ }
+
+ final boolean isClanLeader = player.isClanLeader();
+ if ((_socialClass == -1) && !isClanLeader)
+ {
+ return false;
+ }
+
+ return isClanLeader || (player.getPledgeClass() >= _socialClass);
}
}
diff --git a/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java b/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
index f2a7bfedf6..370df17a85 100644
--- a/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
+++ b/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
@@ -19,6 +19,7 @@ package handlers.skillconditionhandlers;
import org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.WorldObject;
import org.l2jmobius.gameserver.model.actor.Creature;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.skills.ISkillCondition;
import org.l2jmobius.gameserver.model.skills.Skill;
@@ -37,6 +38,18 @@ public class OpSocialClassSkillCondition implements ISkillCondition
@Override
public boolean canUse(Creature caster, Skill skill, WorldObject target)
{
- return caster.isPlayer() && (caster.getActingPlayer().getPledgeClass() >= _socialClass);
+ final PlayerInstance player = caster.getActingPlayer();
+ if ((player == null) || (player.getClan() == null))
+ {
+ return false;
+ }
+
+ final boolean isClanLeader = player.isClanLeader();
+ if ((_socialClass == -1) && !isClanLeader)
+ {
+ return false;
+ }
+
+ return isClanLeader || (player.getPledgeClass() >= _socialClass);
}
}
diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java b/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
index f2a7bfedf6..370df17a85 100644
--- a/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
+++ b/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
@@ -19,6 +19,7 @@ package handlers.skillconditionhandlers;
import org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.WorldObject;
import org.l2jmobius.gameserver.model.actor.Creature;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.skills.ISkillCondition;
import org.l2jmobius.gameserver.model.skills.Skill;
@@ -37,6 +38,18 @@ public class OpSocialClassSkillCondition implements ISkillCondition
@Override
public boolean canUse(Creature caster, Skill skill, WorldObject target)
{
- return caster.isPlayer() && (caster.getActingPlayer().getPledgeClass() >= _socialClass);
+ final PlayerInstance player = caster.getActingPlayer();
+ if ((player == null) || (player.getClan() == null))
+ {
+ return false;
+ }
+
+ final boolean isClanLeader = player.isClanLeader();
+ if ((_socialClass == -1) && !isClanLeader)
+ {
+ return false;
+ }
+
+ return isClanLeader || (player.getPledgeClass() >= _socialClass);
}
}
diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java b/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
index f2a7bfedf6..370df17a85 100644
--- a/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
+++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
@@ -19,6 +19,7 @@ package handlers.skillconditionhandlers;
import org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.WorldObject;
import org.l2jmobius.gameserver.model.actor.Creature;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.skills.ISkillCondition;
import org.l2jmobius.gameserver.model.skills.Skill;
@@ -37,6 +38,18 @@ public class OpSocialClassSkillCondition implements ISkillCondition
@Override
public boolean canUse(Creature caster, Skill skill, WorldObject target)
{
- return caster.isPlayer() && (caster.getActingPlayer().getPledgeClass() >= _socialClass);
+ final PlayerInstance player = caster.getActingPlayer();
+ if ((player == null) || (player.getClan() == null))
+ {
+ return false;
+ }
+
+ final boolean isClanLeader = player.isClanLeader();
+ if ((_socialClass == -1) && !isClanLeader)
+ {
+ return false;
+ }
+
+ return isClanLeader || (player.getPledgeClass() >= _socialClass);
}
}
diff --git a/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java b/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
index f2a7bfedf6..370df17a85 100644
--- a/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
+++ b/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
@@ -19,6 +19,7 @@ package handlers.skillconditionhandlers;
import org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.WorldObject;
import org.l2jmobius.gameserver.model.actor.Creature;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.skills.ISkillCondition;
import org.l2jmobius.gameserver.model.skills.Skill;
@@ -37,6 +38,18 @@ public class OpSocialClassSkillCondition implements ISkillCondition
@Override
public boolean canUse(Creature caster, Skill skill, WorldObject target)
{
- return caster.isPlayer() && (caster.getActingPlayer().getPledgeClass() >= _socialClass);
+ final PlayerInstance player = caster.getActingPlayer();
+ if ((player == null) || (player.getClan() == null))
+ {
+ return false;
+ }
+
+ final boolean isClanLeader = player.isClanLeader();
+ if ((_socialClass == -1) && !isClanLeader)
+ {
+ return false;
+ }
+
+ return isClanLeader || (player.getPledgeClass() >= _socialClass);
}
}
diff --git a/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java b/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
index f2a7bfedf6..370df17a85 100644
--- a/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
+++ b/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/skillconditionhandlers/OpSocialClassSkillCondition.java
@@ -19,6 +19,7 @@ package handlers.skillconditionhandlers;
import org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.WorldObject;
import org.l2jmobius.gameserver.model.actor.Creature;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.skills.ISkillCondition;
import org.l2jmobius.gameserver.model.skills.Skill;
@@ -37,6 +38,18 @@ public class OpSocialClassSkillCondition implements ISkillCondition
@Override
public boolean canUse(Creature caster, Skill skill, WorldObject target)
{
- return caster.isPlayer() && (caster.getActingPlayer().getPledgeClass() >= _socialClass);
+ final PlayerInstance player = caster.getActingPlayer();
+ if ((player == null) || (player.getClan() == null))
+ {
+ return false;
+ }
+
+ final boolean isClanLeader = player.isClanLeader();
+ if ((_socialClass == -1) && !isClanLeader)
+ {
+ return false;
+ }
+
+ return isClanLeader || (player.getPledgeClass() >= _socialClass);
}
}
diff --git a/L2J_Mobius_Classic_Interlude/dist/game/data/stats/skills/15000-15099.xml b/L2J_Mobius_Classic_Interlude/dist/game/data/stats/skills/15000-15099.xml
index 434935de06..5198d29648 100644
--- a/L2J_Mobius_Classic_Interlude/dist/game/data/stats/skills/15000-15099.xml
+++ b/L2J_Mobius_Classic_Interlude/dist/game/data/stats/skills/15000-15099.xml
@@ -2788,7 +2788,7 @@
- 8
+ -1
diff --git a/L2J_Mobius_Classic_Interlude/dist/game/data/stats/skills/19000-19099.xml b/L2J_Mobius_Classic_Interlude/dist/game/data/stats/skills/19000-19099.xml
index b512ad319a..03383a7df4 100644
--- a/L2J_Mobius_Classic_Interlude/dist/game/data/stats/skills/19000-19099.xml
+++ b/L2J_Mobius_Classic_Interlude/dist/game/data/stats/skills/19000-19099.xml
@@ -218,6 +218,9 @@
3031
+
+ -1
+
diff --git a/L2J_Mobius_Classic_Interlude/dist/game/data/xsd/skills.xsd b/L2J_Mobius_Classic_Interlude/dist/game/data/xsd/skills.xsd
index ef0da7b623..fc60bfda8a 100644
--- a/L2J_Mobius_Classic_Interlude/dist/game/data/xsd/skills.xsd
+++ b/L2J_Mobius_Classic_Interlude/dist/game/data/xsd/skills.xsd
@@ -445,7 +445,7 @@
-
+