Пример #1
0
        /// <summary>
        /// Handles the Click event of the showInBrowserMenuItem control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param>
        private void showInBrowserMenuItem_Click(object sender, EventArgs e)
        {
            if (m_selectedItem == null)
            {
                return;
            }

            Ship      ship      = m_selectedItem as Ship;
            Blueprint blueprint = StaticBlueprints.GetBlueprintByID(m_selectedItem.ID);
            Skill     skill     = m_killLog.Character.Skills[m_selectedItem.ID];

            if (skill == Skill.UnknownSkill)
            {
                skill = null;
            }

            PlanWindow planWindow = PlanWindow.ShowPlanWindow(m_killLog.Character);

            if (ship != null)
            {
                planWindow.ShowShipInBrowser(ship);
            }
            else if (blueprint != null)
            {
                planWindow.ShowBlueprintInBrowser(blueprint);
            }
            else if (skill != null)
            {
                planWindow.ShowSkillInBrowser(skill);
            }
            else
            {
                planWindow.ShowItemInBrowser(m_selectedItem);
            }
        }
Пример #2
0
        /// <summary>
        /// Populates the serialization object job with the info from the API.
        /// </summary>
        /// <param name="src">The source.</param>
        /// <param name="issuedFor">Whether this jobs was issued for the corporation or
        /// character.</param>
        /// <param name="character">The character owning this job.</param>
        private void PopulateJobInfo(EsiJobListItem src, IssuedFor issuedFor,
                                     CCPCharacter character = null)
        {
            ID                        = src.JobID;
            InstallerID               = src.InstallerID;
            InstalledItem             = StaticBlueprints.GetBlueprintByID(src.BlueprintTypeID);
            Runs                      = src.Runs;
            Cost                      = src.Cost;
            Probability               = src.Probability;
            SuccessfulRuns            = src.SuccessfulRuns;
            StartDate                 = src.StartDate;
            EndDate                   = src.EndDate;
            PauseDate                 = src.PauseDate;
            IssuedFor                 = issuedFor;
            m_installedItemLocationID = src.FacilityID;

            UpdateLocation(character);
            UpdateInstallation(character);

            if (Enum.IsDefined(typeof(BlueprintActivity), src.ActivityID))
            {
                Activity = (BlueprintActivity)Enum.ToObject(typeof(BlueprintActivity),
                                                            src.ActivityID);
            }

            OutputItem = GetOutputItem(src.ProductTypeID);
        }
Пример #3
0
        /// <summary>
        /// Populates the serialization object job with the info from the API.
        /// </summary>
        /// <param name="src">The source.</param>
        private void PopulateJobInfo(SerializableJobListItem src)
        {
            ID             = src.JobID;
            InstallerID    = src.InstallerID;
            InstalledItem  = StaticBlueprints.GetBlueprintByID(src.BlueprintTypeID);
            Runs           = src.Runs;
            SolarSystem    = StaticGeography.GetSolarSystemByID(src.SolarSystemID);
            Cost           = src.Cost;
            Probability    = src.Probability;
            SuccessfulRuns = src.SuccessfulRuns;
            //InstalledTime = src.InstallTime;
            //InstalledME = src.InstalledItemMaterialLevel;
            //InstalledPE = src.InstalledItemProductivityLevel;
            StartDate = src.StartDate;
            EndDate   = src.EndDate;
            PauseDate = src.PauseDate;
            IssuedFor = src.IssuedFor;
            m_installedItemLocationID = src.StationID;

            UpdateInstallation();

            if (Enum.IsDefined(typeof(BlueprintActivity), src.ActivityID))
            {
                Activity = (BlueprintActivity)Enum.ToObject(typeof(BlueprintActivity), src.ActivityID);
            }

            OutputItem = GetOutputItem(src.ProductTypeID);

            //if (Enum.IsDefined(typeof(BlueprintType), src.InstalledItemCopy))
            //    BlueprintType = (BlueprintType)Enum.ToObject(typeof(BlueprintType), src.InstalledItemCopy);
        }
Пример #4
0
        /// <summary>
        /// Gets the output item by its ID (can be a blueprint or an item).
        /// </summary>
        /// <param name="id">The itemID of the blueprint.</param>
        /// <returns>The output item from the bluperint.</returns>
        private Item GetOutputItem(int id)
        {
            switch (Activity)
            {
            case BlueprintActivity.Manufacturing:
                return(StaticBlueprints.GetBlueprintByID(InstalledItem.ID).ProducesItem ??
                       StaticItems.GetItemByID(0));

            case BlueprintActivity.ResearchingMaterialEfficiency:
            case BlueprintActivity.ResearchingTimeEfficiency:
            case BlueprintActivity.Copying:
                return(InstalledItem);

            case BlueprintActivity.Invention:
            case BlueprintActivity.ReverseEngineering:
                return(StaticBlueprints.GetBlueprintByID(id) ?? StaticItems.GetItemByID(0));

            case BlueprintActivity.SimpleReactions:
            case BlueprintActivity.Reactions:
                return(StaticItems.GetItemByID(InstalledItem?.ReactionOutcome?.Item?.ID ?? 0));

            default:
                return(StaticItems.GetItemByID(0));
            }
        }
Пример #5
0
        /// <summary>
        /// Gets the output item by its ID (can be a blueprint or an item).
        /// </summary>
        /// <param name="id">The itemID of the blueprint.</param>
        /// <returns>The output item from the bluperint.</returns>
        private static Item GetOutputItem(long id)
        {
            // Is it a blueprint ?
            Item item = StaticBlueprints.GetBlueprintByID(id);

            // Then it's an item
            if (item == null)
            {
                item = StaticItems.GetItemByID(id);
            }

            return(item);
        }
Пример #6
0
        /// <summary>
        /// Handles the Opening event of the contextMenuStrip control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="System.ComponentModel.CancelEventArgs" /> instance containing the event data.</param>
        private void contextMenuStrip_Opening(object sender, CancelEventArgs e)
        {
            e.Cancel = m_selectedItem == null;

            if (e.Cancel || m_selectedItem == null)
            {
                return;
            }

            Ship      ship      = m_selectedItem as Ship;
            Blueprint blueprint = StaticBlueprints.GetBlueprintByID(m_selectedItem.ID);
            Skill     skill     = m_killLog.Character.Skills[m_selectedItem.ID];

            if (skill == Skill.UnknownSkill)
            {
                skill = null;
            }

            string text = ship != null ? "Ship" : blueprint != null ? "Blueprint" : skill != null ? "Skill" : "Item";

            showInBrowserMenuItem.Text = $"Show In {text} Browser...";
        }
Пример #7
0
 /// <summary>
 /// Constructor from the API.
 /// </summary>
 /// <param name="src"></param>
 internal IndustryJob(SerializableJobListItem src)
 {
     m_state               = GetState(src);
     m_jobID               = src.JobID;
     m_installedItemID     = src.InstalledItemTypeID;
     m_installedItem       = StaticBlueprints.GetBlueprintByID(src.InstalledItemTypeID);
     m_outputItemID        = src.OutputTypeID;
     m_outputItem          = GetOutputItem(src.OutputTypeID);
     m_runs                = src.Runs;
     m_activity            = (BlueprintActivity)Enum.ToObject(typeof(BlueprintActivity), src.ActivityID);
     m_blueprintType       = (BlueprintType)Enum.ToObject(typeof(BlueprintType), src.InstalledItemCopy);
     m_installation        = GetInstallation(src.OutputLocationID);
     m_solarSystem         = StaticGeography.GetSystem(src.SolarSystemID);
     m_installedTime       = src.InstallTime;
     m_installedItemME     = src.InstalledItemMaterialLevel;
     m_installedItemPE     = src.InstalledItemProductivityLevel;
     m_beginProductionTime = src.BeginProductionTime;
     m_endProductionTime   = src.EndProductionTime;
     m_pauseProductionTime = src.PauseProductionTime;
     m_lastStateChange     = DateTime.UtcNow;
     m_issuedFor           = src.IssuedFor;
     m_activeJobState      = GetActiveJobState();
 }
Пример #8
0
 /// <summary>
 /// Constructor from an object deserialized from the settings file.
 /// </summary>
 /// <param name="src"></param>
 internal IndustryJob(SerializableJob src)
 {
     m_ignored             = src.Ignored;
     m_jobID               = src.JobID;
     m_state               = src.State;
     m_installedItemID     = src.InstalledItemID;
     m_installedItem       = StaticBlueprints.GetBlueprintByID(src.InstalledItemID);
     m_outputItemID        = src.OutputItemID;
     m_outputItem          = GetOutputItem(src.OutputItemID);
     m_runs                = src.Runs;
     m_activity            = src.Activity;
     m_blueprintType       = src.BlueprintType;
     m_installation        = src.ItemLocation;
     m_solarSystem         = StaticGeography.GetSystem(src.SolarSystemID);
     m_installedTime       = src.InstalledTime;
     m_installedItemME     = src.InstalledItemME;
     m_installedItemPE     = src.InstalledItemPE;
     m_beginProductionTime = src.BeginProductionTime;
     m_endProductionTime   = src.EndProductionTime;
     m_pauseProductionTime = src.PauseProductionTime;
     m_lastStateChange     = src.LastStateChange;
     m_issuedFor           = src.IssuedFor;
     m_activeJobState      = GetActiveJobState();
 }
Пример #9
0
 /// <summary>
 /// Gets the type of the blueprint.
 /// </summary>
 /// <param name="rawQuantity">The raw quantity.</param>
 /// <returns></returns>
 private string GetTypeOfBlueprint(int rawQuantity)
 => Item != null && StaticBlueprints.GetBlueprintByID(Item.ID) != null &&
 !Item.MarketGroup.BelongsIn(DBConstants.AncientRelicsMarketGroupID)
         ? rawQuantity == -2 ? BlueprintType.Copy.ToString() : BlueprintType.Original.ToString()
         : String.Empty;
Пример #10
0
 /// <summary>
 /// Gets the type of the blueprint.
 /// </summary>
 /// <param name="isBPC">Whether ESI reported it as a BPC.</param>
 /// <returns></returns>
 private string GetTypeOfBlueprint(bool isBPC) => (Item != null &&
                                                   StaticBlueprints.GetBlueprintByID(Item.ID) != null && !Item.MarketGroup.BelongsIn(
                                                       DBConstants.AncientRelicsMarketGroupID)) ? (isBPC ?
                                                                                                   BlueprintType.Copy.ToString() : BlueprintType.Original.ToString()) : string.Empty;