public static IgniteActivity GetActivity(IgniteEventType type) { IgniteActivity activity = null; switch (type) { case IgniteEventType.leaderBoard: //activity = new IgniteLeaderBoard(); break; case IgniteEventType.mission: activity = new IgniteMission(); break; case IgniteEventType.quest: //activity = new IgniteQuest(); break; case IgniteEventType.offer: //activity = new IgniteOffer(); break; default: break; } return(activity); }
public void Create( System.Collections.Generic.Dictionary<string,object> eventDict ) { Debug.Log( "IgniteEvent:Create"); if( eventDict.ContainsKey( "id" ) ) { this.Id = Convert.ToString( eventDict["id"] ); } if( eventDict.ContainsKey( "startTime" ) ) { var epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc); long t = Convert.ToInt64 (eventDict["startTime"]); this.StartTime = epoch.AddSeconds(t); } if( eventDict.ContainsKey( "authorized" ) ) { this.Authorized = Convert.ToBoolean( eventDict["authorized"] ); } if( eventDict.ContainsKey( "eventId" ) ) { this.EventId = Convert.ToString( eventDict["eventId"] ); } if( eventDict.ContainsKey( "state" ) ) { this.State = Convert.ToString( eventDict["state"] ); } if( eventDict.ContainsKey( "score" ) ) { this.Score = (float)Convert.ToDouble( eventDict["score"] ); } if( eventDict.ContainsKey( "type" ) ) { this.Type = (IgniteEventType) Enum.Parse( typeof(IgniteEventType) , Convert.ToString( eventDict["type"] ) ); } if( eventDict.ContainsKey( "endTime" ) ) { var epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc); long t = Convert.ToInt64 (eventDict["endTime"]); this.EndTime = epoch.AddSeconds(t); } if( eventDict.ContainsKey( "metadata" ) ) { System.Collections.Generic.Dictionary<string,object> eventMetadataDict = eventDict["metadata"] as System.Collections.Generic.Dictionary<string,object>; EventMetadata eventMetadata = new EventMetadata(); if( eventMetadataDict.ContainsKey( "imageUrl" ) ) { eventMetadata.imageUrl = Convert.ToString( eventMetadataDict["imageUrl"] ); } if( eventMetadataDict.ContainsKey( "name" ) ) { eventMetadata.Name = Convert.ToString( eventMetadataDict["name"] ); } if( eventMetadataDict.ContainsKey( "gamedata" ) ) { eventMetadata.GameData = Convert.ToString( eventMetadataDict["gamedata"] ); } this.Metadata = eventMetadata; } switch( this.Type ) { case IgniteEventType.leaderBoard: FuelSDKGroovePlanetIntegration.Instance.GetLeaderBoard( this.Id ); activity = new IgniteLeaderBoard(); break; case IgniteEventType.mission: FuelSDKGroovePlanetIntegration.Instance.GetMission( this.Id ); activity = new IgniteMission(); break; case IgniteEventType.quest: FuelSDKGroovePlanetIntegration.Instance.GetQuest( this.Id ); activity = new IgniteQuest(); break; default: break; } }