Advertisement
Guest User

Untitled

a guest
Mar 23rd, 2019
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.77 KB | None | 0 0
  1. package fr.opperdev.apispigot.tools;
  2.  
  3. import com.google.common.collect.Maps;
  4. import fr.opperdev.apispigot.Main;
  5. import org.bukkit.Bukkit;
  6. import org.bukkit.entity.Player;
  7.  
  8. import java.util.Map;
  9. import java.util.UUID;
  10.  
  11. /**
  12.  * Created by user on 22/03/2019.
  13.  */
  14. public class User {
  15.  
  16.     public static Map<UUID, User> users = Maps.newHashMap();
  17.  
  18.     private transient Player player;
  19.  
  20.     private UUID uuid;
  21.     private String name;
  22.     private long coins, kcoins;
  23.     private Ranks rank;
  24.     private long muted, banned;
  25.     private String muteReason, banReason;
  26.  
  27.     public User(UUID uuid, String name, long coins, long kcoins,
  28.                  Ranks rank, long muted, long banned, String banReason, String muteReason) {
  29.         this.uuid = uuid;
  30.         this.name = name;
  31.         this.coins = coins;this.kcoins = kcoins;
  32.         this.rank = rank;
  33.         this.muted = muted;this.banned = banned;
  34.         this.banReason = banReason;this.muteReason = muteReason;
  35.  
  36.         this.player = Bukkit.getPlayer(uuid);
  37.  
  38.         users.putIfAbsent(uuid, this);
  39.     }
  40.  
  41.     public Player getPlayer() {
  42.         return player;
  43.     }
  44.  
  45.     public UUID getUuid() {
  46.         return uuid;
  47.     }
  48.  
  49.     public String getName() {
  50.         return name;
  51.     }
  52.  
  53.     public long getCoins() {
  54.         return coins;
  55.     }
  56.  
  57.     public void setCoins(long coins) {
  58.         this.coins = coins;
  59.         Main.instance.getRedisAPI().set(getUuid().toString(), this);
  60.         Utils.sendData(getPlayer(), "KodiacUHC", "UPDATE", getUuid().toString());
  61.     }
  62.  
  63.     public long getKcoins() {
  64.         return kcoins;
  65.     }
  66.  
  67.     public void setKcoins(long kcoins) {
  68.         this.kcoins = kcoins;
  69.         Main.instance.getRedisAPI().set(getUuid().toString(), this);
  70.         Utils.sendData(getPlayer(), "KodiacUHC", "UPDATE", getUuid().toString());
  71.     }
  72.  
  73.     public Ranks getRank() {
  74.         return rank;
  75.     }
  76.  
  77.     public void setRank(Ranks rank) {
  78.         this.rank = rank;
  79.         Main.instance.getRedisAPI().set(getUuid().toString(), this);
  80.         Utils.sendData(getPlayer(), "KodiacUHC", "UPDATE", getUuid().toString());
  81.     }
  82.  
  83.     public boolean isMuted() {
  84.         return muted!=0L;
  85.     }
  86.  
  87.     public long getMuted() {
  88.         return muted;
  89.     }
  90.  
  91.     public String getMuteReason() {
  92.         return muteReason;
  93.     }
  94.  
  95.     public boolean isBanned() {
  96.         return banned!=0L;
  97.     }
  98.  
  99.     public long getBanned() {
  100.         return banned;
  101.     }
  102.  
  103.     public String getBanReason() {
  104.         return banReason;
  105.     }
  106.  
  107.     public static User get(UUID uuid) {
  108.         return users.containsKey(uuid) ? users.get(uuid) : fetchUser(uuid);
  109.     }
  110.  
  111.     private static User fetchUser(UUID uuid) {
  112.         return Main.instance.getRedisAPI().get(uuid.toString(), User.class);
  113.     }
  114. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement