void SetUIOption(HudAPIv2.Options flag, bool set) { if (uiTitle == null) { return; } for (int i = 0; i < ui.Length; ++i) { HudAPIv2.MessageBase msgBase = ui[i]; // just in case this issue comes back I wanna know if it's it specifically if (msgBase.BackingObject == null) { Log.Error($"{msgBase.GetType().Name} (ui{i}) has BackingObject = null!!!"); continue; } HudAPIv2.HUDMessage hudMessage = msgBase as HudAPIv2.HUDMessage; if (hudMessage != null) { if (set) { hudMessage.Options |= flag; } else { hudMessage.Options &= ~flag; } continue; } HudAPIv2.BillBoardHUDMessage hudBillboard = msgBase as HudAPIv2.BillBoardHUDMessage; if (hudBillboard != null) { if (set) { hudBillboard.Options |= flag; } else { hudBillboard.Options &= ~flag; } continue; } } }
public void UpdateUISettings() { if (uiTitle == null) { return; } SetUIOption(HudAPIv2.Options.HideHud, Main.Settings.hidePaletteWithHUD); float alpha = (Main.Settings.aimInfoBackgroundOpacity < 0 ? Main.GameConfig.HudBackgroundOpacity : Main.Settings.aimInfoBackgroundOpacity); uiTitleBg.BillBoardColor = Utils.HUDColorAlpha(UI_TITLE_BG_COLOR, alpha); uiTextBg.BillBoardColor = Utils.HUDColorAlpha(UI_TEXT_BG_COLOR, alpha); uiProgressBarBg.BillBoardColor = Utils.HUDColorAlpha(UI_PROGRESSBAR_BG_COLOR, MathHelper.Clamp(alpha * 2, 0.1f, 0.9f)); float aspectRatioMod = (float)(1d / Main.GameConfig.AspectRatio); float boxBgWidth = UI_BOX_WIDTH * aspectRatioMod; float colorWidth = UI_COLORBOX_WIDTH * aspectRatioMod; float progressBarWidth = UI_PROGRESSBAR_WIDTH * aspectRatioMod; for (int i = 0; i < ui.Length; ++i) { HudAPIv2.MessageBase msgBase = ui[i]; if (msgBase is HudAPIv2.HUDMessage) { HudAPIv2.HUDMessage obj = (HudAPIv2.HUDMessage)msgBase; obj.Origin = uiPosition; } else if (msgBase is HudAPIv2.BillBoardHUDMessage) { HudAPIv2.BillBoardHUDMessage obj = (HudAPIv2.BillBoardHUDMessage)msgBase; obj.Origin = uiPosition; } } //float scale = settings.aimInfoScale; const float scale = 1f; // TODO: make it scaleable? uiTitleBg.Width = boxBgWidth * scale; uiTextBg.Width = boxBgWidth * scale; uiPaintColor.Width = colorWidth * scale; uiTargetColor.Width = colorWidth * scale; uiProgressBar.Width = progressBarWidth * scale; uiProgressBarBg.Width = progressBarWidth * scale; uiTitle.Offset = new Vector2D(0.012, -0.018) * scale; uiTitleBg.Offset = new Vector2D(uiTitleBg.Width * 0.5, uiTitleBg.Height * -0.5); uiText.Offset = new Vector2D(0.07 * aspectRatioMod, -0.09) * scale; uiTextBg.Offset = new Vector2D(uiTextBg.Width * 0.5, uiTextBg.Height * -0.5) + (uiTextBgPosition * scale); uiTargetColor.Offset = new Vector2D(0.09 * aspectRatioMod, -0.195) * scale; uiPaintColor.Offset = new Vector2D(0.09 * aspectRatioMod, -0.295) * scale; uiProgressBar.Offset = new Vector2D(uiProgressBar.Width * 0.5, uiProgressBar.Height * -0.5) + (uiProgressBarPosition * scale); uiProgressBarBg.Offset = new Vector2D(uiProgressBarBg.Width * 0.5, uiProgressBarBg.Height * -0.5) + (uiProgressBarPosition * scale); uiTitle.Scale = UI_TITLE_SCALE * scale; uiTitleBg.Scale = scale; uiText.Scale = UI_TEXT_SCALE * scale; uiTextBg.Scale = scale; uiTargetColor.Scale = scale; uiPaintColor.Scale = scale; uiProgressBar.Scale = scale; uiProgressBarBg.Scale = scale; }