Rename and clean up MapleFamilyEntitlement
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
package client;
|
||||
|
||||
public enum MapleFamilyEntitlement {
|
||||
public enum FamilyEntitlement {
|
||||
FAMILY_REUINION(1, 300, "Family Reunion", "[Target] Me\\n[Effect] Teleport directly to the Family member of your choice."),
|
||||
SUMMON_FAMILY(1, 500, "Summon Family", "[Target] 1 Family member\\n[Effect] Summon a Family member of choice to the map you're in."),
|
||||
SELF_DROP_1_5(1, 700, "My Drop Rate 1.5x (15 min)", "[Target] Me\\n[Time] 15 min.\\n[Effect] Monster drop rate will be increased #c1.5x#.\\n* If the Drop Rate event is in progress, this will be nullified."),
|
||||
@@ -12,29 +12,29 @@ public enum MapleFamilyEntitlement {
|
||||
SELF_EXP_2_30MIN(1, 2500, "My EXP 2x (30 min)", "[Target] Me\\n[Time] 30 min.\\n[Effect] EXP earned from hunting will be increased #c2x#. \\n* If the EXP event is in progress, this will be nullified."),
|
||||
PARTY_DROP_2_30MIN(1, 4000, "My Party Drop Rate 2x (30 min)", "[Target] My party\\n[Time] 30 min.\\n[Effect] Monster drop rate will be increased #c2x#.\\n* If the Drop Rate event is in progress, this will be nullified."),
|
||||
PARTY_EXP_2_30MIN(1, 5000, "My Party EXP 2x (30 min)", "[Target] My party\\n[Time] 30 min.\\n[Effect] EXP earned from hunting will be increased #c2x#.\\n* If the EXP event is in progress, this will be nullified.");
|
||||
|
||||
|
||||
private final int usageLimit, repCost;
|
||||
private final String name, description;
|
||||
|
||||
private MapleFamilyEntitlement(int usageLimit, int repCost, String name, String description) {
|
||||
|
||||
FamilyEntitlement(int usageLimit, int repCost, String name, String description) {
|
||||
this.usageLimit = usageLimit;
|
||||
this.repCost = repCost;
|
||||
this.name = name;
|
||||
this.description = description;
|
||||
}
|
||||
|
||||
|
||||
public int getUsageLimit() {
|
||||
return usageLimit;
|
||||
}
|
||||
|
||||
|
||||
public int getRepCost() {
|
||||
return repCost;
|
||||
}
|
||||
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
|
||||
public String getDescription() {
|
||||
return description;
|
||||
}
|
||||
@@ -471,7 +471,7 @@ public class MapleFamilyEntry {
|
||||
return new Pair<>(highestGeneration, juniorCount); //creating new objects to return is a bit inefficient, but cleaner than packing into a long
|
||||
}
|
||||
|
||||
public boolean useEntitlement(MapleFamilyEntitlement entitlement) {
|
||||
public boolean useEntitlement(FamilyEntitlement entitlement) {
|
||||
int id = entitlement.ordinal();
|
||||
if(entitlements[id] >= 1) return false;
|
||||
try(Connection con = DatabaseConnection.getConnection(); PreparedStatement ps = con.prepareStatement("INSERT INTO family_entitlement (entitlementid, charid, timestamp) VALUES (?, ?, ?)")) {
|
||||
@@ -487,7 +487,7 @@ public class MapleFamilyEntry {
|
||||
return true;
|
||||
}
|
||||
|
||||
public boolean refundEntitlement(MapleFamilyEntitlement entitlement) {
|
||||
public boolean refundEntitlement(FamilyEntitlement entitlement) {
|
||||
int id = entitlement.ordinal();
|
||||
try(Connection con = DatabaseConnection.getConnection(); PreparedStatement ps = con.prepareStatement("DELETE FROM family_entitlement WHERE entitlementid = ? AND charid = ?")) {
|
||||
ps.setInt(1, id);
|
||||
@@ -501,11 +501,11 @@ public class MapleFamilyEntry {
|
||||
return true;
|
||||
}
|
||||
|
||||
public boolean isEntitlementUsed(MapleFamilyEntitlement entitlement) {
|
||||
public boolean isEntitlementUsed(FamilyEntitlement entitlement) {
|
||||
return entitlements[entitlement.ordinal()] >= 1;
|
||||
}
|
||||
|
||||
public int getEntitlementUsageCount(MapleFamilyEntitlement entitlement) {
|
||||
public int getEntitlementUsageCount(FamilyEntitlement entitlement) {
|
||||
return entitlements[entitlement.ordinal()];
|
||||
}
|
||||
|
||||
@@ -514,7 +514,7 @@ public class MapleFamilyEntry {
|
||||
}
|
||||
|
||||
public void resetEntitlementUsages() {
|
||||
for(MapleFamilyEntitlement entitlement : MapleFamilyEntitlement.values()) {
|
||||
for(FamilyEntitlement entitlement : FamilyEntitlement.values()) {
|
||||
entitlements[entitlement.ordinal()] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ package net.server.channel.handlers;
|
||||
|
||||
import client.Character;
|
||||
import client.Client;
|
||||
import client.MapleFamilyEntitlement;
|
||||
import client.FamilyEntitlement;
|
||||
import client.MapleFamilyEntry;
|
||||
import config.YamlConfig;
|
||||
import net.AbstractPacketHandler;
|
||||
@@ -30,8 +30,8 @@ public class FamilySummonResponseHandler extends AbstractPacketHandler {
|
||||
if(accept && inviter.getMap() == map) { //cancel if inviter has changed maps
|
||||
c.getPlayer().changeMap(map, map.getPortal(0));
|
||||
} else {
|
||||
inviterEntry.refundEntitlement(MapleFamilyEntitlement.SUMMON_FAMILY);
|
||||
inviterEntry.gainReputation(MapleFamilyEntitlement.SUMMON_FAMILY.getRepCost(), false); //refund rep cost if declined
|
||||
inviterEntry.refundEntitlement(FamilyEntitlement.SUMMON_FAMILY);
|
||||
inviterEntry.gainReputation(FamilyEntitlement.SUMMON_FAMILY.getRepCost(), false); //refund rep cost if declined
|
||||
inviter.sendPacket(PacketCreator.getFamilyInfo(inviterEntry));
|
||||
inviter.dropMessage(5, c.getPlayer().getName() + " has denied the summon request.");
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@ package net.server.channel.handlers;
|
||||
|
||||
import client.Character;
|
||||
import client.Client;
|
||||
import client.MapleFamilyEntitlement;
|
||||
import client.FamilyEntitlement;
|
||||
import client.MapleFamilyEntry;
|
||||
import config.YamlConfig;
|
||||
import net.AbstractPacketHandler;
|
||||
@@ -45,7 +45,7 @@ public final class FamilyUseHandler extends AbstractPacketHandler {
|
||||
if(!YamlConfig.config.server.USE_FAMILY_SYSTEM) {
|
||||
return;
|
||||
}
|
||||
MapleFamilyEntitlement type = MapleFamilyEntitlement.values()[p.readInt()];
|
||||
FamilyEntitlement type = FamilyEntitlement.values()[p.readInt()];
|
||||
int cost = type.getRepCost();
|
||||
MapleFamilyEntry entry = c.getPlayer().getFamilyEntry();
|
||||
if(entry.getReputation() < cost || entry.isEntitlementUsed(type)) {
|
||||
@@ -53,14 +53,14 @@ public final class FamilyUseHandler extends AbstractPacketHandler {
|
||||
}
|
||||
c.sendPacket(PacketCreator.getFamilyInfo(entry));
|
||||
Character victim;
|
||||
if(type == MapleFamilyEntitlement.FAMILY_REUINION || type == MapleFamilyEntitlement.SUMMON_FAMILY) {
|
||||
if(type == FamilyEntitlement.FAMILY_REUINION || type == FamilyEntitlement.SUMMON_FAMILY) {
|
||||
victim = c.getChannelServer().getPlayerStorage().getCharacterByName(p.readString());
|
||||
if(victim != null && victim != c.getPlayer()) {
|
||||
if(victim.getFamily() == c.getPlayer().getFamily()) {
|
||||
MapleMap targetMap = victim.getMap();
|
||||
MapleMap ownMap = c.getPlayer().getMap();
|
||||
if(targetMap != null) {
|
||||
if(type == MapleFamilyEntitlement.FAMILY_REUINION) {
|
||||
if(type == FamilyEntitlement.FAMILY_REUINION) {
|
||||
if(!FieldLimit.CANNOTMIGRATE.check(ownMap.getFieldLimit()) && !FieldLimit.CANNOTVIPROCK.check(targetMap.getFieldLimit())
|
||||
&& (targetMap.getForcedReturnId() == 999999999 || targetMap.getId() < 100000000) && targetMap.getEventInstance() == null) {
|
||||
|
||||
@@ -91,7 +91,7 @@ public final class FamilyUseHandler extends AbstractPacketHandler {
|
||||
c.sendPacket(PacketCreator.sendFamilyMessage(67, 0));
|
||||
}
|
||||
}
|
||||
} else if(type == MapleFamilyEntitlement.FAMILY_BONDING) {
|
||||
} else if(type == FamilyEntitlement.FAMILY_BONDING) {
|
||||
//not implemented
|
||||
} else {
|
||||
boolean party = false;
|
||||
@@ -103,11 +103,11 @@ public final class FamilyUseHandler extends AbstractPacketHandler {
|
||||
case PARTY_EXP_2_30MIN:
|
||||
party = true;
|
||||
isExp = true;
|
||||
type = MapleFamilyEntitlement.SELF_EXP_2_30MIN;
|
||||
type = FamilyEntitlement.SELF_EXP_2_30MIN;
|
||||
continue;
|
||||
case PARTY_DROP_2_30MIN:
|
||||
party = true;
|
||||
type = MapleFamilyEntitlement.SELF_DROP_2_30MIN;
|
||||
type = FamilyEntitlement.SELF_DROP_2_30MIN;
|
||||
continue;
|
||||
case SELF_DROP_2_30MIN:
|
||||
duration = 30;
|
||||
@@ -130,7 +130,7 @@ public final class FamilyUseHandler extends AbstractPacketHandler {
|
||||
}
|
||||
}
|
||||
|
||||
private boolean useEntitlement(MapleFamilyEntry entry, MapleFamilyEntitlement entitlement) {
|
||||
private boolean useEntitlement(MapleFamilyEntry entry, FamilyEntitlement entitlement) {
|
||||
if(entry.useEntitlement(entitlement)) {
|
||||
entry.gainReputation(-entitlement.getRepCost(), false);
|
||||
entry.getChr().sendPacket(PacketCreator.getFamilyInfo(entry));
|
||||
|
||||
@@ -5747,9 +5747,9 @@ public class PacketCreator {
|
||||
|
||||
public static Packet loadFamily(Character player) {
|
||||
final OutPacket p = OutPacket.create(SendOpcode.FAMILY_PRIVILEGE_LIST);
|
||||
p.writeInt(MapleFamilyEntitlement.values().length);
|
||||
for (int i = 0; i < MapleFamilyEntitlement.values().length; i++) {
|
||||
MapleFamilyEntitlement entitlement = MapleFamilyEntitlement.values()[i];
|
||||
p.writeInt(FamilyEntitlement.values().length);
|
||||
for (int i = 0; i < FamilyEntitlement.values().length; i++) {
|
||||
FamilyEntitlement entitlement = FamilyEntitlement.values()[i];
|
||||
p.writeByte(i <= 1 ? 1 : 2); //type
|
||||
p.writeInt(entitlement.getRepCost());
|
||||
p.writeInt(entitlement.getUsageLimit());
|
||||
@@ -5816,8 +5816,8 @@ public class PacketCreator {
|
||||
p.writeInt(f.getFamily().getLeader().getChrId()); // Leader ID (Allows setting message)
|
||||
p.writeString(f.getFamily().getName());
|
||||
p.writeString(f.getFamily().getMessage()); //family message
|
||||
p.writeInt(MapleFamilyEntitlement.values().length); //Entitlement info count
|
||||
for (MapleFamilyEntitlement entitlement : MapleFamilyEntitlement.values()) {
|
||||
p.writeInt(FamilyEntitlement.values().length); //Entitlement info count
|
||||
for (FamilyEntitlement entitlement : FamilyEntitlement.values()) {
|
||||
p.writeInt(entitlement.ordinal()); //ID
|
||||
p.writeInt(f.isEntitlementUsed(entitlement) ? 1 : 0); //Used count
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user