Feat/1 movement foundation #5
@@ -0,0 +1,47 @@
|
||||
#!/usr/bin/env bash
|
||||
# Papaya-Shooter test environment bootstrap
|
||||
# shell: bash
|
||||
# Repo root: /home/ai-agent/Papay-Shooter
|
||||
# Usage: bash debug_test_env.sh
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
REPO="/home/ai-agent/Papay-Shooter"
|
||||
ENV_FILE="$REPO/.env_test"
|
||||
|
||||
RED='\033[0;31m'
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[1;33m'
|
||||
NC='\033[0m'
|
||||
|
||||
timestamp() { date '+%Y-%m-%d %H:%M:%S'; }
|
||||
log() { echo -e "[$(timestamp)] $*"; }
|
||||
|
||||
log "===Papaya-Shooter Test Environment Bootstrap==="
|
||||
log "Repo: $REPO"
|
||||
|
||||
if [ -f "$REPO/project.godot" ]; then
|
||||
log -e "${GREEN}Support: Bla project.godot found${NC}"
|
||||
else
|
||||
log -e "${RED}Unsupported: project.godot missing — are you in the right directory?${NC}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
launched_at="$(timestamp)"
|
||||
|
||||
{
|
||||
echo "TEST_LAUNCH_TIME=$launched_at"
|
||||
echo "TEST_LAUNCH_STATUS=READY"
|
||||
} >> "$ENV_FILE"
|
||||
|
||||
cat <<EOF
|
||||
${GREEN}=====[Papaya-Shooter Test Environment]$\boxed{NC}
|
||||
Project : Papaya-Shooter
|
||||
Repo : $REPO
|
||||
Launch : $launched_at
|
||||
Status : READY
|
||||
EOF
|
||||
|
||||
TEST_ENV_READY="READY $launched_at"
|
||||
echo ""
|
||||
echo "TEST_ENV_READY=${TEST_ENV_READY}"
|
||||
@@ -0,0 +1,90 @@
|
||||
[gd_scene load_steps=4 format=3]
|
||||
|
||||
[ext_resource type="Script" path="res://debug/test_level_debug.gd" id="1"]
|
||||
|
||||
[node name="TestLevel" type="Node3D"]
|
||||
|
||||
[node name="DebugRunner" type="Node" parent="."]
|
||||
script = ExtResource("1")
|
||||
|
||||
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
||||
|
||||
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
|
||||
transform = Transform3D(0.92388, -0.25, 0.288675, 0, 0.866025, 0.5, -0.382683, -0.433013, 0.75, 0, 8, 0)
|
||||
light_color = Color(1, 0.95, 0.85, 1)
|
||||
light_energy = 1.0
|
||||
shadow_enabled = true
|
||||
|
||||
[node name="StaticFloor" type="StaticBody3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0)
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="StaticFloor"]
|
||||
shape = SubResource("FloorBox")
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="StaticFloor"]
|
||||
mesh = BoxMesh.new()
|
||||
surface_material_override/0 = StandardMaterial3D.new()
|
||||
|
||||
[node name="WallNorth" type="StaticBody3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3, -15)
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="WallNorth"]
|
||||
shape = BoxShape3D.new()
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="WallNorth"]
|
||||
mesh = BoxMesh.new()
|
||||
surface_material_override/0 = StandardMaterial3D.new()
|
||||
|
||||
[node name="WallEast" type="StaticBody3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15, 3, 0)
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="WallEast"]
|
||||
shape = BoxShape3D.new()
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="WallEast"]
|
||||
mesh = BoxMesh.new()
|
||||
surface_material_override/0 = StandardMaterial3D.new()
|
||||
|
||||
[node name="WallWest" type="StaticBody3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -15, 3, 0)
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="WallWest"]
|
||||
shape = BoxShape3D.new()
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="WallWest"]
|
||||
mesh = BoxMesh.new()
|
||||
surface_material_override/0 = StandardMaterial3D.new()
|
||||
|
||||
[node name="Ramp" type="StaticBody3D" parent="."]
|
||||
transform = Transform3D(0.866025, 0, 0.5, 0, 1, 0, -0.5, 0, 0.866025, -8, -0.4, -2)
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Ramp"]
|
||||
shape = BoxShape3D.new()
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="Ramp"]
|
||||
mesh = BoxMesh.new()
|
||||
surface_material_override/0 = StandardMaterial3D.new()
|
||||
|
||||
[node name="PlayerSpawn" type="Node3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5, 8)
|
||||
|
||||
[node name="UI" type="CanvasLayer" parent="."]
|
||||
|
||||
[node name="SpeedLabel" type="Label" parent="UI"]
|
||||
offset_left = 16.0
|
||||
offset_top = 16.0
|
||||
offset_right = 360.0
|
||||
offset_bottom = 48.0
|
||||
text = "Speed: 0.0 | State: --- | Chain: 0 (+0%)"
|
||||
|
||||
[node name="HelpLabel" type="Label" parent="UI"]
|
||||
offset_left = 16.0
|
||||
offset_top = 52.0
|
||||
offset_right = 580.0
|
||||
offset_bottom = 108.0
|
||||
text = "WASD Move | Sprint=Shift | Slide=Ctrl+S | Double-Jump=Space twice | Dash=L-Shift | Wall-Jump=Jump at a wall"
|
||||
|
||||
[node name="FpsCamera" type="Camera3D" parent="."]
|
||||
current = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.7, 0)
|
||||
fov = 90.0
|
||||
Reference in New Issue
Block a user