Пример #1
0
    public void method_4()
    {
        this.method_3(true);
        GClass78 skylab = base.Context.Game.Web.Skylab;

        GClass49.GClass76 hangar         = base.Context.Game.Web.Equipment.Hangar;
        DateTimeOffset?   dateTimeOffset = skylab.method_0().method_5();

        skylab.method_1().GetAwaiter().GetResult();
        DateTimeOffset?dateTimeOffset2 = skylab.method_0().method_5();

        if (dateTimeOffset != null && dateTimeOffset2 == null)
        {
            base.Log.Info("Transfer complete. Refreshing");
            base.Context.method_62 <GClass920>().imethod_1();
            return;
        }
        if (dateTimeOffset2 != null)
        {
            base.Log.Info <DateTimeOffset>("Transfer in progress. Complete at {time}", dateTimeOffset2.Value);
            return;
        }
        int num  = (int)base.Context.Hero.ResourcePromerium;
        int num2 = (int)base.Context.Hero.ResourceSeprom;

        if (!base.Context.Game.Connection.Socket.method_2() || !base.Context.Hero.IsInitialized)
        {
            num  = (int)hangar.method_2("resource_ore_promerium");
            num2 = (int)hangar.method_2("resource_ore_seprom");
        }
        int skylab_KeepPromerium = base.Context.Account.Skylab_KeepPromerium;
        int skylab_KeepSeprom    = base.Context.Account.Skylab_KeepSeprom;
        int num3 = Math.Min(Math.Max(0, skylab_KeepPromerium - num), skylab.method_0().method_2("resource_ore_promerium"));
        int num4 = Math.Min(Math.Max(0, skylab_KeepSeprom - num2), skylab.method_0().method_2("resource_ore_seprom"));

        base.Log.Info <int, int>("Need to transfer {promerium} promerium & {seprom} seprom", num3, num4);
        num4 = Math.Min(num4, 90);
        int val = 100 - num4;

        num3 = Math.Min(num3, val);
        if (num3 + num4 == 0)
        {
            return;
        }
        Thread.Sleep(2000);
        base.Log.Info <int, int>("Transferring a batch of {promerium} promerium & {seprom} seprom", num3, num4);
        bool result = skylab.method_2(num3, num4).GetAwaiter().GetResult();

        this.method_3(result);
        base.Log.Info("Transfer state: {state}", result);
    }
Пример #2
0
        public GClass49.GClass76 GetHangar(int id)
        {
            string string_ = string.Format("{{\"params\":{{\"hi\":{0}}}}}", id);
            string text    = this.Web.Post(GClass880.smethod_9(this.Web.Server), new Dictionary <string, string>
            {
                {
                    "action",
                    "getHangar"
                },
                {
                    "params",
                    string_.smethod_1()
                }
            }, "https://darkorbit.com", null).Content.smethod_0();

            GClass49.GClass76         gclass = JsonConvert.DeserializeObject <GClass49.GClass76>(text);
            JToken                    value  = JObject.Parse(text).Value <JObject>("data").Value <JObject>("ret").GetValue("hangars");
            IList <GClass49.GClass54> list   = null;

            try
            {
                list = (List <GClass49.GClass54>)value.ToObject(typeof(List <GClass49.GClass54>));
            }
            catch (Exception)
            {
            }
            GClass49.GClass76 result;
            try
            {
                if (list == null)
                {
                    list = (from t in (Dictionary <int, GClass49.GClass54>)value.ToObject(typeof(Dictionary <int, GClass49.GClass54>))
                            select t.Value).ToList <GClass49.GClass54>();
                }
                goto IL_F8;
            }
            catch (Exception)
            {
                result = null;
            }
            return(result);

IL_F8:
            gclass.data.ret.hangars = list;
            gclass.Fill();
            return(gclass);
        }
Пример #3
0
 public void method_2(DarkOrbitWebAPI darkOrbitWebAPI_0)
 {
     GClass49.GClass76 hangar = base.Context.Game.Web.Equipment.Hangar;
     foreach (GClass49.GClass52 gclass in hangar.data.ret.hangars.First <GClass49.GClass54>().GClass53_0.XjiRxaacIQ)
     {
         int num = int.Parse(gclass.HP.TrimEnd(new char[]
         {
             '%'
         }));
         if (num >= 90)
         {
             Thread.Sleep(5000);
             base.Log.Info("Repairing drone at {damage}% damage.", num);
             darkOrbitWebAPI_0.Equipment.RepairDrone(hangar.data, gclass);
         }
     }
 }
Пример #4
0
    public override void Execute()
    {
        GClass28.GClass48 hangarList = base.Context.Game.Web.Equipment.GetHangarList();
        GClass49.GClass76 hangar     = base.Context.Game.Web.Equipment.GetHangar();
        IDopeService      service    = base.Context.MainController.Parent.Service;
        List <string>     list       = hangarList.data.ret.hangars.Select(new Func <GClass28.GClass32, string>(GClass920.< > c.< > c_0.method_0)).ToList <string>();

        if (list != null && list.Any <string>() && hangar != null)
        {
            VolatileData volatileData = new VolatileData();
            volatileData.LastUpdated = DateTimeOffset.Now;
            volatileData.Hangars     = list;
            VolatileData      volatileData2 = volatileData;
            GClass28.GClass32 gclass        = hangarList.data.ret.hangars.FirstOrDefault(new Func <GClass28.GClass32, bool>(GClass920.< > c.< > c_0.method_1));
            string            activeHangar;
            if (gclass == null)
            {
                activeHangar = null;
            }
            else
            {
                GClass28.GClass31 gclass31_ = gclass.GClass31_0;
                if (gclass31_ == null)
                {
                    activeHangar = null;
                }
                else
                {
                    GClass28.GClass30 gclass30_ = gclass31_.GClass30_0;
                    activeHangar = ((gclass30_ != null) ? gclass30_.String_0 : null);
                }
            }
            volatileData2.ActiveHangar = activeHangar;
            volatileData.Fill();
            base.Context.Account.Volatile = volatileData;
            if (this.method_2().Cooldown(120000))
            {
                service.UpdateVolatile(base.Context.Account.BotId, volatileData);
                this.method_3(DateTimeOffset.Now);
            }
        }
    }
Пример #5
0
 public Dictionary <GClass49.GClass69, List <GClass49.GClass56> > GetItemList(GClass49.GClass76 hangar)
 {
     if (this.Items == null)
     {
         this.Items = new Dictionary <GClass49.GClass69, List <GClass49.GClass56> >();
     }
     this.Items.Clear();
     List <GClass49.GClass56>[] array = new List <GClass49.GClass56> [this.Hangar.data.ret.IList_0.Count + 1];
     for (int i = 0; i < array.Length; i++)
     {
         array[i] = new List <GClass49.GClass56>();
     }
     foreach (GClass49.GClass56 gclass in this.Hangar.data.ret.items)
     {
         array[gclass.Int32_1].Add(gclass);
     }
     foreach (GClass49.GClass69 gclass2 in this.Hangar.data.ret.IList_0)
     {
         this.Items.Add(gclass2, array[gclass2.Int32_0]);
     }
     return(this.Items);
 }