Docs: loop re-shape to expedition-driven (DR-042) + consolidate; fix enemy health-bar fill
- DR-042 (new): canonical loop re-shape — win-driver moves from base-siege survival to expedition clears; blind scheduled siege retired; base siege becomes retaliation consequence. Build order A (coherence) -> B (retaliation) -> C (legibility) -> D (Slice 4 persistent meta). - Backlog/Path_to_Fun/Home reconciled to the expedition-driven direction; Slice 3 + Combat Depth marked built. - DR-036 (END-2) flagged superseded-in-part; DR-034 (END-1) repurposed (Core is a consequence, not the win-gate); DR-037 forward-pointer to DR-042. - CombatFeedbackSystem: fix enemy health bar (sprite-less Filled Image ignored fillAmount -> size via anchorMax.x). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -822,10 +822,8 @@ namespace ProjectM.Client
|
||||
var fillImg = fillGo.AddComponent<UnityEngine.UI.Image>();
|
||||
fillImg.material = _barFillMat;
|
||||
fillImg.color = new Color(0.88f, 0.22f, 0.14f, 1f);
|
||||
fillImg.type = UnityEngine.UI.Image.Type.Filled;
|
||||
fillImg.fillMethod = UnityEngine.UI.Image.FillMethod.Horizontal;
|
||||
fillImg.fillOrigin = 0; // left
|
||||
fillImg.fillAmount = 1f;
|
||||
fillImg.type = UnityEngine.UI.Image.Type.Simple; // a sprite-less UI Image ignores fillAmount (it draws a full quad) ->
|
||||
fillImg.raycastTarget = false; // the bar empties by sizing the fill RectTransform (anchorMax.x = frac) in UpdateHealthBars
|
||||
|
||||
go.SetActive(false);
|
||||
var entry = new HealthBarEntry { CanvasGo = go, Fill = fillImg, Bg = bgImg, ShowTimer = 0f, Visible = false };
|
||||
@@ -882,7 +880,7 @@ namespace ProjectM.Client
|
||||
}
|
||||
float alpha = (!alwaysOn && entry.ShowTimer < 0f)
|
||||
? 1f - math.saturate(-entry.ShowTimer / HealthBarFadeDuration) : 1f;
|
||||
if (entry.Fill != null) { var c = entry.Fill.color; c.a = alpha; entry.Fill.color = c; entry.Fill.fillAmount = frac; }
|
||||
if (entry.Fill != null) { var c = entry.Fill.color; c.a = alpha; entry.Fill.color = c; entry.Fill.rectTransform.anchorMax = new Vector2(frac, 1f); }
|
||||
if (entry.Bg != null) { var c = entry.Bg.color; c.a = 0.82f * alpha; entry.Bg.color = c; }
|
||||
}
|
||||
else if (entry.Visible) { entry.CanvasGo.SetActive(false); entry.Visible = false; }
|
||||
|
||||
Reference in New Issue
Block a user