public void SetupPrefab() { if (part != null) { var maxHitPoints_ = CalculateTotalHitpoints(); if (!_forceUpdateHitpointsUI && previousHitpoints == maxHitPoints_) { return; } //Add Hitpoints UI_ProgressBar damageFieldFlight = (UI_ProgressBar)Fields["Hitpoints"].uiControlFlight; damageFieldFlight.maxValue = maxHitPoints_; damageFieldFlight.minValue = 0f; UI_ProgressBar damageFieldEditor = (UI_ProgressBar)Fields["Hitpoints"].uiControlEditor; damageFieldEditor.maxValue = maxHitPoints_; damageFieldEditor.minValue = 0f; Hitpoints = maxHitPoints_; //Add Armor UI_FloatRange armorFieldFlight = (UI_FloatRange)Fields["Armor"].uiControlFlight; armorFieldFlight.maxValue = 1500f; armorFieldFlight.minValue = 0f; UI_FloatRange armorFieldEditor = (UI_FloatRange)Fields["Armor"].uiControlEditor; armorFieldEditor.maxValue = 1500f; armorFieldEditor.minValue = 0f; part.RefreshAssociatedWindows(); if (!ArmorSet) { overrideArmorSetFromConfig(); } previousHitpoints = maxHitPoints_; } else { if (BDArmorySettings.DRAW_DEBUG_LABELS) { Debug.Log("[BDArmory.HitpointTracker]: OnStart part is null"); } } }
protected virtual void SetupPrefab() { if (part != null) { var maxHitPoints_ = CalculateTotalHitpoints(); if (previousHitpoints == maxHitPoints_) { return; } //Add Hitpoints UI_ProgressBar damageFieldFlight = (UI_ProgressBar)Fields["Hitpoints"].uiControlFlight; damageFieldFlight.maxValue = maxHitPoints_; damageFieldFlight.minValue = 0f; UI_ProgressBar damageFieldEditor = (UI_ProgressBar)Fields["Hitpoints"].uiControlEditor; damageFieldEditor.maxValue = maxHitPoints_; damageFieldEditor.minValue = 0f; Hitpoints = maxHitPoints_; //Add Armor UI_FloatRange armorFieldFlight = (UI_FloatRange)Fields["Armor"].uiControlFlight; armorFieldFlight.maxValue = 500f; armorFieldFlight.minValue = 10; UI_FloatRange armorFieldEditor = (UI_FloatRange)Fields["Armor"].uiControlEditor; armorFieldEditor.maxValue = 500f; armorFieldEditor.minValue = 10f; part.RefreshAssociatedWindows(); if (!ArmorSet) { overrideArmorSetFromConfig(); } previousHitpoints = Hitpoints; } else { Debug.Log("[BDArmory]: HitpointTracker::OnStart part is null"); } }
private void setupUI() { BaseField field = Fields["liftingGas"]; if (field != null) { UI_ChooseOption uiChooser = (UI_ChooseOption)field.uiControlEditor; if (uiChooser != null) { Log.post("setting up UI for LiftingGasOptions"); //uiChooser.options = liftingGasOptions.Select<LiftingGas, string>(a => a.displayName).ToArray(); uiChooser.options = (from lgo in liftingGasOptions where lgo.deprecated == false select lgo.displayName).ToArray(); } } field = Fields["ballonetPercentage"]; if (field != null) { UI_FloatEdit uiEdit = (UI_FloatEdit)field.uiControlEditor; if (uiEdit != null) { Log.post("setting up UI for ballonetPercentage"); if (ballonetPercentageMax > 0.0f) { uiEdit.maxValue = ballonetPercentageMax; } else { field.guiActive = false; field.guiActiveEditor = false; } } } field = Fields["pStatus"]; if (field != null) { UI_ProgressBar uiProg = (UI_ProgressBar)field.uiControlEditor; if (uiProg != null) { Log.post("setting up pStatus"); uiProg.maxValue = pressureTolerance; uiProg.minValue = -pressureTolerance; } uiProg = (UI_ProgressBar)field.uiControlFlight; if (uiProg != null) { Log.post("setting up pStatus"); uiProg.maxValue = idealRelPressure + pressureTolerance; uiProg.minValue = idealRelPressure - pressureTolerance; } } field = Fields["envelopeVolume"]; if (field != null) { Log.post("setting up ui envelope Volume"); field.guiActive = Preferences.showVolumeInfoInFlight; field.guiActiveEditor = Preferences.showVolumeInfoInEditor; } field = Fields["envelopeVolumeNetUI"]; if (field != null) { Log.post("setting up ui envelope Volume Net"); field.guiActive = Preferences.showVolumeInfoInFlight; field.guiActiveEditor = Preferences.showVolumeInfoInEditor; } field = Fields["ballonetVolumeMax"]; if (field != null) { Log.post("setting up ui ballonet vol max"); field.guiActive = Preferences.showVolumeInfoInFlight; field.guiActiveEditor = Preferences.showVolumeInfoInEditor; } field = Fields["temperature"]; if (field != null) { Log.post("setting up ui temperature"); if (null == ProcAirships.Instance) { Log.post("behaviour ProcAirships not jet instantiated", LogLevel.LOG_ERROR); } else { field.guiActive = ProcAirships.Instance.showTemperatureInFlight; field.guiActiveEditor = Preferences.showTemperatureInEditor; } } field = Fields["absolutePressure"]; if (field != null) { Log.post("setting up ui abs pressure"); field.guiActive = Preferences.showAbsPressureInFlight; field.guiActiveEditor = Preferences.showAbsPressureInEditor; } }
public float GetMaxHitpoints() { UI_ProgressBar hitpointField = (UI_ProgressBar)Fields["Hitpoints"].uiControlEditor; return(hitpointField.maxValue); }