Feel: breakable clutter reads as Hades-style barrels, one-hit pop
The BlightClutter destructible-ghost chain (per-room seeding, unified DR-018-safe sweep, melee + projectile breaking, personal-inventory drops) already existed end-to-end - the roadmap item's gap was FEEL: - Visual: prefab Model mesh swapped SM_Env_Rock_Chunk_01 (read as scenery) -> SM_Prop_Barrel_01 (FantasyKingdom, same proven atlas material). Base-pivot barrel offset -1 on the Model child (scatter y=1 is the capsule plane - the base-pivot float gotcha). - One-hit pop: prefab Remaining 8 -> 2 (both hit paths decrement by max(1,(int)ScrapPerHit)=2, so one swing/shot shatters); authoring default kept in sync. - Density: MaxClutterPerRoom 6 -> 8. Verified live: 8 barrels seeded in a combat room, grounded (screenshot); an injected projectile through the real ResourceHarvestSystem sweep popped one barrel in ONE hit (8 -> 7) and credited 2 Biomass; 466/466 EditMode, console clean. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -27,7 +27,7 @@ Transform:
|
|||||||
m_GameObject: {fileID: 1085570720822716955}
|
m_GameObject: {fileID: 1085570720822716955}
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: -1, z: 0}
|
||||||
m_LocalScale: {x: 1.5, y: 1.5, z: 1.5}
|
m_LocalScale: {x: 1.5, y: 1.5, z: 1.5}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children: []
|
m_Children: []
|
||||||
@@ -40,7 +40,7 @@ MeshFilter:
|
|||||||
m_PrefabInstance: {fileID: 0}
|
m_PrefabInstance: {fileID: 0}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_GameObject: {fileID: 1085570720822716955}
|
m_GameObject: {fileID: 1085570720822716955}
|
||||||
m_Mesh: {fileID: 4300000, guid: d8de5840b690b8c4cb783b65f1196981, type: 3}
|
m_Mesh: {fileID: 4300000, guid: ad7e0b3cc539c4c4d9adbe26d67de586, type: 3}
|
||||||
--- !u!23 &2902084588362297385
|
--- !u!23 &2902084588362297385
|
||||||
MeshRenderer:
|
MeshRenderer:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -175,7 +175,7 @@ MonoBehaviour:
|
|||||||
m_Script: {fileID: 11500000, guid: 6b1aa9b83194a2c41b940dd9532377f4, type: 3}
|
m_Script: {fileID: 11500000, guid: 6b1aa9b83194a2c41b940dd9532377f4, type: 3}
|
||||||
m_Name:
|
m_Name:
|
||||||
m_EditorClassIdentifier: ProjectM.Authoring::ProjectM.Authoring.BlightClutterAuthoring
|
m_EditorClassIdentifier: ProjectM.Authoring::ProjectM.Authoring.BlightClutterAuthoring
|
||||||
Remaining: 8
|
Remaining: 2
|
||||||
ScrapPerHit: 2
|
ScrapPerHit: 2
|
||||||
HitRadius: 1
|
HitRadius: 1
|
||||||
Variant: 0
|
Variant: 0
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ namespace ProjectM.Authoring
|
|||||||
public class BlightClutterAuthoring : MonoBehaviour
|
public class BlightClutterAuthoring : MonoBehaviour
|
||||||
{
|
{
|
||||||
[Tooltip("Hit-points before the clutter shatters.")]
|
[Tooltip("Hit-points before the clutter shatters.")]
|
||||||
[Min(1)] public int Remaining = 8;
|
[Min(1)] public int Remaining = 2; // one-hit pop: both hit paths decrement by max(1,(int)ScrapPerHit)
|
||||||
|
|
||||||
[Tooltip("Scrap (Biomass) yielded per projectile hit — the 'minor scrap' trickle.")]
|
[Tooltip("Scrap (Biomass) yielded per projectile hit — the 'minor scrap' trickle.")]
|
||||||
[Min(1f)] public float ScrapPerHit = 2f;
|
[Min(1f)] public float ScrapPerHit = 2f;
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ namespace ProjectM.Server
|
|||||||
public partial struct RoomFieldSystem : ISystem
|
public partial struct RoomFieldSystem : ISystem
|
||||||
{
|
{
|
||||||
/// <summary>Max clutter pieces per room — cosmetic ghosts still cost relevancy, keep the dressing light.</summary>
|
/// <summary>Max clutter pieces per room — cosmetic ghosts still cost relevancy, keep the dressing light.</summary>
|
||||||
const int MaxClutterPerRoom = 6;
|
const int MaxClutterPerRoom = 8;
|
||||||
|
|
||||||
EntityQuery m_RoomTagged;
|
EntityQuery m_RoomTagged;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user