7bc241bbe6
Group all raw art by role under art/ (characters, levels, weapons, fx, anim, textures, ui, icons, fonts, hdri, materials), matching the earlier code reorg. Files are snake_case; asset uids are preserved so uid:// refs still resolve, and every res:// path reference is rewritten across scenes, scripts and project.godot. - Move the used assets out of Assets/ Animations/ fonts/ HUD/ HDRI/ Materials/ into art/; remove those dirs. - Materials snake_cased: barrel_metal, barrel_wood, bear_claw_fx, fire. - Delete unreferenced assets: alternate models, empty stub scripts, superseded BEAR_*.tres, marketing/spare PNGs, a spare font weight and the orphan M_Barrel_wood.gdshader. - Blender: drop .blend auto-backups and matador_v01/v02 (+ stale v02 fbx); keep matador_v03 and repoint create_matador_anims.py to it. .gitignore now blocks all Blender/*.blend[0-9] backups. - GLB Extract-Textures siblings (art/levels/*.png) kept and tracked. - Document the art/ layout in CLAUDE.md. Headless suite green; menu and gameplay shell boot clean. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FBbGXbzg3SD6ZBSadPPF5H
16 lines
487 B
GDScript
16 lines
487 B
GDScript
extends Node3D
|
|
## Lobby geometry — watches the run state and raises the bear-gate grid once the arena has
|
|
## been cleared. The DP flag stays as a designer override for testing the animation.
|
|
|
|
var bear_gate_open := false
|
|
|
|
|
|
func _process(_delta: float) -> void:
|
|
if bear_gate_open:
|
|
return
|
|
if Run.bear_gate_open() or DP.b("gate_unlocked_bear"):
|
|
bear_gate_open = true
|
|
$AnimationPlayer.play("Gate_opening")
|
|
if DP.b("gamepad_vibration"):
|
|
Input.start_joy_vibration(0, 0.5, .5, 7)
|