/// <summary> /// Processes the queried character's character sheet information. /// </summary> /// <param name="result"></param> private void OnCharacterSheetUpdated(EsiAPICharacterSheet result) { var target = m_ccpCharacter; // Character may have been deleted since we queried if (target != null) { // Query remaining character data QueryCharacterData <EsiAPILocation>(ESIAPICharacterMethods.Location, EveMonClient.Notifications.NotifyCharacterLocationError, OnCharacterLocationUpdated); target.Import(result); } }
/// <summary> /// Processes the queried character's character sheet information. /// </summary> /// <param name="result"></param> private void OnCharacterSheetUpdated(EsiAPICharacterSheet result) { // Flag that we are waiting for character sheet operations to finish if (!m_characterSheetUpdating) { m_characterSheetUpdating = true; } var target = m_ccpCharacter; // Character may have been deleted since we queried if (target != null) { target.Import(result); } }
/// <summary> /// Processes the queried character's character sheet information. /// </summary> /// <param name="result"></param> private void OnCharacterSheetUpdated(EsiAPICharacterSheet result) { // Subscribe timer tick to wait for the rest of the character sheet operations to finish if (!m_characterSheetUpdating) { m_characterSheetUpdating = true; EveMonClient.TimerTick += EveMonClient_TimerTick_CharacterSheetUpdated; } var target = m_ccpCharacter; // Character may have been deleted since we queried if (target != null) { target.Import(result); } }
/// <summary> /// Imports data from the given character sheet informations. /// </summary> /// <param name="serial">The serialized character sheet</param> internal void Import(EsiAPICharacterSheet serial) { // Import from ESI m_name = serial.Name; Birthday = serial.Birthday; Race = serial.Race.ToString().UnderscoresToDashes(); Bloodline = serial.BloodLine.ToString().UnderscoresToDashes(); Ancestry = serial.Ancestry.ToString().Replace('_', ' '); Gender = serial.Gender.ToTitleCase(); CorporationID = serial.CorporationID; AllianceID = serial.AllianceID; FactionID = serial.FactionID; SecurityStatus = serial.SecurityStatus; CorporationName = EveIDToName.GetIDToName(CorporationID); AllianceName = EveIDToName.GetIDToName(AllianceID); FactionName = EveIDToName.GetIDToName(FactionID); EveMonClient.OnCharacterUpdated(this); }
/// <summary> /// Imports data from the given character sheet informations. /// </summary> /// <param name="serial">The serialized character sheet</param> internal void Import(EsiAPICharacterSheet serial) { // Import from ESI m_name = serial.Name; Birthday = serial.Birthday; Race = serial.Race.ToString().UnderscoresToDashes(); Bloodline = serial.BloodLine.ToString().UnderscoresToDashes(); Ancestry = serial.Ancestry.ToString().Replace('_', ' '); Gender = serial.Gender.ToTitleCase(); CorporationID = serial.CorporationID; AllianceID = serial.AllianceID; FactionID = serial.FactionID; SecurityStatus = serial.SecurityStatus; // Enable bypass since we would have a circular loop otherwise CorporationName = EveIDToName.GetIDToName(CorporationID, true); AllianceName = EveIDToName.GetIDToName(AllianceID, true); FactionName = EveIDToName.GetIDToName(FactionID); }
/// <summary> /// Processes the queried character's character sheet information. /// </summary> /// <param name="result"></param> private void OnCharacterSheetUpdated(EsiAPICharacterSheet result) { var target = m_ccpCharacter; // Character may have been deleted since we queried if (target != null) { var notifiers = EveMonClient.Notifications; // Query remaining character data QueryCharacterData <EsiAPILocation>(ESIAPICharacterMethods.Location, notifiers.NotifyCharacterLocationError, target.Import); QueryCharacterData <EsiAPIClones>(ESIAPICharacterMethods.Clones, notifiers.NotifyCharacterClonesError, target.Import); QueryCharacterData <EsiAPIJumpFatigue>(ESIAPICharacterMethods.JumpFatigue, notifiers.NotifyCharacterFatigueError, target.Import); QueryCharacterData <EsiAPIAttributes>(ESIAPICharacterMethods.Attributes, notifiers.NotifyCharacterAttributesError, target.Import); QueryCharacterData <EsiAPIShip>(ESIAPICharacterMethods.Ship, notifiers.NotifyCharacterShipError, target.Import); QueryCharacterData <EsiAPISkills>(ESIAPICharacterMethods.Skills, notifiers.NotifyCharacterSkillsError, target.Import); QueryCharacterData <List <int> >(ESIAPICharacterMethods.Implants, notifiers.NotifyCharacterImplantsError, target.Import); QueryCharacterData <EsiAPIEmploymentHistory>(ESIAPICharacterMethods.EmploymentHistory, notifiers.NotifyCharacterEmploymentError, target.Import); QueryCharacterData <string>(ESIAPICharacterMethods.AccountBalance, notifiers.NotifyCharacterBalanceError, target.Import); target.Import(result); // Notify for insufficient balance target.NotifyInsufficientBalance(); // Save results to XML cache var doc = Util.SerializeToXmlDocument(result); LocalXmlCache.SaveAsync(result.Name, doc).ConfigureAwait(false); } }