using SptCommon.Annotations; using Core.Models.Eft.Common; using Core.Models.Eft.Health; using Core.Models.Eft.Profile; using BodyPartHealth = Core.Models.Eft.Common.Tables.BodyPartHealth; using Effects = Core.Models.Eft.Profile.Effects; using Health = Core.Models.Eft.Profile.Health; namespace Core.Helpers; [Injectable] public class HealthHelper { /// /// Resets the profiles vitality/health and vitality/effects properties to their defaults /// /// Session Id /// Updated profile public SptProfile ResetVitality(string sessionID) { throw new NotImplementedException(); } /// /// Update player profile vitality values with changes from client request object /// /// Player profile /// Post raid data /// Session id /// Is player dead /// Should effects be added to profile (default - true) /// Should all prior effects be removed before apply new ones (default - true) public void UpdateProfileHealthPostRaid( PmcData pmcData, Health postRaidHealth, string sessionID, bool isDead) { throw new NotImplementedException(); } protected void StoreHydrationEnergyTempInProfile( SptProfile fullProfile, double hydration, double energy, double temprature) { throw new NotImplementedException(); } /// /// Take body part effects from client profile and apply to server profile /// /// Post-raid body part data /// Player profile on server protected void TransferPostRaidLimbEffectsToProfile(Dictionary postRaidBodyParts, PmcData profileData) { throw new NotImplementedException(); } /// /// Update player profile vitality values with changes from client request object /// /// Player profile /// Heal request /// Session id /// Should effects be added to profile (default - true) /// Should all prior effects be removed before apply new ones (default - true) public void SaveVitality( PmcData pmcData, SyncHealthRequestData request, string sessionID, bool addEffects = true, bool deleteExistingEffects = true) { throw new NotImplementedException(); } /// /// Adjust hydration/energy/temperate and body part hp values in player profile to values in profile.vitality /// /// Profile to update /// Session id protected void SaveHealth(PmcData pmcData, string sessionID) { throw new NotImplementedException(); } /// /// Save effects to profile /// Works by removing all effects and adding them back from profile /// Removes empty 'Effects' objects if found /// /// Player profile /// Session id /// Dictionary of body parts with effects that should be added to profile /// Should effects be added back to profile protected void SaveEffects( PmcData pmcData, string sessionID, Effects bodyPartsWithEffects, bool deleteExistingEffects = true) { throw new NotImplementedException(); } /// /// Add effect to body part in profile /// /// Player profile /// Body part to edit /// Effect to add to body part /// How long the effect has left in seconds (-1 by default, no duration). protected void AddEffect(PmcData pmcData, string effectBodyPart, string effectType, int duration = -1) { throw new NotImplementedException(); } }