我正在研究一個bukkit插件,當玩家退出時我需要保存數據。我寫了一個可以正常工作的系統,但是它基於玩家的名字,如果玩家改變他們的名字就會丟失數據。所以我的問題是:每次玩家登錄時是否有任何財產(例如:身份證)女巫是否一樣?存儲玩家特定數據
存儲玩家特定數據
回答
你可以使用播放器的UUID
,或ü niversal ü SER ID entification。要獲得玩家的UUID
,您可以使用player.getUniqueId()
。您也可以使用OfflinePlayers
。
用於存儲當玩家通過自己的UUID
將退出的實例方法:
@EventHandler
public void playerQuit(PlayerQuitEvent e){
String uuid = e.getPlayer().getUniqueId().toString(); // get the user's UUID
long time = System.currentTimeMillis()/1000; // get the current number of seconds
plugin.getConfig().set(uuid, time); // set the UUID in the config to the current # of seconds
}
然後,讓他們最後出場的日子:
public Date getLastPlayedDate(String p){
String uuid = Bukkit.getOfflinePlayer(p).getUniqueId().toString(); // get the uuid from the OfflinePlayer
long time = plugin.getConfig().getLong(uuid); // get the time associated with the uuid
Date date = new Date(time * 1000); // convert the time to the date
return date; // return the date
}
注意:'UUID'代表__Universally Unique Identifier__。 – Unihedron
@Unihedron它可以代表許多事情。大多數情況下,使用Minecraft玩家時,它是* Universal User Identifier *,因爲它只與用戶打交道。如果我們正在做一些類似Minecraft的小怪,它將是一個*通用唯一標識符*,因爲我們沒有對用戶做任何事情。 – Jojodmo
__Universally唯一標識符___是由OSF創建和設置的術語。如果你能指出我的資源,清楚說明你剛剛說的話,那將是驚人的。否則,[這裏是維基百科條目](http://en.wikipedia.org/wiki/Universally_unique_identifier)。 – Unihedron
- 1. 在RLua儲存玩家數據
- 2. Android保存玩家數據
- 3. Android儲蓄玩家分數
- 4. Windows Phone存儲國家特定集合
- 5. 保存玩家庫存
- 6. 如何將玩家存儲在數組中?
- 7. SQL數據庫是否適合存儲許多玩家及其遊戲?
- 8. 基於瀏覽器的RPG:使用會話來存儲玩家數據
- 9. Android - 儲蓄玩家數據 - 3個不同選項的比較
- 10. 使用HTML本地存儲器存儲用戶特定數據
- 11. RPG任務 - 查詢玩家數據
- 12. websocket遊戲 - 堅持玩家數據
- 13. Android:隨機數決定玩家輪到
- 14. 的Yahtzee,需要指定玩家分數
- 15. 玩家類中需要玩家對象
- 16. Bukkit:如何存儲玩家和課程信息?
- 17. 我應該使用哪個列表來存儲玩家信息?
- 18. 表中的玩家數量?
- 19. 免費的方式來存儲谷歌玩家帳戶的自定義數據。 (Android,GPGS)
- 20. 尋找與其他玩家出場兩次玩過的玩家
- 21. 如何設計存儲用戶特定數據的數據庫
- 22. 在oracle數據庫中將數據存儲爲特定時間
- 23. 存儲來自SPListItem數據的特定數據?
- 24. 存儲特定結構化數據的最佳數據結構
- 25. 如何在MySQL數據庫中存儲特定(polls eg。)數據?
- 26. 玩家配置
- 27. PostgreSQL在玩家
- 28. 周圍玩家
- 29. 計算玩家
- 30. 在玩家
[第一款谷歌的結果(HTTPS: //www.google.com/search?q=java%20minecraft%20get%20player%20id):[從玩家名稱移至UUID。](https://forums.bukkit.org/threads/tut-moving-from -player-names-to-uuid.241626 /) – BackSlash