public GameCenterChallenge(Dictionary <string, object> dict) { if (dict.ContainsKey("issuingPlayerID")) { issuingPlayerID = dict["issuingPlayerID"] as string; } if (dict.ContainsKey("receivingPlayerID")) { receivingPlayerID = dict["receivingPlayerID"] as string; } if (dict.ContainsKey("state")) { var intState = int.Parse(dict["state"].ToString()); state = (GameCenterChallengeState)intState; } // grab and convert the dates if (dict.ContainsKey("issueDate")) { var timeSinceEpoch = double.Parse(dict["issueDate"].ToString()); var intermediate = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc); issueDate = intermediate.AddSeconds(timeSinceEpoch); } if (dict.ContainsKey("completionDate")) { var timeSinceEpoch = double.Parse(dict["completionDate"].ToString()); var intermediate = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc); completionDate = intermediate.AddSeconds(timeSinceEpoch); } if (dict.ContainsKey("message")) { message = dict["message"] as string; } // do we have a score or an achievement? if (dict.ContainsKey("score")) { score = Json.decodeObject <GameCenterScore>(dict["score"]); } if (dict.ContainsKey("achievement")) { achievement = new GameCenterAchievement(dict["achievement"] as Dictionary <string, object>); } if (dict.ContainsKey("hash")) { hash = dict["hash"].ToString(); } }
public GameCenterChallenge( Dictionary<string,object> dict ) { if( dict.ContainsKey( "issuingPlayerID" ) ) issuingPlayerID = dict["issuingPlayerID"] as string; if( dict.ContainsKey( "receivingPlayerID" ) ) receivingPlayerID = dict["receivingPlayerID"] as string; if( dict.ContainsKey( "state" ) ) { var intState = int.Parse( dict["state"].ToString() ); state = (GameCenterChallengeState)intState; } // grab and convert the dates if( dict.ContainsKey( "issueDate" ) ) { var timeSinceEpoch = double.Parse( dict["issueDate"].ToString() ); var intermediate = new DateTime( 1970, 1, 1, 0, 0, 0, DateTimeKind.Utc ); issueDate = intermediate.AddSeconds( timeSinceEpoch ); } if( dict.ContainsKey( "completionDate" ) ) { var timeSinceEpoch = double.Parse( dict["completionDate"].ToString() ); var intermediate = new DateTime( 1970, 1, 1, 0, 0, 0, DateTimeKind.Utc ); completionDate = intermediate.AddSeconds( timeSinceEpoch ); } if( dict.ContainsKey( "message" ) ) message = dict["message"] as string; // do we have a score or an achievement? if( dict.ContainsKey( "score" ) ) score = Json.decodeObject<GameCenterScore>( dict["score"] ); if( dict.ContainsKey( "achievement" ) ) achievement = new GameCenterAchievement( dict["achievement"] as Dictionary<string,object> ); if( dict.ContainsKey( "hash" ) ) hash = dict["hash"].ToString(); }