Rename and clean up MapleRing

This commit is contained in:
P0nk
2021-09-09 21:23:45 +02:00
parent 8af0999510
commit 448c02033d
5 changed files with 47 additions and 52 deletions

View File

@@ -234,11 +234,11 @@ public class Character extends AbstractCharacterObject {
private PartyQuest partyQuest = null; private PartyQuest partyQuest = null;
private final List<Pair<DelayedQuestUpdate, Object[]>> npcUpdateQuests = new LinkedList<>(); private final List<Pair<DelayedQuestUpdate, Object[]>> npcUpdateQuests = new LinkedList<>();
private MapleDragon dragon = null; private MapleDragon dragon = null;
private MapleRing marriageRing; private Ring marriageRing;
private int marriageItemid = -1; private int marriageItemid = -1;
private int partnerId = -1; private int partnerId = -1;
private final List<MapleRing> crushRings = new ArrayList<>(); private final List<Ring> crushRings = new ArrayList<>();
private final List<MapleRing> friendshipRings = new ArrayList<>(); private final List<Ring> friendshipRings = new ArrayList<>();
private boolean loggedIn = false; private boolean loggedIn = false;
private boolean useCS; //chaos scroll upon crafting item. private boolean useCS; //chaos scroll upon crafting item.
private long npcCd; private long npcCd;
@@ -524,17 +524,17 @@ public class Character extends AbstractCharacterObject {
} }
} }
public void addCrushRing(MapleRing r) { public void addCrushRing(Ring r) {
crushRings.add(r); crushRings.add(r);
} }
public MapleRing getRingById(int id) { public Ring getRingById(int id) {
for (MapleRing ring : getCrushRings()) { for (Ring ring : getCrushRings()) {
if (ring.getRingId() == id) { if (ring.getRingId() == id) {
return ring; return ring;
} }
} }
for (MapleRing ring : getFriendshipRings()) { for (Ring ring : getFriendshipRings()) {
if (ring.getRingId() == id) { if (ring.getRingId() == id) {
return ring; return ring;
} }
@@ -602,11 +602,11 @@ public class Character extends AbstractCharacterObject {
this.fame += famechange; this.fame += famechange;
} }
public void addFriendshipRing(MapleRing r) { public void addFriendshipRing(Ring r) {
friendshipRings.add(r); friendshipRings.add(r);
} }
public void addMarriageRing(MapleRing r) { public void addMarriageRing(Ring r) {
marriageRing = r; marriageRing = r;
} }
@@ -4639,7 +4639,7 @@ public class Character extends AbstractCharacterObject {
return Collections.unmodifiableList(ret); return Collections.unmodifiableList(ret);
} }
public List<MapleRing> getCrushRings() { public List<Ring> getCrushRings() {
Collections.sort(crushRings); Collections.sort(crushRings);
return crushRings; return crushRings;
} }
@@ -4986,7 +4986,7 @@ public class Character extends AbstractCharacterObject {
usedStorage = true; usedStorage = true;
} }
public List<MapleRing> getFriendshipRings() { public List<Ring> getFriendshipRings() {
Collections.sort(friendshipRings); Collections.sort(friendshipRings);
return friendshipRings; return friendshipRings;
} }
@@ -5193,7 +5193,7 @@ public class Character extends AbstractCharacterObject {
return mapid; return mapid;
} }
public MapleRing getMarriageRing() { public Ring getMarriageRing() {
return partnerId > 0 ? marriageRing : null; return partnerId > 0 ? marriageRing : null;
} }
@@ -6829,7 +6829,7 @@ public class Character extends AbstractCharacterObject {
} }
} }
public void addPlayerRing(MapleRing ring) { public void addPlayerRing(Ring ring) {
int ringItemId = ring.getItemId(); int ringItemId = ring.getItemId();
if (ItemConstants.isWeddingRing(ringItemId)) { if (ItemConstants.isWeddingRing(ringItemId)) {
this.addMarriageRing(ring); this.addMarriageRing(ring);
@@ -7060,7 +7060,7 @@ public class Character extends AbstractCharacterObject {
if (mit.equals(InventoryType.EQUIP) || mit.equals(InventoryType.EQUIPPED)) { if (mit.equals(InventoryType.EQUIP) || mit.equals(InventoryType.EQUIPPED)) {
Equip equip = (Equip) item.getLeft(); Equip equip = (Equip) item.getLeft();
if (equip.getRingId() > -1) { if (equip.getRingId() > -1) {
MapleRing ring = MapleRing.loadFromDb(equip.getRingId()); Ring ring = Ring.loadFromDb(equip.getRingId());
if (item.getRight().equals(InventoryType.EQUIPPED)) { if (item.getRight().equals(InventoryType.EQUIPPED)) {
ring.equip(); ring.equip();
} }

View File

@@ -31,18 +31,17 @@ import java.sql.ResultSet;
import java.sql.SQLException; import java.sql.SQLException;
/** /**
*
* @author Danny * @author Danny
*/ */
public class MapleRing implements Comparable<MapleRing> { public class Ring implements Comparable<Ring> {
private int ringId; private final int ringId;
private int ringId2; private final int ringId2;
private int partnerId; private final int partnerId;
private int itemId; private final int itemId;
private String partnerName; private final String partnerName;
private boolean equipped = false; private boolean equipped = false;
public MapleRing(int id, int id2, int partnerId, int itemid, String partnername) { public Ring(int id, int id2, int partnerId, int itemid, String partnername) {
this.ringId = id; this.ringId = id;
this.ringId2 = id2; this.ringId2 = id2;
this.partnerId = partnerId; this.partnerId = partnerId;
@@ -50,15 +49,15 @@ public class MapleRing implements Comparable<MapleRing> {
this.partnerName = partnername; this.partnerName = partnername;
} }
public static MapleRing loadFromDb(int ringId) { public static Ring loadFromDb(int ringId) {
MapleRing ret = null; Ring ret = null;
try (Connection con = DatabaseConnection.getConnection(); try (Connection con = DatabaseConnection.getConnection();
PreparedStatement ps = con.prepareStatement("SELECT * FROM rings WHERE id = ?")) { PreparedStatement ps = con.prepareStatement("SELECT * FROM rings WHERE id = ?")) {
ps.setInt(1, ringId); ps.setInt(1, ringId);
try (ResultSet rs = ps.executeQuery()) { try (ResultSet rs = ps.executeQuery()) {
if (rs.next()) { if (rs.next()) {
ret = new MapleRing(ringId, rs.getInt("partnerRingId"), rs.getInt("partnerChrId"), rs.getInt("itemid"), rs.getString("partnerName")); ret = new Ring(ringId, rs.getInt("partnerRingId"), rs.getInt("partnerChrId"), rs.getInt("itemid"), rs.getString("partnerName"));
} }
} }
return ret; return ret;
@@ -68,12 +67,12 @@ public class MapleRing implements Comparable<MapleRing> {
} }
} }
public static void removeRing(final MapleRing ring) { public static void removeRing(final Ring ring) {
try { try {
if (ring == null) { if (ring == null) {
return; return;
} }
try (Connection con = DatabaseConnection.getConnection()) { try (Connection con = DatabaseConnection.getConnection()) {
try (PreparedStatement ps = con.prepareStatement("DELETE FROM rings WHERE id=?")) { try (PreparedStatement ps = con.prepareStatement("DELETE FROM rings WHERE id=?")) {
ps.setInt(1, ring.getRingId()); ps.setInt(1, ring.getRingId());
@@ -102,7 +101,7 @@ public class MapleRing implements Comparable<MapleRing> {
ex.printStackTrace(); ex.printStackTrace();
} }
} }
public static Pair<Integer, Integer> createRing(int itemid, final Character partner1, final Character partner2) { public static Pair<Integer, Integer> createRing(int itemid, final Character partner1, final Character partner2) {
try { try {
if (partner1 == null) { if (partner1 == null) {
@@ -175,12 +174,8 @@ public class MapleRing implements Comparable<MapleRing> {
@Override @Override
public boolean equals(Object o) { public boolean equals(Object o) {
if (o instanceof MapleRing) { if (o instanceof Ring) {
if (((MapleRing) o).getRingId() == getRingId()) { return ((Ring) o).getRingId() == getRingId();
return true;
} else {
return false;
}
} }
return false; return false;
} }
@@ -193,7 +188,7 @@ public class MapleRing implements Comparable<MapleRing> {
} }
@Override @Override
public int compareTo(MapleRing other) { public int compareTo(Ring other) {
if (ringId < other.getRingId()) { if (ringId < other.getRingId()) {
return -1; return -1;
} else if (ringId == other.getRingId()) { } else if (ringId == other.getRingId()) {

View File

@@ -23,7 +23,7 @@ package net.server.channel.handlers;
import client.Character; import client.Character;
import client.Client; import client.Client;
import client.MapleRing; import client.Ring;
import client.inventory.Equip; import client.inventory.Equip;
import client.inventory.Inventory; import client.inventory.Inventory;
import client.inventory.InventoryType; import client.inventory.InventoryType;
@@ -265,7 +265,7 @@ public final class CashOperationHandler extends AbstractPacketHandler {
if(item instanceof Equip) { if(item instanceof Equip) {
Equip equip = (Equip) item; Equip equip = (Equip) item;
if(equip.getRingId() >= 0) { if(equip.getRingId() >= 0) {
MapleRing ring = MapleRing.loadFromDb(equip.getRingId()); Ring ring = Ring.loadFromDb(equip.getRingId());
chr.addPlayerRing(ring); chr.addPlayerRing(ring);
} }
} }
@@ -318,13 +318,13 @@ public final class CashOperationHandler extends AbstractPacketHandler {
if(itemRing.toItem() instanceof Equip) { if(itemRing.toItem() instanceof Equip) {
Equip eqp = (Equip) itemRing.toItem(); Equip eqp = (Equip) itemRing.toItem();
Pair<Integer, Integer> rings = MapleRing.createRing(itemRing.getItemId(), chr, partner); Pair<Integer, Integer> rings = Ring.createRing(itemRing.getItemId(), chr, partner);
eqp.setRingId(rings.getLeft()); eqp.setRingId(rings.getLeft());
cs.addToInventory(eqp); cs.addToInventory(eqp);
c.sendPacket(PacketCreator.showBoughtCashItem(eqp, c.getAccID())); c.sendPacket(PacketCreator.showBoughtCashItem(eqp, c.getAccID()));
cs.gainCash(toCharge, itemRing, chr.getWorld()); cs.gainCash(toCharge, itemRing, chr.getWorld());
cs.gift(partner.getId(), chr.getName(), text, eqp.getSN(), rings.getRight()); cs.gift(partner.getId(), chr.getName(), text, eqp.getSN(), rings.getRight());
chr.addCrushRing(MapleRing.loadFromDb(rings.getLeft())); chr.addCrushRing(Ring.loadFromDb(rings.getLeft()));
try { try {
chr.sendNote(partner.getName(), text, (byte) 1); chr.sendNote(partner.getName(), text, (byte) 1);
} catch (SQLException ex) { } catch (SQLException ex) {
@@ -382,13 +382,13 @@ public final class CashOperationHandler extends AbstractPacketHandler {
// Need to check to make sure its actually an equip and the right SN... // Need to check to make sure its actually an equip and the right SN...
if(itemRing.toItem() instanceof Equip) { if(itemRing.toItem() instanceof Equip) {
Equip eqp = (Equip) itemRing.toItem(); Equip eqp = (Equip) itemRing.toItem();
Pair<Integer, Integer> rings = MapleRing.createRing(itemRing.getItemId(), chr, partner); Pair<Integer, Integer> rings = Ring.createRing(itemRing.getItemId(), chr, partner);
eqp.setRingId(rings.getLeft()); eqp.setRingId(rings.getLeft());
cs.addToInventory(eqp); cs.addToInventory(eqp);
c.sendPacket(PacketCreator.showBoughtCashRing(eqp, partner.getName(), c.getAccID())); c.sendPacket(PacketCreator.showBoughtCashRing(eqp, partner.getName(), c.getAccID()));
cs.gainCash(payment, -itemRing.getPrice()); cs.gainCash(payment, -itemRing.getPrice());
cs.gift(partner.getId(), chr.getName(), text, eqp.getSN(), rings.getRight()); cs.gift(partner.getId(), chr.getName(), text, eqp.getSN(), rings.getRight());
chr.addFriendshipRing(MapleRing.loadFromDb(rings.getLeft())); chr.addFriendshipRing(Ring.loadFromDb(rings.getLeft()));
try { try {
chr.sendNote(partner.getName(), text, (byte) 1); chr.sendNote(partner.getName(), text, (byte) 1);
} catch (SQLException ex) { } catch (SQLException ex) {

View File

@@ -23,7 +23,7 @@ package net.server.channel.handlers;
import client.Character; import client.Character;
import client.Client; import client.Client;
import client.MapleRing; import client.Ring;
import client.inventory.Equip; import client.inventory.Equip;
import client.inventory.InventoryType; import client.inventory.InventoryType;
import client.inventory.Item; import client.inventory.Item;
@@ -176,7 +176,7 @@ public final class RingActionHandler extends AbstractPacketHandler {
if(partnerid <= 0) return; if(partnerid <= 0) return;
chr.getClient().getWorldServer().deleteRelationship(chr.getId(), partnerid); chr.getClient().getWorldServer().deleteRelationship(chr.getId(), partnerid);
MapleRing.removeRing(chr.getMarriageRing()); Ring.removeRing(chr.getMarriageRing());
Character partner = chr.getClient().getWorldServer().getPlayerStorage().getCharacterById(partnerid); Character partner = chr.getClient().getWorldServer().getPlayerStorage().getCharacterById(partnerid);
if(partner == null) { if(partner == null) {
@@ -272,20 +272,20 @@ public final class RingActionHandler extends AbstractPacketHandler {
} }
public static void giveMarriageRings(Character player, Character partner, int marriageRingId) { public static void giveMarriageRings(Character player, Character partner, int marriageRingId) {
Pair<Integer, Integer> rings = MapleRing.createRing(marriageRingId, player, partner); Pair<Integer, Integer> rings = Ring.createRing(marriageRingId, player, partner);
MapleItemInformationProvider ii = MapleItemInformationProvider.getInstance(); MapleItemInformationProvider ii = MapleItemInformationProvider.getInstance();
Item ringObj = ii.getEquipById(marriageRingId); Item ringObj = ii.getEquipById(marriageRingId);
Equip ringEqp = (Equip) ringObj; Equip ringEqp = (Equip) ringObj;
ringEqp.setRingId(rings.getLeft()); ringEqp.setRingId(rings.getLeft());
player.addMarriageRing(MapleRing.loadFromDb(rings.getLeft())); player.addMarriageRing(Ring.loadFromDb(rings.getLeft()));
InventoryManipulator.addFromDrop(player.getClient(), ringEqp, false, -1); InventoryManipulator.addFromDrop(player.getClient(), ringEqp, false, -1);
player.broadcastMarriageMessage(); player.broadcastMarriageMessage();
ringObj = ii.getEquipById(marriageRingId); ringObj = ii.getEquipById(marriageRingId);
ringEqp = (Equip) ringObj; ringEqp = (Equip) ringObj;
ringEqp.setRingId(rings.getRight()); ringEqp.setRingId(rings.getRight());
partner.addMarriageRing(MapleRing.loadFromDb(rings.getRight())); partner.addMarriageRing(Ring.loadFromDb(rings.getRight()));
InventoryManipulator.addFromDrop(partner.getClient(), ringEqp, false, -1); InventoryManipulator.addFromDrop(partner.getClient(), ringEqp, false, -1);
partner.broadcastMarriageMessage(); partner.broadcastMarriageMessage();
} }

View File

@@ -2081,14 +2081,14 @@ public class PacketCreator {
} }
private static void addRingLook(final OutPacket p, Character chr, boolean crush) { private static void addRingLook(final OutPacket p, Character chr, boolean crush) {
List<MapleRing> rings; List<Ring> rings;
if (crush) { if (crush) {
rings = chr.getCrushRings(); rings = chr.getCrushRings();
} else { } else {
rings = chr.getFriendshipRings(); rings = chr.getFriendshipRings();
} }
boolean yes = false; boolean yes = false;
for (MapleRing ring : rings) { for (Ring ring : rings) {
if (ring.equipped()) { if (ring.equipped()) {
if (yes == false) { if (yes == false) {
yes = true; yes = true;
@@ -2107,7 +2107,7 @@ public class PacketCreator {
} }
private static void addMarriageRingLook(Client target, final OutPacket p, Character chr) { private static void addMarriageRingLook(Client target, final OutPacket p, Character chr) {
MapleRing ring = chr.getMarriageRing(); Ring ring = chr.getMarriageRing();
if (ring == null || !ring.equipped()) { if (ring == null || !ring.equipped()) {
p.writeByte(0); p.writeByte(0);
@@ -6712,7 +6712,7 @@ public class PacketCreator {
private static void addRingInfo(OutPacket p, Character chr) { private static void addRingInfo(OutPacket p, Character chr) {
p.writeShort(chr.getCrushRings().size()); p.writeShort(chr.getCrushRings().size());
for (MapleRing ring : chr.getCrushRings()) { for (Ring ring : chr.getCrushRings()) {
p.writeInt(ring.getPartnerChrId()); p.writeInt(ring.getPartnerChrId());
p.writeFixedString(getRightPaddedStr(ring.getPartnerName(), '\0', 13)); p.writeFixedString(getRightPaddedStr(ring.getPartnerName(), '\0', 13));
p.writeInt(ring.getRingId()); p.writeInt(ring.getRingId());
@@ -6721,7 +6721,7 @@ public class PacketCreator {
p.writeInt(0); p.writeInt(0);
} }
p.writeShort(chr.getFriendshipRings().size()); p.writeShort(chr.getFriendshipRings().size());
for (MapleRing ring : chr.getFriendshipRings()) { for (Ring ring : chr.getFriendshipRings()) {
p.writeInt(ring.getPartnerChrId()); p.writeInt(ring.getPartnerChrId());
p.writeFixedString(getRightPaddedStr(ring.getPartnerName(), '\0', 13)); p.writeFixedString(getRightPaddedStr(ring.getPartnerName(), '\0', 13));
p.writeInt(ring.getRingId()); p.writeInt(ring.getRingId());
@@ -6732,7 +6732,7 @@ public class PacketCreator {
} }
if (chr.getPartnerId() > 0) { if (chr.getPartnerId() > 0) {
MapleRing marriageRing = chr.getMarriageRing(); Ring marriageRing = chr.getMarriageRing();
p.writeShort(1); p.writeShort(1);
p.writeInt(chr.getRelationshipId()); p.writeInt(chr.getRelationshipId());