Overlay page: "+a+"
");$("body").append('')}}}}}}}}}}}}}}}else{$("body").append("No overlay data!
");$("body").append('')}}hostinterface.setReadyForMessages();console.log("overlaymessageinterface loaded."); -------------------------------------------------------------------------------- /android-amazongc/res/raw/amazon_gc_prototype/js/overlayresizer.js: -------------------------------------------------------------------------------- 1 | /*! Copyright 2013 Amazon Digital Services, Inc. All rights reserved. */ 2 | OverlayResizer=(function(){var a=function(){var b=this;this.resizeAppend=function(e,g){console.log("Resize append called.");e.empty();e.css("visibility","hidden");var f=e.width();var c=e.height()*0.8;var h=f*0.1;var d=g.find(".gcalert");g.find("#scrollable-content").css({"max-height":(c-150)+"px"});e.append(g);d.animate({width:(f-h)+"px","max-width":"580px","max-height":c+"px"},0,function(){d.css({top:(e.height()-d.height()-32)/2+"px",})});if($("#scrollable-content").length>0){new iScroll("scrollable-content")}e.css("visibility","visible")}};return new a()}()); -------------------------------------------------------------------------------- /android-amazongc/res/raw/amazon_gc_prototype/js/profileofflinecache.js: -------------------------------------------------------------------------------- 1 | /*! Copyright 2013 Amazon Digital Services, Inc. All rights reserved. */ 2 | ProfileOfflineCache=(function(){var a=function(){var b="ProfileService.getAvatars";this["getCachedProfile"]=function(e){console.log("ProfileOfflineCache: getCachedProfile");var c=$.Deferred();var d={};d[constants.NativeCallKeys.PRIMARY_KEY]=e;var f=NativeTransport.callNative({nativeCall:constants.NativeCallTypes.GET_CACHE_ITEM,target:constants.OfflineCacheTypes.PLAYER_PROFILE_CACHE,args:d});f.done(function(h,g){console.log("ProfileOfflineCache: getCachedProfile complete: "+JSON.stringify(h));c.resolve(h,g)});return c.promise()};this["cacheProfile"]=function(f,g){console.log("ProfileOfflineCache: cacheProfile");var c=$.Deferred();var e={};var d={};d[constants.NativeCallKeys.PRIMARY_KEY]=f,d[constants.NativeCallKeys.SECONDARY_KEY]=f,d[constants.NativeCallKeys.JSON_DATA]=g,e[constants.NativeCallKeys.CACHE_REQUEST]=d;var h=NativeTransport.callNative({nativeCall:constants.NativeCallTypes.SET_CACHE_ITEM,target:constants.OfflineCacheTypes.PLAYER_PROFILE_CACHE,args:e});h.done(function(j,i){console.log("ProfileOfflineCache: cacheProfile complete");c.resolve(j,i)});return c.promise()};this["getCachedAvatars"]=function(){console.log("ProfileOfflineCache: getCachedAvatars");var c=$.Deferred();var d={};d[constants.NativeCallKeys.PRIMARY_KEY]=b;var e=NativeTransport.callNative({nativeCall:constants.NativeCallTypes.GET_CACHE_ITEM,target:constants.OfflineCacheTypes.PLAYER_PROFILE_CACHE,args:d});e.done(function(g,f){var h=[];if(g&&g.avatars){h=g.avatars}console.log("ProfileOfflineCache: getCachedAvatars complete: "+JSON.stringify(h));c.resolve(h,f)});return c.promise()};this["cacheAvatars"]=function(f){console.log("ProfileOfflineCache: cacheAvatars");var c=$.Deferred();var e={};var d={};d[constants.NativeCallKeys.PRIMARY_KEY]=b,d[constants.NativeCallKeys.SECONDARY_KEY]=b,d[constants.NativeCallKeys.JSON_DATA]={avatars:f},e[constants.NativeCallKeys.CACHE_REQUEST]=d;var g=NativeTransport.callNative({nativeCall:constants.NativeCallTypes.SET_CACHE_ITEM,target:constants.OfflineCacheTypes.PLAYER_PROFILE_CACHE,args:e});g.done(function(i,h){console.log("ProfileOfflineCache: cacheAvatars complete");c.resolve(i,h)});return c.promise()};this["clear"]=function(){console.log("ProfileOfflineCache: clear");var c=$.Deferred();var d={};var e=NativeTransport.callNative({nativeCall:constants.NativeCallTypes.CLEAR_CACHE,target:constants.OfflineCacheTypes.PLAYER_PROFILE_CACHE,args:d});e.done(function(g,f){console.log("ProfileOfflineCache: clear complete: "+JSON.stringify(g));c.resolve(g,f)});return c.promise()}};return a}());console.log("ProfileOfflineCache loaded."); -------------------------------------------------------------------------------- /android-amazongc/res/raw/amazon_gc_prototype/js/profileserviceproxy.js: -------------------------------------------------------------------------------- 1 | /*! Copyright 2013 Amazon Digital Services, Inc. All rights reserved. */ 2 | ProfileServiceProxy=(function(){var a=function(){var b="https://cortana-gateway.amazon.com/cortana/gateway/profile/";this["getProfile"]=function(){return NativeTransport.serviceCall({target:"ProfilesService",method:"getDefaultProfile",httpMethod:"GET",endPoint:b})};this["getTOSAccepted"]=function(){var c=$.Deferred();var d=NativeTransport.serviceCall({target:"ProfilesService",method:"getDefaultProfile",httpMethod:"GET",endPoint:b,allowCallInGuestMode:true});d.always(function(f,e){if(f&&f.termsOfServiceAccepted!=null){c.resolve(f.termsOfServiceAccepted)}else{c.resolve(null)}});return c.promise()};this["acceptTOS"]=function(){return NativeTransport.serviceCall({target:"ProfilesService",method:"update",httpMethod:"POST",endPoint:b,allowCallInGuestMode:true,args:{termsofservice:true}})};this["getCORSupported"]=function(){return NativeTransport.serviceCall({target:"ProfilesService",method:"isplayercountrysupported",httpMethod:"GET",endPoint:b,allowCallInGuestMode:true})};this["setCOR"]=function(d){var c={cor:d};return NativeTransport.serviceCall({target:"ProfilesService",method:"setcountryofresidence",httpMethod:"POST",endPoint:b,allowCallInGuestMode:true,args:c})};this["updateProfile"]=function(d){var c={alias:d.alias,avatarLocation:d.avatarId,termsofservice:d.termsOfServiceAccepted};return NativeTransport.serviceCall({target:"ProfilesService",method:"update",httpMethod:"POST",endPoint:b,args:c})};this["updateProfileHidden"]=function(d){var c={hidden:d};return NativeTransport.serviceCall({target:"ProfilesService",method:"hideprofile",httpMethod:"POST",endPoint:b,args:c})};this["getAvatars"]=function(){var c=$.Deferred();var d=NativeTransport.serviceCall({target:"ProfilesService",method:"getavatars",httpMethod:"GET",endPoint:b});d.always(function(j,f){var h=[];if(j&&j.avatars&&j.avatarsMap){var l={};for(var k in j.avatarsMap){l[j.avatarsMap[k]]=k}for(var g=0;g
8 | * Created by Benjamin Schulte on 30.08.2017.
9 | */
10 |
11 | public class GpgsAchievement implements IAchievement {
12 | protected String achievementId;
13 | protected String title;
14 | protected String description;
15 | protected IGameServiceIdMapper
8 | * Created by Benjamin Schulte on 31.08.2017.
9 | */
10 | public class GpgsLeaderBoardEntry implements ILeaderBoardEntry {
11 | protected String formattedValue;
12 | protected long sortValue;
13 | protected String scoreTag;
14 | protected String userDisplayName;
15 | protected String userId;
16 | protected String scoreRank;
17 | protected boolean currentPlayer;
18 |
19 | @Override
20 | public String getFormattedValue() {
21 | return formattedValue;
22 | }
23 |
24 | @Override
25 | public long getSortValue() {
26 | return sortValue;
27 | }
28 |
29 | @Override
30 | public String getScoreTag() {
31 | return scoreTag;
32 | }
33 |
34 | @Override
35 | public String getUserDisplayName() {
36 | return userDisplayName;
37 | }
38 |
39 | @Override
40 | public String getUserId() {
41 | // do not return null as a user with a null id is a guest. But there are no guest users in GPGS
42 | if (userId != null)
43 | return userId;
44 | else
45 | return "";
46 | }
47 |
48 | @Override
49 | public String getScoreRank() {
50 | return scoreRank;
51 | }
52 |
53 | @Override
54 | public String getAvatarUrl() {
55 | return null;
56 | }
57 |
58 | @Override
59 | public boolean isCurrentPlayer() {
60 | return currentPlayer;
61 | }
62 | }
63 |
--------------------------------------------------------------------------------
/android-huawei/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 | * Created by Benjamin Schulte on 13.08.2017.
11 | */
12 |
13 | public class GjScoreboardEntry implements ILeaderBoardEntry {
14 | protected String score;
15 | protected long sort;
16 | protected String tag;
17 | protected String displayName;
18 | protected String rank;
19 | protected String userId;
20 | protected String stored;
21 | protected boolean currentPlayer;
22 |
23 | protected static GjScoreboardEntry fromJson(JsonValue json, int rank, String currentPlayer) {
24 | GjScoreboardEntry gje = new GjScoreboardEntry();
25 | gje.rank = String.valueOf(rank);
26 | gje.score = json.getString("score");
27 | gje.sort = json.getLong("sort");
28 | gje.tag = json.getString("extra_data");
29 | String userId = json.getString("user_id");
30 |
31 | if (userId != null && !userId.isEmpty()) {
32 | gje.userId = userId;
33 | gje.displayName = json.getString("user");
34 | gje.currentPlayer = (currentPlayer != null && currentPlayer.equalsIgnoreCase(gje.displayName));
35 | } else
36 | gje.displayName = json.getString("guest");
37 |
38 | gje.stored = json.getString("stored");
39 |
40 | return gje;
41 | }
42 |
43 | @Override
44 | public String getFormattedValue() {
45 | return score;
46 | }
47 |
48 | @Override
49 | public String getScoreRank() {
50 | return rank;
51 | }
52 |
53 | @Override
54 | public String getAvatarUrl() {
55 | return null;
56 | }
57 |
58 | @Override
59 | public boolean isCurrentPlayer() {
60 | return currentPlayer;
61 | }
62 |
63 | @Override
64 | public long getSortValue() {
65 | return sort;
66 | }
67 |
68 | @Override
69 | public String getScoreTag() {
70 | return tag;
71 | }
72 |
73 | @Override
74 | public String getUserDisplayName() {
75 | return displayName;
76 | }
77 |
78 | @Override
79 | public String getUserId() {
80 | return userId;
81 | }
82 | }
83 |
84 |
--------------------------------------------------------------------------------
/core-gamejolt/src/de/golfgl/gdxgamesvcs/GjTrophy.java:
--------------------------------------------------------------------------------
1 | package de.golfgl.gdxgamesvcs;
2 |
3 | import com.badlogic.gdx.utils.JsonValue;
4 |
5 | import de.golfgl.gdxgamesvcs.achievement.IAchievement;
6 |
7 | /**
8 | * GameJolt Trophy
9 | *
10 | * Created by Benjamin Schulte on 16.08.2017.
11 | */
12 |
13 | public class GjTrophy implements IAchievement {
14 | protected String trophyId;
15 | protected String trophyTitle;
16 | protected String trophyDesc;
17 | protected String iconUrl;
18 | protected String trophyAchieved;
19 | protected String difficulty;
20 |
21 | protected IGameServiceIdMapper