M2: tåg med tidtabell, spärrar med kort, skyltar, vinst/förlust
All checks were successful
release / build-release (push) Successful in 1m35s
All checks were successful
release / build-release (push) Successful in 1m35s
- level: Schedule (ankomst/intervall/uppehåll) med Status(t), spårnummer, avgift, skylttexter per i-ruta, Path (BFS) och UngatedPlatforms – regeln att perronger bara nås via spärrar testas för alla banor - sim.Run: klocka, tågkort (saldo dras vid spärr, tomt kort stoppas), ombordstigning med Enter när tåget är inne, vinst/förlust; headless bot-test klarar bana 001 och förlorar på fel tåg - game: perronginfo (avgår om / nästa tåg om), skyltruta, nekad spärr, tågvagn som ritas när tåget är inne, inforutan flyttas upp när spelaren står nära nederkanten; resultat med spärrpassager och saldo - bana 001 ombyggd så spärrarna är flaskhalsar; bana 002 omgenererad med spärrar runt perrongerna och skylttexter - tools/shots räknar ut vägar med BFS; skriptkommandot waittrain - docs/README/wiki uppdaterade med nya bilder Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
// go run ./tools/genart
|
||||
//
|
||||
// Skriver resources/sprites/tiles.png (en remsa 16×16-rutor i ordningen
|
||||
// vägg, golv, start, perrong, spärr, automat, skylt) och
|
||||
// vägg, golv, start, perrong, spärr, automat, skylt, tågvagn) och
|
||||
// resources/sprites/player.png (3 bildrutor × 4 riktningar: ner, upp,
|
||||
// vänster, höger; kolumn 0 = stilla, 1–2 = gå). Ritas med enkla rektanglar
|
||||
// så att allt är deterministiskt och lätt att justera.
|
||||
@@ -33,6 +33,7 @@ var (
|
||||
skin, hair, capC, capDark = rgb(240, 200, 160), rgb(60, 40, 30), rgb(228, 59, 68), rgb(170, 40, 50)
|
||||
jacket, jacketDark = rgb(44, 232, 245), rgb(30, 170, 185)
|
||||
pants, shoe, eye = rgb(38, 43, 68), rgb(255, 255, 255), rgb(38, 43, 68)
|
||||
trainBody, trainStripe = rgb(230, 234, 240), rgb(228, 59, 68)
|
||||
)
|
||||
|
||||
type canvas struct {
|
||||
@@ -109,6 +110,18 @@ var tiles = []func(canvas){
|
||||
c.rect(3, 3, 10, 1, white)
|
||||
c.rect(3, 5, 6, 1, white)
|
||||
},
|
||||
func(c canvas) { // tågvagn (ritas på rutan bortom perrongkanten när tåget är inne)
|
||||
c.rect(0, 0, 16, 16, wallDark)
|
||||
c.rect(0, 2, 16, 12, trainBody)
|
||||
c.rect(0, 2, 16, 1, metalDark)
|
||||
c.rect(0, 9, 16, 2, trainStripe)
|
||||
for _, x := range []int{1, 5, 12} {
|
||||
c.rect(x, 4, 3, 4, screenC)
|
||||
}
|
||||
c.rect(9, 4, 2, 9, metalDark) // dörr
|
||||
c.rect(2, 14, 3, 2, boxDark) // hjul
|
||||
c.rect(11, 14, 3, 2, boxDark)
|
||||
},
|
||||
}
|
||||
|
||||
// player ritar en figur som tittar åt facing (0 ner, 1 upp, 2 vänster, 3 höger)
|
||||
|
||||
Reference in New Issue
Block a user