mirror of
https://github.com/TotalFreedomMC/TF-Marriage.git
synced 2024-06-16 00:31:22 +00:00
103 lines
2.2 KiB
Java
103 lines
2.2 KiB
Java
package com.lenis0012.bukkit.marriage2.internal.data;
|
|
|
|
import java.sql.PreparedStatement;
|
|
import java.sql.ResultSet;
|
|
import java.sql.SQLException;
|
|
import java.util.List;
|
|
import java.util.UUID;
|
|
|
|
import com.google.common.collect.Lists;
|
|
|
|
import com.lenis0012.bukkit.marriage2.Gender;
|
|
import com.lenis0012.bukkit.marriage2.MData;
|
|
import com.lenis0012.bukkit.marriage2.MPlayer;
|
|
import com.lenis0012.bukkit.marriage2.Marriage;
|
|
import com.lenis0012.bukkit.marriage2.internal.MarriagePlugin;
|
|
|
|
public class MarriagePlayer implements MPlayer {
|
|
private final List<UUID> requests = Lists.newArrayList();
|
|
private final UUID uuid;
|
|
private MData marriage;
|
|
private Gender gender = Gender.UNKNOWN;
|
|
private boolean inChat;
|
|
|
|
public MarriagePlayer(UUID uuid, ResultSet data) throws SQLException {
|
|
this.uuid = uuid;
|
|
if(data.next()) {
|
|
this.gender = Gender.valueOf(data.getString("gender"));
|
|
}
|
|
}
|
|
|
|
public void addMarriage(MarriageData data) {
|
|
this.marriage = data;
|
|
}
|
|
|
|
void save(PreparedStatement ps) throws SQLException {
|
|
ps.setString(1, uuid.toString());
|
|
ps.setString(2, gender.toString());
|
|
ps.setLong(3, System.currentTimeMillis());
|
|
}
|
|
|
|
@Override
|
|
public UUID getUniqueId() {
|
|
return uuid;
|
|
}
|
|
|
|
@Override
|
|
public void requestMarriage(UUID from) {
|
|
requests.add(from);
|
|
}
|
|
|
|
@Override
|
|
public boolean isMarriageRequested(UUID from) {
|
|
return requests.contains(from);
|
|
}
|
|
|
|
@Override
|
|
public Gender getGender() {
|
|
return gender;
|
|
}
|
|
|
|
@Override
|
|
public void setGender(Gender gender) {
|
|
this.gender = gender;
|
|
}
|
|
|
|
@Override
|
|
public MData getMarriage() {
|
|
return marriage;
|
|
}
|
|
|
|
@Override
|
|
public boolean isMarried() {
|
|
return marriage != null;
|
|
}
|
|
|
|
@Override
|
|
public boolean isInChat() {
|
|
return inChat;
|
|
}
|
|
|
|
@Override
|
|
public void setInChat(boolean inChat) {
|
|
this.inChat = inChat;
|
|
}
|
|
|
|
@Override
|
|
public MPlayer getPartner() {
|
|
Marriage core = MarriagePlugin.getInstance();
|
|
UUID id = null;
|
|
if(marriage != null) {
|
|
id = uuid.equals(marriage.getPlayer1Id()) ? marriage.getPllayer2Id() : marriage.getPlayer1Id();
|
|
}
|
|
|
|
return core.getMPlayer(id);
|
|
}
|
|
|
|
@Override
|
|
public void divorce() {
|
|
MarriagePlayer partner = (MarriagePlayer) getPartner();
|
|
partner.marriage = null;
|
|
this.marriage = null;
|
|
}
|
|
} |