- Go 1.27 + Ebitengine v2.10, intern upplösning 320x180 med heltalsskalning - internal/res (resursuppslag), internal/rng (seedad slump), internal/level (banformat, validering, BFS-lösbarhet) med tester; internal/archtest kontrollerar att bara presentationslagret beror på Ebitengine - tools/build: debug -> build/debug/, release -> build/release/<os>-<arch>/ med resources/ bredvid binären; Windows korsbyggs utan C-verktyg - VS Code tasks (build/test/release) och launch (dlv) - Första banan 001-flygplatsen, sv/en-texter, skyltordbok, placeholder-sprite - doc/: spelbeskrivning (renskriven), mål och tester, roadmap med teknikval (M0–M12), plan.md; README med bygg- och beroendeinformation Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
82 lines
2.6 KiB
JSON
82 lines
2.6 KiB
JSON
{
|
|
// Byggtasks. Allt går via `go run ./tools/build` så att samma kommandon
|
|
// fungerar på Linux och Windows utan make/bash.
|
|
// Ctrl+Shift+B = "build" (debug). Terminal > Run Task… för övriga.
|
|
"version": "2.0.0",
|
|
"tasks": [
|
|
{
|
|
"label": "build",
|
|
"detail": "Debug-bygge → build/debug/ (standard, Ctrl+Shift+B)",
|
|
"type": "process",
|
|
"command": "go",
|
|
"args": ["run", "./tools/build", "-mode", "debug"],
|
|
"group": { "kind": "build", "isDefault": true },
|
|
"problemMatcher": ["$go"],
|
|
"presentation": { "reveal": "silent", "clear": true }
|
|
},
|
|
{
|
|
"label": "build: release (linux-amd64)",
|
|
"detail": "Release-bygge → build/release/linux-amd64/",
|
|
"type": "process",
|
|
"command": "go",
|
|
"args": ["run", "./tools/build", "-mode", "release", "-os", "linux", "-arch", "amd64"],
|
|
"group": "build",
|
|
"problemMatcher": ["$go"],
|
|
"presentation": { "clear": true }
|
|
},
|
|
{
|
|
"label": "build: release (windows-amd64)",
|
|
"detail": "Release-bygge (korsbygge, ren Go) → build/release/windows-amd64/",
|
|
"type": "process",
|
|
"command": "go",
|
|
"args": ["run", "./tools/build", "-mode", "release", "-os", "windows", "-arch", "amd64"],
|
|
"group": "build",
|
|
"problemMatcher": ["$go"],
|
|
"presentation": { "clear": true }
|
|
},
|
|
{
|
|
"label": "build: release (alla plattformar)",
|
|
"detail": "Linux + Windows release-byggen",
|
|
"dependsOn": ["build: release (linux-amd64)", "build: release (windows-amd64)"],
|
|
"dependsOrder": "sequence",
|
|
"group": "build",
|
|
"problemMatcher": []
|
|
},
|
|
{
|
|
"label": "run: debug",
|
|
"detail": "Bygg debug och starta spelet (utan debugger)",
|
|
"type": "process",
|
|
"command": "go",
|
|
"args": ["run", "./tools/build", "-mode", "debug", "-run"],
|
|
"problemMatcher": ["$go"],
|
|
"presentation": { "clear": true }
|
|
},
|
|
{
|
|
"label": "test",
|
|
"detail": "go test ./...",
|
|
"type": "process",
|
|
"command": "go",
|
|
"args": ["test", "./..."],
|
|
"group": { "kind": "test", "isDefault": true },
|
|
"problemMatcher": ["$go"],
|
|
"presentation": { "clear": true }
|
|
},
|
|
{
|
|
"label": "test: verbose med race-detektor",
|
|
"type": "process",
|
|
"command": "go",
|
|
"args": ["test", "-race", "-v", "./..."],
|
|
"group": "test",
|
|
"problemMatcher": ["$go"],
|
|
"presentation": { "clear": true }
|
|
},
|
|
{
|
|
"label": "vet",
|
|
"type": "process",
|
|
"command": "go",
|
|
"args": ["vet", "./..."],
|
|
"problemMatcher": ["$go"]
|
|
}
|
|
]
|
|
}
|