Add blood decals, gore, mobile HUD, web start gate + touch/perf tests
Remove tools/fstest.html scratch page used to probe browser fullscreen/orientation APIs. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EznnY8rH2dXhtono1kwsXg
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
extends Node
|
||||
## Stateless façade (autoload `Gore`) for spawning persistent blood splats. Callers just say
|
||||
## Gore.splat(pos, dir, size) at each wound; this routes to the level's BloodDecals pool
|
||||
## (group &"blood_decals"), which the game shell rebuilds into LevelRoot on every load so the
|
||||
## stains die with the level. No-ops when there's no pool (menus, headless tests without a
|
||||
## level) or when the player has turned gore off — so the gate lives in one place.
|
||||
|
||||
|
||||
func splat(world_pos: Vector3, dir: Vector3 = Vector3.ZERO, size: float = 0.6) -> void:
|
||||
if not Settings.gore:
|
||||
return
|
||||
var pool := get_tree().get_first_node_in_group(&"blood_decals")
|
||||
if pool == null:
|
||||
return
|
||||
pool.call(&"splat", world_pos, dir, size * DP.f("blood_scale"))
|
||||
Reference in New Issue
Block a user