Пример #1
0
        public bool UpdateBuildKDock(List <KCB.api_get_member.KDock.ApiData> json, MasterData.Ship shipMaster)
        {
            foreach (var data in json)
            {
                int ship_id = (int)data.api_created_ship_id;
                int dock_id = (int)data.api_id;

                lock (_kdock)
                {
                    KDock targetDock = _kdock[dock_id - 1];
                    if (ship_id == 0)
                    {
                        targetDock.Vacant = true;
                    }
                    else
                    {
                        var ship = shipMaster.LookupShipMaster(ship_id);
                        targetDock.Vacant = false;
                        targetDock.ShipID = ship_id;
                        targetDock.Name   = ship.Name;
                        targetDock.Type   = ship.ShipTypeName;
                        targetDock.Finish
                            = _epoch.AddMilliseconds(data.api_complete_time).ToLocalTime();
                        targetDock.UpdateMaterialParam(data);
                    }
                }
            }
            return(true);
        }
Пример #2
0
        public static Getship fromDynamic(dynamic json)
        {
            Getship getship = new Getship();

            getship.id      = (int)json.api_id;
            getship.ship_id = (int)json.api_ship_id;
            getship.kdock   = KDock.fromDynamic(json.api_kdock);
            getship.ship    = ShipValue.fromDynamic(json.api_ship);

            getship.slotitem = new List <GetshipSlotitemValue>();
            if (json.api_slotitem != null)
            {
                foreach (var data in json.api_slotitem)
                {
                    getship.slotitem.Add(GetshipSlotitemValue.fromDynamic(data));
                }
            }

            return(getship);
        }