mirror of
https://github.com/hyperdefined/ToolStats.git
synced 2026-01-21 13:55:59 +00:00
more hash work
This commit is contained in:
@@ -119,7 +119,7 @@ public final class ToolStats extends JavaPlugin {
|
|||||||
public final Logger logger = this.getLogger();
|
public final Logger logger = this.getLogger();
|
||||||
public final File configFile = new File(this.getDataFolder(), "config.yml");
|
public final File configFile = new File(this.getDataFolder(), "config.yml");
|
||||||
public FileConfiguration config;
|
public FileConfiguration config;
|
||||||
public final int CONFIG_VERSION = 5;
|
public final int CONFIG_VERSION = 6;
|
||||||
|
|
||||||
private BukkitAudiences adventure;
|
private BukkitAudiences adventure;
|
||||||
public MorePaperLib morePaperLib;
|
public MorePaperLib morePaperLib;
|
||||||
|
|||||||
@@ -104,9 +104,12 @@ public class CraftItem implements Listener {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
String hash = toolStats.hashMaker.makeHash(newItem.getType(), owner.getUniqueId(), timeCreated);
|
// only make the hash if it's enabled
|
||||||
|
if (toolStats.config.getBoolean("generate-hash-for-items")) {
|
||||||
|
String hash = toolStats.hashMaker.makeHash(newItem.getType(), owner.getUniqueId(), timeCreated);
|
||||||
|
container.set(toolStats.hash, PersistentDataType.STRING, hash);
|
||||||
|
}
|
||||||
|
|
||||||
container.set(toolStats.hash, PersistentDataType.STRING, hash);
|
|
||||||
container.set(toolStats.timeCreated, PersistentDataType.LONG, timeCreated);
|
container.set(toolStats.timeCreated, PersistentDataType.LONG, timeCreated);
|
||||||
container.set(toolStats.genericOwner, new UUIDDataType(), owner.getUniqueId());
|
container.set(toolStats.genericOwner, new UUIDDataType(), owner.getUniqueId());
|
||||||
container.set(toolStats.originType, PersistentDataType.INTEGER, 0);
|
container.set(toolStats.originType, PersistentDataType.INTEGER, 0);
|
||||||
|
|||||||
@@ -144,9 +144,12 @@ public class GenerateLoot implements Listener {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
String hash = toolStats.hashMaker.makeHash(newItem.getType(), owner.getUniqueId(), timeCreated);
|
// only make the hash if it's enabled
|
||||||
|
if (toolStats.config.getBoolean("generate-hash-for-items")) {
|
||||||
|
String hash = toolStats.hashMaker.makeHash(newItem.getType(), owner.getUniqueId(), timeCreated);
|
||||||
|
container.set(toolStats.hash, PersistentDataType.STRING, hash);
|
||||||
|
}
|
||||||
|
|
||||||
container.set(toolStats.hash, PersistentDataType.STRING, hash);
|
|
||||||
container.set(toolStats.timeCreated, PersistentDataType.LONG, timeCreated);
|
container.set(toolStats.timeCreated, PersistentDataType.LONG, timeCreated);
|
||||||
container.set(toolStats.genericOwner, new UUIDDataType(), owner.getUniqueId());
|
container.set(toolStats.genericOwner, new UUIDDataType(), owner.getUniqueId());
|
||||||
container.set(toolStats.originType, PersistentDataType.INTEGER, 2);
|
container.set(toolStats.originType, PersistentDataType.INTEGER, 2);
|
||||||
|
|||||||
@@ -64,23 +64,25 @@ public class InventoryOpen implements Listener {
|
|||||||
}
|
}
|
||||||
PersistentDataContainer container = itemMeta.getPersistentDataContainer();
|
PersistentDataContainer container = itemMeta.getPersistentDataContainer();
|
||||||
|
|
||||||
// generate a hash if the item doesn't have one
|
// generate a hash if the item doesn't have one (if it's enabled in the config
|
||||||
if (!container.has(toolStats.hash, PersistentDataType.STRING)) {
|
if (toolStats.config.getBoolean("generate-hash-for-items")) {
|
||||||
// make sure the item has an owner
|
if (!container.has(toolStats.hash, PersistentDataType.STRING)) {
|
||||||
if (!container.has(toolStats.genericOwner, new UUIDDataType())) {
|
// make sure the item has an owner
|
||||||
continue;
|
if (!container.has(toolStats.genericOwner, new UUIDDataType())) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
UUID owner = container.get(toolStats.genericOwner, new UUIDDataType());
|
||||||
|
if (owner == null) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
Long timestamp = container.get(toolStats.timeCreated, PersistentDataType.LONG);
|
||||||
|
if (timestamp == null) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
String hash = toolStats.hashMaker.makeHash(itemStack.getType(), owner, timestamp);
|
||||||
|
toolStats.logger.info(hash);
|
||||||
|
container.set(toolStats.hash, PersistentDataType.STRING, hash);
|
||||||
}
|
}
|
||||||
UUID owner = container.get(toolStats.genericOwner, new UUIDDataType());
|
|
||||||
if (owner == null) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
Long timestamp = container.get(toolStats.timeCreated, PersistentDataType.LONG);
|
|
||||||
if (timestamp == null) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
String hash = toolStats.hashMaker.makeHash(itemStack.getType(), owner, timestamp);
|
|
||||||
toolStats.logger.info(hash);
|
|
||||||
container.set(toolStats.hash, PersistentDataType.STRING, hash);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// add origin tag
|
// add origin tag
|
||||||
|
|||||||
@@ -89,6 +89,13 @@ public class PickupItem implements Listener {
|
|||||||
long timeCreated = System.currentTimeMillis();
|
long timeCreated = System.currentTimeMillis();
|
||||||
Date finalDate = new Date(timeCreated);
|
Date finalDate = new Date(timeCreated);
|
||||||
PersistentDataContainer container = meta.getPersistentDataContainer();
|
PersistentDataContainer container = meta.getPersistentDataContainer();
|
||||||
|
|
||||||
|
// only make the hash if it's enabled
|
||||||
|
if (toolStats.config.getBoolean("generate-hash-for-items")) {
|
||||||
|
String hash = toolStats.hashMaker.makeHash(finalItem.getType(), owner.getUniqueId(), timeCreated);
|
||||||
|
container.set(toolStats.hash, PersistentDataType.STRING, hash);
|
||||||
|
}
|
||||||
|
|
||||||
container.set(toolStats.timeCreated, PersistentDataType.LONG, timeCreated);
|
container.set(toolStats.timeCreated, PersistentDataType.LONG, timeCreated);
|
||||||
container.set(toolStats.genericOwner, new UUIDDataType(), owner.getUniqueId());
|
container.set(toolStats.genericOwner, new UUIDDataType(), owner.getUniqueId());
|
||||||
container.set(toolStats.originType, PersistentDataType.INTEGER, 4);
|
container.set(toolStats.originType, PersistentDataType.INTEGER, 4);
|
||||||
|
|||||||
@@ -106,9 +106,12 @@ public class VillagerTrade implements Listener {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
String hash = toolStats.hashMaker.makeHash(newItem.getType(), owner.getUniqueId(), timeCreated);
|
// only make the hash if it's enabled
|
||||||
|
if (toolStats.config.getBoolean("generate-hash-for-items")) {
|
||||||
|
String hash = toolStats.hashMaker.makeHash(newItem.getType(), owner.getUniqueId(), timeCreated);
|
||||||
|
container.set(toolStats.hash, PersistentDataType.STRING, hash);
|
||||||
|
}
|
||||||
|
|
||||||
container.set(toolStats.hash, PersistentDataType.STRING, hash);
|
|
||||||
container.set(toolStats.timeCreated, PersistentDataType.LONG, timeCreated);
|
container.set(toolStats.timeCreated, PersistentDataType.LONG, timeCreated);
|
||||||
container.set(toolStats.genericOwner, new UUIDDataType(), owner.getUniqueId());
|
container.set(toolStats.genericOwner, new UUIDDataType(), owner.getUniqueId());
|
||||||
container.set(toolStats.originType, PersistentDataType.INTEGER, 3);
|
container.set(toolStats.originType, PersistentDataType.INTEGER, 3);
|
||||||
|
|||||||
@@ -114,4 +114,9 @@ number-formats:
|
|||||||
comma-format: "#,###"
|
comma-format: "#,###"
|
||||||
decimal-format: "#,###.00"
|
decimal-format: "#,###.00"
|
||||||
|
|
||||||
config-version: 5
|
# When any tool is created, it will generate a hash for the item.
|
||||||
|
# This hash is not on the item lore, only stored in the NBT data.
|
||||||
|
# This has no use currently, but can be used for future features for dupe detection.
|
||||||
|
generate-hash-for-items: true
|
||||||
|
|
||||||
|
config-version: 6
|
||||||
Reference in New Issue
Block a user