Archived
0

UPDATE 0.0.4 ~ new Methods etc.

This commit is contained in:
Prot-CN
2019-01-31 07:59:40 +06:00
parent 3fceaff48d
commit 53bc91d2e6
7 changed files with 205 additions and 59 deletions

View File

@@ -2,4 +2,25 @@ package ru.prisonlife.PrisonAPI;
import org.bukkit.plugin.java.JavaPlugin;
public class PrisonAPI extends JavaPlugin { public void onEnable() {} public void onDisable() {} }
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class PrisonAPI extends JavaPlugin {
public static Connection CONN;
public void onEnable() {
try {
CONN = DriverManager.getConnection(
"jdbc:mysql://54.37.128.221:3306/prison",
"forsplay", "ay18qILi5z1RTwWi");
} catch (SQLException e) { e.printStackTrace(); }
}
public void onDisable() {
try {
if(!CONN.isClosed())
CONN.close();
} catch (SQLException e) { e.printStackTrace(); }
}
}

View File

@@ -1,12 +0,0 @@
package ru.prisonlife.PrisonAPI.connect;
import java.sql.*;
public class DataBasePrison4Life {
protected Connection connection;
{ try {
connection = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/prison4life",
"root", "root");
} catch (SQLException e) { e.printStackTrace(); } }
}

View File

@@ -1,12 +1,12 @@
package ru.prisonlife.PrisonAPI.template;
import ru.prisonlife.PrisonAPI.connect.DataBasePrison4Life;
import ru.prisonlife.PrisonAPI.PrisonAPI;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class Level extends DataBasePrison4Life {
public class Level {
private PreparedStatement state;
private ResultSet r_set;
private Prisoner me;
@@ -46,7 +46,7 @@ public class Level extends DataBasePrison4Life {
}
private void setInResUUID() throws SQLException {
state = connection.prepareStatement("SELECT * UUID FROM player_stats WHERE UUID = ?;");
state = PrisonAPI.CONN.prepareStatement("SELECT * UUID FROM player_stats WHERE UUID = ?;");
state.setString(1, me.getPlayer().getUniqueId().toString());
r_set = state.executeQuery("SELECT UUID FROM player_stats WHERE UUID = '" + me.getPlayer().getUniqueId() + "'");
}

View File

@@ -1,61 +1,48 @@
package ru.prisonlife.PrisonAPI.template;
import org.bukkit.entity.Player;
import ru.prisonlife.PrisonAPI.connect.DataBasePrison4Life;
import ru.prisonlife.PrisonAPI.PrisonAPI;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class Prisoner extends DataBasePrison4Life {
public class Prisoner {
private Player me;
private Wallet wallet;
private Level level;
private Stats stats;
private Wallet wallet;
private PreparedStatement state;
private ResultSet r_set;
public Prisoner(Player player) throws SQLException {
public Prisoner(Player player) {
me = player;
setInResUUID();
try {
if(r_set.next()) {
level = new Level(this);
wallet = new Wallet(this);
}
} catch(NullPointerException z) {}
disconnect();
level = new Level(this);
stats = new Stats(this);
wallet = new Wallet(this);
}
public Player getPlayer() { return me; }
public Wallet getWallet() { return wallet; }
public Stats getStats() { return stats; }
public Level getPrisonLevel() throws SQLException { return this.level; }
public void register() throws SQLException {
setInResUUID();
if(!r_set.next()) {
state.execute("INSERT INTO player_stats(NAME, UUID, LEVEL, POINTS, WALLET) VALUES (" +
"'" + getPlayer().getName() + "', '" + me.getUniqueId() + "', 1, 0, 0);");
level = new Level(this);
wallet = new Wallet(this);
}
disconnect();
}
public Wallet getWallet() { return this.wallet; }
public Level getPrisonLevel() throws SQLException {
setInResUUID();
if(r_set.first())
return this.level;
disconnect();
return null;
}
private void setInResUUID() throws SQLException {
state = connection.prepareStatement("SELECT * UUID FROM player_stats WHERE UUID = ?;");
state = PrisonAPI.CONN.prepareStatement("SELECT * UUID FROM player_stats WHERE UUID = ?;");
state.setString(1, me.getUniqueId().toString());
r_set = state.executeQuery("SELECT UUID FROM player_stats WHERE UUID = '" + me.getUniqueId() + "'");
}
private void disconnect() throws SQLException {
if(!r_set.next()) {
state.execute(
"INSERT INTO player_stats(NAME, UUID, LEVEL, POINTS, G_TIME, D_BLOCKS, " +
"K_PLAYERS, K_MOBS, DEATHS, WALLET) VALUES (" +"'" + getPlayer().getName()
+ "', '" + me.getUniqueId() + "', 1, 0, 0, 0, 0, 0, 0, 0);");
level = new Level(this);
stats = new Stats(this);
wallet = new Wallet(this);
}
r_set.close();
state.close();
}

View File

@@ -1,12 +1,12 @@
package ru.prisonlife.PrisonAPI.template;
import ru.prisonlife.PrisonAPI.connect.DataBasePrison4Life;
import ru.prisonlife.PrisonAPI.PrisonAPI;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class Score extends DataBasePrison4Life {
public class Score {
private PreparedStatement state;
private ResultSet r_set;
private Prisoner me;
@@ -39,7 +39,7 @@ public class Score extends DataBasePrison4Life {
}
private void setInResUUID() throws SQLException {
state = connection.prepareStatement("SELECT * UUID FROM player_stats WHERE UUID = ?;");
state = PrisonAPI.CONN.prepareStatement("SELECT * UUID FROM player_stats WHERE UUID = ?;");
state.setString(1, me.getPlayer().getUniqueId().toString());
r_set = state.executeQuery("SELECT UUID FROM player_stats WHERE UUID = '" + me.getPlayer().getUniqueId() + "'");
}

View File

@@ -0,0 +1,150 @@
package ru.prisonlife.PrisonAPI.template;
import ru.prisonlife.PrisonAPI.PrisonAPI;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class Stats {
private PreparedStatement state;
private ResultSet r_set;
private Prisoner me;
Stats(Prisoner prisoner) { me = prisoner;}
public void setServerTime(int value) throws SQLException {
setInResUUID();
if(r_set.first())
state.execute("UPDATE player_stats SET G_TIME = " + value + " WHERE UUID = '" + me.getPlayer().getUniqueId() + "'");
disconnect();
}
public int getServerTime() throws SQLException {
setInResUUID();
if(r_set.first()) {
r_set = state.executeQuery("SELECT G_TIME FROM player_stats WHERE UUID = '" + me.getPlayer().getUniqueId() + "'");
if(r_set.first())
return r_set.getInt(1);
}
disconnect();
return NullPointerException.class.hashCode();
}
public void addServerTime(int value) throws SQLException {
setInResUUID();
if(r_set.first())
state.execute("UPDATE player_stats SET G_TIME = " + (getServerTime() + value) + " WHERE UUID = '" + me.getPlayer().getUniqueId() + "'");
disconnect();
}
public void setBlocks(int value) throws SQLException {
setInResUUID();
if(r_set.first())
state.execute("UPDATE player_stats SET B = " + value + " WHERE UUID = '" + me.getPlayer().getUniqueId() + "'");
disconnect();
}
public int getBlocks() throws SQLException {
setInResUUID();
if(r_set.first()) {
r_set = state.executeQuery("SELECT D_BLOCKS FROM player_stats WHERE UUID = '" + me.getPlayer().getUniqueId() + "'");
if(r_set.first())
return r_set.getInt(1);
}
disconnect();
return NullPointerException.class.hashCode();
}
public void addBlocks(int value) throws SQLException {
setInResUUID();
if(r_set.first())
state.execute("UPDATE player_stats SET D_BLOCKS = " + (getBlocks() + value) + " WHERE UUID = '" + me.getPlayer().getUniqueId() + "'");
disconnect();
}
public void setPlayers(int value) throws SQLException {
setInResUUID();
if(r_set.first())
state.execute("UPDATE player_stats SET K_PLAYERS = " + value + " WHERE UUID = '" + me.getPlayer().getUniqueId() + "'");
disconnect();
}
public int getPlayers() throws SQLException {
setInResUUID();
if(r_set.first()) {
r_set = state.executeQuery("SELECT K_PLAYERS FROM player_stats WHERE UUID = '" + me.getPlayer().getUniqueId() + "'");
if(r_set.first())
return r_set.getInt(1);
}
disconnect();
return NullPointerException.class.hashCode();
}
public void addPlayers(int value) throws SQLException {
setInResUUID();
if(r_set.first())
state.execute("UPDATE player_stats SET K_PLAYERS = " + (getPlayers() + value) + " WHERE UUID = '" + me.getPlayer().getUniqueId() + "'");
disconnect();
}
public void setMobs(int value) throws SQLException {
setInResUUID();
if(r_set.first())
state.execute("UPDATE player_stats SET K_MOBS = " + value + " WHERE UUID = '" + me.getPlayer().getUniqueId() + "'");
disconnect();
}
public int getMobs() throws SQLException {
setInResUUID();
if(r_set.first()) {
r_set = state.executeQuery("SELECT K_MOBS FROM player_stats WHERE UUID = '" + me.getPlayer().getUniqueId() + "'");
if(r_set.first())
return r_set.getInt(1);
}
disconnect();
return NullPointerException.class.hashCode();
}
public void addMobs(int value) throws SQLException {
setInResUUID();
if(r_set.first())
state.execute("UPDATE player_stats SET K_MOBS = " + (getMobs() + value) + " WHERE UUID = '" + me.getPlayer().getUniqueId() + "'");
disconnect();
}
public void setDeaths(int value) throws SQLException {
setInResUUID();
if(r_set.first())
state.execute("UPDATE player_stats SET DEATHS = " + value + " WHERE UUID = '" + me.getPlayer().getUniqueId() + "'");
disconnect();
}
public int getDeaths() throws SQLException {
setInResUUID();
if(r_set.first()) {
r_set = state.executeQuery("SELECT DEATHS FROM player_stats WHERE UUID = '" + me.getPlayer().getUniqueId() + "'");
if(r_set.first())
return r_set.getInt(1);
}
disconnect();
return NullPointerException.class.hashCode();
}
public void addDeaths(int value) throws SQLException {
setInResUUID();
if(r_set.first())
state.execute("UPDATE player_stats SET DEATHS = " + (getDeaths() + value) + " WHERE UUID = '" + me.getPlayer().getUniqueId() + "'");
disconnect();
}
private void setInResUUID() throws SQLException {
state = PrisonAPI.CONN.prepareStatement("SELECT * UUID FROM player_stats WHERE UUID = ?;");
state.setString(1, me.getPlayer().getUniqueId().toString());
r_set = state.executeQuery("SELECT UUID FROM player_stats WHERE UUID = '" + me.getPlayer().getUniqueId() + "'");
}
private void disconnect() throws SQLException {
r_set.close();
state.close();
}
}

View File

@@ -1,12 +1,12 @@
package ru.prisonlife.PrisonAPI.template;
import ru.prisonlife.PrisonAPI.connect.DataBasePrison4Life;
import ru.prisonlife.PrisonAPI.PrisonAPI;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class Wallet extends DataBasePrison4Life {
public class Wallet {
private PreparedStatement state;
private ResultSet r_set;
private Prisoner me;
@@ -48,7 +48,7 @@ public class Wallet extends DataBasePrison4Life {
}
private void setInResUUID() throws SQLException {
state = connection.prepareStatement("SELECT * UUID FROM player_stats WHERE UUID = ?;");
state = PrisonAPI.CONN.prepareStatement("SELECT * UUID FROM player_stats WHERE UUID = ?;");
state.setString(1, me.getPlayer().getUniqueId().toString());
r_set = state.executeQuery("SELECT UUID FROM player_stats WHERE UUID = '" + me.getPlayer().getUniqueId() + "'");
}