Train movement rewrite

This commit is contained in:
2025-02-16 13:06:52 -07:00
parent 01081706b1
commit 9587ce5ae6
3 changed files with 213 additions and 84 deletions

View File

@@ -6,50 +6,85 @@ import { ResourceManager } from "../lib/resources.ts";
export class RedEngine extends TrainCar {
constructor() {
const resources = getContextItem<ResourceManager>("resources");
super(55, resources.get<HTMLImageElement>("snr:sprite/engine")!, 80, 20, {
at: new Vector(0, 60),
width: 80,
height: 20,
});
super(
55,
10,
resources.get<HTMLImageElement>("snr:sprite/engine")!,
80,
20,
{
at: new Vector(0, 60),
width: 80,
height: 20,
},
);
}
}
export class PurpleEngine extends TrainCar {
constructor() {
const resources = getContextItem<ResourceManager>("resources");
super(55, resources.get<HTMLImageElement>("snr:sprite/engine")!, 80, 20, {
at: new Vector(0, 60),
width: 80,
height: 20,
});
super(
55,
10,
resources.get<HTMLImageElement>("snr:sprite/engine")!,
80,
20,
{
at: new Vector(0, 60),
width: 80,
height: 20,
},
);
}
}
export class GreenEngine extends TrainCar {
constructor() {
const resources = getContextItem<ResourceManager>("resources");
super(55, resources.get<HTMLImageElement>("snr:sprite/engine")!, 80, 20, {
at: new Vector(0, 40),
width: 80,
height: 20,
});
super(
55,
10,
resources.get<HTMLImageElement>("snr:sprite/engine")!,
80,
20,
{
at: new Vector(0, 40),
width: 80,
height: 20,
},
);
}
}
export class GrayEngine extends TrainCar {
constructor() {
const resources = getContextItem<ResourceManager>("resources");
super(55, resources.get<HTMLImageElement>("snr:sprite/engine")!, 80, 20, {
at: new Vector(0, 20),
width: 80,
height: 20,
});
super(
55,
10,
resources.get<HTMLImageElement>("snr:sprite/engine")!,
80,
20,
{
at: new Vector(0, 20),
width: 80,
height: 20,
},
);
}
}
export class BlueEngine extends TrainCar {
constructor() {
const resources = getContextItem<ResourceManager>("resources");
super(55, resources.get<HTMLImageElement>("snr:sprite/engine")!, 80, 20, {
at: new Vector(0, 0),
width: 80,
height: 20,
});
super(
55,
10,
resources.get<HTMLImageElement>("snr:sprite/engine")!,
80,
20,
{
at: new Vector(0, 0),
width: 80,
height: 20,
},
);
}
}