Пример #1
0
        public DataStore(IWebAPI webapi, ILogger logger)
        {
            //This should convert from the response type to key-value pairs

            properties_      = new DataModel <DomainObjects.PlayerAttribute, Roar.WebObjects.User.ViewResponse> ("properties", new UserViewGetter(webapi), new UserViewToProperty(), logger);
            inventory_       = new DataModel <DomainObjects.InventoryItem, Roar.WebObjects.Items.ListResponse> ("inventory", new ItemsListGetter(webapi), new ItemsListToItem(), logger);
            shop_            = new DataModel <DomainObjects.ShopEntry, WebObjects.Shop.ListResponse>("shop", new ShopListGetter(webapi), new ShopListToShopEntry(), logger);
            actions_         = new DataModel <DomainObjects.Task, WebObjects.Tasks.ListResponse> ("tasks", new TasksListGetter(webapi), new TaskListToTask(), logger);
            facebookShop_    = new DataModel <DomainObjects.FacebookShopEntry, WebObjects.Facebook.ShopListResponse>("facebook", new FacebookShopListGetter(webapi), new FacebookShopListToFacebookShop(), logger);
            giftsAcceptable_ = new DataModel <DomainObjects.MailPackage, WebObjects.Mail.WhatCanIAcceptResponse>("giftsAcceptable", new GiftsAcceptableGetter(webapi), new MailAcceptResponseToAcceptableMails(), logger);
            giftsSendable_   = new DataModel <DomainObjects.Mailable, WebObjects.Mail.WhatCanISendResponse>("giftsSendable", new GiftsSendableGetter(webapi), new MailSendResponseToMailable(), logger);
            achievements_    = new DataModel <Foo, Foo> ("achievements", new FooGetter(webapi), new FooToFoo(), logger);
            ranking_         = new DataModel <DomainObjects.LeaderboardData, WebObjects.Leaderboards.ViewResponse> ("ranking", new LeaderboardViewGetter(webapi), new LeaderboardViewToLeaderboardData(), logger);
            friends_         = new DataModel <DomainObjects.Friend, WebObjects.Friends.ListResponse> ("friends", new FriendsListGetter(webapi), new FriendsListToFriend(), logger);
            cache_           = new ItemCache("cache", new ItemsViewGetter(webapi), new ItemsViewToItemPrototype(), logger);
            appStore_        = new DataModel <Foo, Foo> ("appstore", new FooGetter(webapi), new FooToFoo(), logger);
        }
Пример #2
0
    /**
     * Called by unity when everything is ready to go.
     * We use this rather than the constructor as its what unity suggests.
     */
    public void Awake()
    {
        config = new Roar.implementation.Config();

        // Apply public settings
        string key = gameKey.ToLower();

        //key = key.Replace("_", "");
        Config.Game = key;

        // Apply changes to API host to Config setting
        string roarUrl = roarAPIUrl.ToLower();

        Config.RoarAPIUrl = roarUrl;

        Config.IsDebug = debug;

        RequestSender api = new RequestSender(config, this, logger);

        webAPI       = new global::WebAPI(api);
        datastore    = new Roar.implementation.DataStore(webAPI, logger);
        friends      = new Roar.implementation.Components.Friends(webAPI.friends, datastore, logger);
        user         = new Roar.implementation.Components.User(webAPI.user, datastore, logger);
        properties   = new Roar.implementation.Components.Properties(datastore);
        leaderboards = new Roar.implementation.Components.Leaderboards(webAPI, datastore, logger);
        inventory    = new Roar.implementation.Components.Inventory(webAPI.items, datastore, logger);
        data         = new Roar.implementation.Components.Data(webAPI.user, datastore, logger);
        shop         = new Roar.implementation.Components.Shop(webAPI.shop, datastore, logger);
        tasks        = new Roar.implementation.Components.Tasks(webAPI.tasks, datastore);
        gifts        = new Roar.implementation.Components.Gifts(webAPI.mail, datastore, logger);
        facebook     = new Roar.implementation.Components.Facebook(webAPI.facebook, datastore, logger);

        if (!Application.isEditor)
        {
            appstore = new Roar.implementation.Components.InAppPurchase(webAPI.appstore, "Roar", logger, appstoreSandbox);
        }

        urbanAirship = new Roar.implementation.Adapters.UrbanAirship(webAPI);

        DontDestroyOnLoad(gameObject);
    }
Пример #3
0
 public FooGetter(IWebAPI api)
 {
     this.api = api;
 }
Пример #4
0
 public FriendsListGetter(IWebAPI api) : base(api.friends.list)
 {
 }
Пример #5
0
 public GiftsAcceptableGetter(IWebAPI api) : base(api.mail.what_can_i_accept)
 {
 }
Пример #6
0
 public GiftsSendableGetter(IWebAPI api) : base(api.mail.what_can_i_send)
 {
 }
Пример #7
0
 public TasksListGetter(IWebAPI api) : base(api.tasks.list)
 {
 }
Пример #8
0
 public FacebookShopListGetter(IWebAPI api) : base(api.facebook.shop_list)
 {
 }
Пример #9
0
    /**
     * Called by unity when everything is ready to go.
     * We use this rather than the constructor as its what unity suggests.
     */
    public void Awake()
    {
        config = new Roar.implementation.Config();

        // Apply public settings
        string key = gameKey.ToLower();
               //key = key.Replace("_", "");
        Config.Game = key;
        Config.IsDebug = debug;

        switch (xmlParser)
        {
        case XMLType.System:
            IXMLNodeFactory.instance = new SystemXMLNodeFactory();
            break;
        case XMLType.Lightweight:
            IXMLNodeFactory.instance = new XMLNodeFactory();
            break;
        }

        RequestSender api = new RequestSender(config,this,logger);
        datastore = new Roar.implementation.DataStore(api, logger);
        webAPI = new global::WebAPI(api);
        user = new Roar.implementation.Components.User(webAPI.user,datastore, logger);
        properties = new Roar.implementation.Components.Properties( datastore );
        leaderboards = new Roar.implementation.Components.Leaderboards(datastore, logger);
        inventory = new Roar.implementation.Components.Inventory( webAPI.items, datastore, logger);
        shop = new Roar.implementation.Components.Shop( webAPI.shop, datastore, logger );
        actions = new Roar.implementation.Components.Actions( webAPI.tasks, datastore );

        if (!Application.isEditor)
        {
            appstore = new Roar.implementation.Components.InAppPurchase( webAPI.appstore, "Roar", logger, appstoreSandbox );
        }

        urbanAirship = new Roar.implementation.Adapters.UrbanAirship(webAPI);

        DontDestroyOnLoad(gameObject);
    }
Пример #10
0
 public ItemsViewGetter(IWebAPI api) : base(api.items.view)
 {
 }
Пример #11
0
 public ShopListGetter(IWebAPI api) : base(api.shop.list)
 {
 }
Пример #12
0
 public Leaderboards(IWebAPI webapi, IDataStore dataStore, ILogger logger)
 {
     this.dataStore = dataStore;
     this.logger    = logger;
     this.webapi    = webapi;
 }
Пример #13
0
 public ItemsListGetter(IWebAPI api) : base(api.items.list)
 {
 }
Пример #14
0
 public UserViewGetter(IWebAPI api) : base(api.user.view)
 {
 }
Пример #15
0
    /**
     * Called by unity when everything is ready to go.
     * We use this rather than the constructor as its what unity suggests.
     */
    public void Awake()
    {
        config = new Roar.implementation.Config();

        // Apply public settings
        string key = gameKey.ToLower();
               //key = key.Replace("_", "");
        Config.Game = key;
        Config.IsDebug = debug;

        RequestSender api = new RequestSender(config,this,logger);
        webAPI = new global::WebAPI(api);
        datastore = new Roar.implementation.DataStore(webAPI, logger);
        friends = new Roar.implementation.Components.Friends( webAPI.friends, datastore, logger);
        user = new Roar.implementation.Components.User(webAPI.user,datastore, logger);
        properties = new Roar.implementation.Components.Properties( datastore );
        leaderboards = new Roar.implementation.Components.Leaderboards(webAPI,datastore, logger);
        inventory = new Roar.implementation.Components.Inventory( webAPI.items, datastore, logger);
        data = new Roar.implementation.Components.Data( webAPI.user, datastore, logger);
        shop = new Roar.implementation.Components.Shop( webAPI.shop, datastore, logger );
        tasks = new Roar.implementation.Components.Tasks( webAPI.tasks, datastore );
        facebook = new Roar.implementation.Components.Facebook(webAPI.facebook, datastore, logger);

        if (!Application.isEditor)
        {
            appstore = new Roar.implementation.Components.InAppPurchase( webAPI.appstore, "Roar", logger, appstoreSandbox );
        }

        urbanAirship = new Roar.implementation.Adapters.UrbanAirship(webAPI);

        DontDestroyOnLoad(gameObject);
    }
Пример #16
0
 public TimeWatcher(IWebAPI webAPI)
 {
     _webAPI = webAPI;
 }
 public DefaultConnectionModule()
 {
     webAPI = new DefaultWebAPI(new DefaultPostSender());
 }
Пример #18
0
 public LeaderboardViewGetter(IWebAPI api) : base(api.leaderboards.view)
 {
 }
Пример #19
0
 public UrbanAirship(IWebAPI webAPI)
 {
     this.webAPI = webAPI;
 }