1
AccountArray
poopki edited this page 2 years ago
AccountArray
서버 내 모든 유저 정보 접근을 위한 instance들을 Map으로 관리하는 class
m_UserInfoArray
private static Map<UUID, UserInfo> m_UserInfoArray = new HashMap<UUID, UserInfo>();
UUID(UUID) | UserInfo(Instance) |
---|---|
0x000 | 0x0000 |
- Input: UUID
- Output: Instance pointer
getUserName
public String getUserName(UUID uuid){ // 유저 이름 return
return m_UserInfoArray.get(uuid).getUserName();
}
- Input: uuid
- Output: 유저 닉네임
UserInfoArray로부터 return받은 UserInfo Instance의 getUserName에 접근하여 닉네임을 return
checkNewUser
public boolean checkNewUser(UUID uuid){ // 유저 목록 check
return m_UserInfoArray.containsKey(uuid);
}
- Input: uuid
- Output: boolean
Map에 uuid key가 존재하는지 containsKey을 통해 return
getKeySet
public Set<UUID> getKeySet(){ // 유저 목록 return
return m_UserInfoArray.keySet();
}
- Input: None
- Output: Key set
getUserGroupUUID
public UUID getUserGroupUUID(UUID PlayerUUID, String GroupType){
return m_UserInfoArray.get(PlayerUUID).GetGroupUUID(GroupType);
}
- Input: PlayerUUID, GroupType
- Output: Group UUID
UserInfoArray로부터 return받은 UserInfo Instance의 GetGroupUUID에 접근하여 유저의 Group UUID를 return받음
Group Type
- Nation
- Squad
- Farm
- Party
setUserGroupUUID
public void setUserGroupUUID(String GroupType, UUID PlayerUUID, UUID GroupUUID){
m_UserInfoArray.get(PlayerUUID).SetGroupUUID(GroupType,GroupUUID);
}
- Input: GroupType, PlayerUUID, GroupUUID
- Output: None 플레이어를 특정 그룹(UUID)에 가입시키고, 이를 UserInfo Instance에 기록
putUserInfo
public void putUserInfo(UUID uuid,String Name, UUID Nation, UUID Squad, UUID Farm, UUID Party) { // UserInfoArray entry 입력
m_UserInfoArray.put(uuid, new UserInfo(uuid,Name, Nation, Squad, Farm, Party));
}
- Input: (UUID uuid,String Name, UUID Nation, UUID Squad, UUID Farm, UUID Party)
- Output: None 기록되지 않은 유저를 새로 put
- Input:
- Output:
- Input:
- Output: