Advertisement
Guest User

Untitled

a guest
Mar 23rd, 2019
217
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.90 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.         System.out.println("CONSTRUCTOR!");
  39.         users.put(uuid, this);
  40.     }
  41.  
  42.     public Player getPlayer() {
  43.         return player;
  44.     }
  45.  
  46.     public UUID getUuid() {
  47.         return uuid;
  48.     }
  49.  
  50.     public String getName() {
  51.         return name;
  52.     }
  53.  
  54.     public long getCoins() {
  55.         return coins;
  56.     }
  57.  
  58.     public void setCoins(long coins) {
  59.         this.coins = coins;
  60.         Main.instance.getRedisAPI().set(getUuid().toString(), this);
  61.         Utils.sendData(getPlayer(), "KodiacUHC", "UPDATE", getUuid().toString());
  62.     }
  63.  
  64.     public long getKcoins() {
  65.         return kcoins;
  66.     }
  67.  
  68.     public void setKcoins(long kcoins) {
  69.         this.kcoins = kcoins;
  70.         Main.instance.getRedisAPI().set(getUuid().toString(), this);
  71.         Utils.sendData(getPlayer(), "KodiacUHC", "UPDATE", getUuid().toString());
  72.     }
  73.  
  74.     public Ranks getRank() {
  75.         return rank;
  76.     }
  77.  
  78.     public void setRank(Ranks rank) {
  79.         this.rank = rank;
  80.         Main.instance.getRedisAPI().set(getUuid().toString(), this);
  81.         Utils.sendData(getPlayer(), "KodiacUHC", "UPDATE", getUuid().toString());
  82.     }
  83.  
  84.     public boolean isMuted() {
  85.         return muted!=0L;
  86.     }
  87.  
  88.     public long getMuted() {
  89.         return muted;
  90.     }
  91.  
  92.     public String getMuteReason() {
  93.         return muteReason;
  94.     }
  95.  
  96.     public boolean isBanned() {
  97.         return banned!=0L;
  98.     }
  99.  
  100.     public long getBanned() {
  101.         return banned;
  102.     }
  103.  
  104.     public String getBanReason() {
  105.         return banReason;
  106.     }
  107.  
  108.     public static User get(UUID uuid) {
  109.         if (users.containsKey(uuid)) System.out.println("CONTAINED!");
  110.         return users.getOrDefault(uuid, fetchUser(uuid));
  111.     }
  112.  
  113.     private static User fetchUser(UUID uuid) {
  114.         System.out.println("FETCHUSER !");
  115.         return Main.instance.getRedisAPI().get(uuid.toString(), User.class);
  116.     }
  117. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement