3333 */
3434public class BungieUser extends ContentFramework {
3535
36- private String bungieMembershipID , displayName , supplementalDisplayName , discriminator ;
36+ private String bungieMembershipID , displayName , globalDisplayName , supplementalDisplayName , discriminator ;
3737 private Date lastPlayed ;
3838 private JsonObject je ; // The JsonObject of the profile used to get most information
3939 private HttpUtils hu = new HttpUtils ();
@@ -92,6 +92,18 @@ public BungieUser(String bungieMembershipID, String displayName, int crossSaveOv
9292 this .isPublic = isPublic ;
9393 }
9494
95+ public BungieUser (String bungieMembershipID , String displayName , String globalDisplayName , int crossSaveOverride , int membershipType , boolean isPublic ) {
96+ super ("https://www.bungie.net/Platform/Destiny2/-1/Profile/" + bungieMembershipID + "/LinkedProfiles/?components=200" , source -> {
97+ return source .getAsJsonObject ("Response" );
98+ });
99+ this .bungieMembershipID = bungieMembershipID ;
100+ this .displayName = displayName ;
101+ this .globalDisplayName = globalDisplayName ;
102+ this .crossSaveOverride = crossSaveOverride ;
103+ this .membershipType = membershipType ;
104+ this .isPublic = isPublic ;
105+ }
106+
95107 /**
96108 * Gets the bungie membership ID of the user
97109 */
@@ -121,6 +133,21 @@ public String getDisplayName() {
121133 return displayName ;
122134 }
123135
136+ public String getGlobalDisplayName () {
137+ getJE ();
138+
139+ if (globalDisplayName == null ) {
140+
141+ }
142+
143+ return globalDisplayName ;
144+ }
145+
146+ /**
147+ * Returns the combined displayname and user discriminator as used in friend requests and user searches
148+ *
149+ * E.g. dec4234#9904
150+ */
124151 public String getSupplementalDisplayName () {
125152 if (supplementalDisplayName == null ) {
126153 supplementalDisplayName = getJO ().getAsJsonObject ("bnetMembership" ).get ("supplementalDisplayName" ).getAsString ();
@@ -129,6 +156,11 @@ public String getSupplementalDisplayName() {
129156 return supplementalDisplayName ;
130157 }
131158
159+ /**
160+ * Get the discriminator of a user's name
161+ *
162+ * E.g. "9904" of dec4234#9904
163+ */
132164 public String getDiscriminator () {
133165 if (discriminator == null ) {
134166 discriminator = getSupplementalDisplayName ().split ("#" )[1 ];
0 commit comments