This commit is contained in:
tobspr 2020-06-28 10:48:49 +02:00
commit eea02bf571
2 changed files with 22 additions and 9 deletions

View File

@ -105,14 +105,15 @@ export class HubGoals extends BasicSerializableObject {
this.createNextGoal(); this.createNextGoal();
// Allow quickly switching goals in dev mode // Allow quickly switching goals in dev mode
if (G_IS_DEV) {
if (G_IS_DEV) { if (G_IS_DEV) {
window.addEventListener("keydown", ev => { window.addEventListener("keydown", ev => {
if (ev.key === "b") { if (ev.key === "b") {
// root is not guaranteed to exist within ~0.5s after loading in
if (this.root && this.root.app && this.root.app.gameAnalytics) {
this.onGoalCompleted(); this.onGoalCompleted();
} }
});
} }
});
} }
} }

View File

@ -322,7 +322,12 @@ export class HUDBuildingPlacerLogic extends BaseHUDPart {
// Try to extract the building // Try to extract the building
const extracted = this.hack_reconstructMetaBuildingAndVariantFromBuilding(contents); const extracted = this.hack_reconstructMetaBuildingAndVariantFromBuilding(contents);
if (!extracted) { // If the building we are picking is the same as the one we have, clear the cursor.
if (
!extracted ||
(extracted.metaBuilding === this.currentMetaBuilding.get() &&
extracted.variant === this.currentVariant.get())
) {
this.currentMetaBuilding.set(null); this.currentMetaBuilding.set(null);
return; return;
} }
@ -558,8 +563,15 @@ export class HUDBuildingPlacerLogic extends BaseHUDPart {
// Figure which points the line visits // Figure which points the line visits
const worldPos = this.root.camera.screenToWorld(mousePosition); const worldPos = this.root.camera.screenToWorld(mousePosition);
const mouseTile = worldPos.toTileSpace(); let endTile = worldPos.toTileSpace();
const startTile = this.lastDragTile; let startTile = this.lastDragTile;
// if the alt key is pressed, reverse belt planner direction by switching start and end tile
if (this.root.keyMapper.getBinding(KEYMAPPINGS.placementModifiers.placeInverse).pressed) {
let tmp = startTile;
startTile = endTile;
endTile = tmp;
}
// Place from start to corner // Place from start to corner
const pathToCorner = this.currentDirectionLockCorner.sub(startTile); const pathToCorner = this.currentDirectionLockCorner.sub(startTile);
@ -580,7 +592,7 @@ export class HUDBuildingPlacerLogic extends BaseHUDPart {
} }
// Place from corner to end // Place from corner to end
const pathFromCorner = mouseTile.sub(this.currentDirectionLockCorner); const pathFromCorner = endTile.sub(this.currentDirectionLockCorner);
const deltaFromCorner = pathFromCorner.normalize().round(); const deltaFromCorner = pathFromCorner.normalize().round();
const lengthFromCorner = Math.round(pathFromCorner.length()); const lengthFromCorner = Math.round(pathFromCorner.length());