1
0
mirror of https://github.com/tobspr/shapez.io.git synced 2026-03-02 03:39:21 +00:00

Disable automatic rotation for buildings except belts

This commit is contained in:
Tobias Springer
2020-05-10 19:01:33 +02:00
parent d2864e7385
commit a26ef05543
3 changed files with 21 additions and 7 deletions

View File

@@ -97,18 +97,21 @@ export class HUDBuildingPlacer extends BaseHUDPart {
return;
}
if (this.currentMetaBuilding.get() && this.lastDragTile) {
const metaBuilding = this.currentMetaBuilding.get();
if (metaBuilding && this.lastDragTile) {
const oldPos = this.lastDragTile;
const newPos = this.root.camera.screenToWorld(pos).toTileSpace();
if (!oldPos.equals(newPos)) {
const delta = newPos.sub(oldPos);
const angleDeg = Math_degrees(delta.angle());
this.currentBaseRotation = (Math.round(angleDeg / 90) * 90 + 360) % 360;
if (metaBuilding.getRotateAutomaticallyWhilePlacing()) {
const delta = newPos.sub(oldPos);
const angleDeg = Math_degrees(delta.angle());
this.currentBaseRotation = (Math.round(angleDeg / 90) * 90 + 360) % 360;
// Holding alt inverts the placement
if (this.root.app.inputMgr.altIsDown) {
this.currentBaseRotation = (180 + this.currentBaseRotation) % 360;
// Holding alt inverts the placement
if (this.root.app.inputMgr.altIsDown) {
this.currentBaseRotation = (180 + this.currentBaseRotation) % 360;
}
}
// - Using bresenhams algorithmus