Minor improvements
This commit is contained in:
parent
52e05f14c0
commit
8c88d738cc
|
@ -1,43 +1,41 @@
|
|||
import { AnimationFrame } from "./core/animation_frame";
|
||||
import { performanceNow, Math_min } from "./core/builtins";
|
||||
import { BackgroundResourcesLoader } from "./core/background_resources_loader";
|
||||
import { performanceNow } from "./core/builtins";
|
||||
import { IS_MOBILE } from "./core/config";
|
||||
import { GameState } from "./core/game_state";
|
||||
import { GLOBAL_APP, setGlobalApp } from "./core/globals";
|
||||
import { InputDistributor } from "./core/input_distributor";
|
||||
import { Loader } from "./core/loader";
|
||||
import { createLogger, logSection } from "./core/logging";
|
||||
import { StateManager } from "./core/state_manager";
|
||||
import { TrackedState } from "./core/tracked_state";
|
||||
import { getPlatformName, waitNextFrame } from "./core/utils";
|
||||
import { SavegameManager } from "./savegame/savegame_manager";
|
||||
import { Vector } from "./core/vector";
|
||||
import { AdProviderInterface } from "./platform/ad_provider";
|
||||
import { NoAdProvider } from "./platform/ad_providers/no_ad_provider";
|
||||
import { AnalyticsInterface } from "./platform/analytics";
|
||||
import { ShapezGameAnalytics } from "./platform/browser/game_analytics";
|
||||
import { GoogleAnalyticsImpl } from "./platform/browser/google_analytics";
|
||||
import { SoundImplBrowser } from "./platform/browser/sound";
|
||||
import { StorageImplBrowser } from "./platform/browser/storage";
|
||||
import { StorageImplBrowserIndexedDB } from "./platform/browser/storage_indexed_db";
|
||||
import { PlatformWrapperImplBrowser } from "./platform/browser/wrapper";
|
||||
import { StorageImplElectron } from "./platform/electron/storage";
|
||||
import { PlatformWrapperImplElectron } from "./platform/electron/wrapper";
|
||||
import { GameAnalyticsInterface } from "./platform/game_analytics";
|
||||
import { SoundInterface } from "./platform/sound";
|
||||
import { StorageInterface } from "./platform/storage";
|
||||
import { PlatformWrapperInterface } from "./platform/wrapper";
|
||||
import { ApplicationSettings } from "./profile/application_settings";
|
||||
import { Vector } from "./core/vector";
|
||||
import { createLogger, logSection } from "./core/logging";
|
||||
import { TrackedState } from "./core/tracked_state";
|
||||
import { IS_MOBILE } from "./core/config";
|
||||
import { BackgroundResourcesLoader } from "./core/background_resources_loader";
|
||||
import { PreloadState } from "./states/preload";
|
||||
import { MainMenuState } from "./states/main_menu";
|
||||
import { InGameState } from "./states/ingame";
|
||||
import { AnalyticsInterface } from "./platform/analytics";
|
||||
import { GoogleAnalyticsImpl } from "./platform/browser/google_analytics";
|
||||
import { Loader } from "./core/loader";
|
||||
import { GameAnalyticsInterface } from "./platform/game_analytics";
|
||||
import { ShapezGameAnalytics } from "./platform/browser/game_analytics";
|
||||
import { queryParamOptions } from "./core/query_parameters";
|
||||
import { NoGameAnalytics } from "./platform/browser/no_game_analytics";
|
||||
import { StorageImplBrowserIndexedDB } from "./platform/browser/storage_indexed_db";
|
||||
import { SettingsState } from "./states/settings";
|
||||
import { KeybindingsState } from "./states/keybindings";
|
||||
import { SavegameManager } from "./savegame/savegame_manager";
|
||||
import { AboutState } from "./states/about";
|
||||
import { PlatformWrapperImplElectron } from "./platform/electron/wrapper";
|
||||
import { StorageImplElectron } from "./platform/electron/storage";
|
||||
import { MobileWarningState } from "./states/mobile_warning";
|
||||
import { ChangelogState } from "./states/changelog";
|
||||
import { InGameState } from "./states/ingame";
|
||||
import { KeybindingsState } from "./states/keybindings";
|
||||
import { MainMenuState } from "./states/main_menu";
|
||||
import { MobileWarningState } from "./states/mobile_warning";
|
||||
import { PreloadState } from "./states/preload";
|
||||
import { SettingsState } from "./states/settings";
|
||||
|
||||
const logger = createLogger("application");
|
||||
|
||||
|
|
|
@ -3,12 +3,13 @@ export const CHANGELOG = [
|
|||
version: "1.1.0",
|
||||
date: "unreleased",
|
||||
entries: [
|
||||
"Allow changing all keybindings, including CTRL, ALT and SHIFT",
|
||||
"Allow holding SHIFT to rotate counter clockwise",
|
||||
"Allow changing all keybindings, including CTRL, ALT and SHIFT (by Dimava)",
|
||||
"Added confirmation when deleting more than 500 buildings at a time",
|
||||
"Added background to toolbar to increase contrast",
|
||||
"Allow placing extractors anywhere again, but they don't work at all if not placed on a resource",
|
||||
"Fix cycling through keybindings selecting locked buildings as well",
|
||||
"Fix cycling through keybindings selecting locked buildings as well (by Dimava)",
|
||||
"There is now a github action, checking all pull requests with eslint. (by mrHedgehog)",
|
||||
],
|
||||
},
|
||||
{
|
||||
|
|
|
@ -131,21 +131,21 @@ export class ReadWriteProxy {
|
|||
}
|
||||
const jsonString = JSON_stringify(compressObject(this.currentData));
|
||||
|
||||
if (!this.app.pageVisible || this.app.unloaded) {
|
||||
logger.log("Saving file sync because in unload handler");
|
||||
const checksum = sha1(jsonString + salt);
|
||||
let compressed = compressionPrefix + compressX64(checksum + jsonString);
|
||||
if (G_IS_DEV && IS_DEBUG) {
|
||||
compressed = jsonString;
|
||||
}
|
||||
// if (!this.app.pageVisible || this.app.unloaded) {
|
||||
// logger.log("Saving file sync because in unload handler");
|
||||
// const checksum = sha1(jsonString + salt);
|
||||
// let compressed = compressionPrefix + compressX64(checksum + jsonString);
|
||||
// if (G_IS_DEV && IS_DEBUG) {
|
||||
// compressed = jsonString;
|
||||
// }
|
||||
|
||||
if (!this.app.storage.writeFileSyncIfSupported(this.filename, compressed)) {
|
||||
return Promise.reject("Failed to write " + this.filename + " sync!");
|
||||
} else {
|
||||
logger.log("📄 Wrote (sync!)", this.filename);
|
||||
return Promise.resolve(compressed);
|
||||
}
|
||||
}
|
||||
// if (!this.app.storage.writeFileSyncIfSupported(this.filename, compressed)) {
|
||||
// return Promise.reject("Failed to write " + this.filename + " sync!");
|
||||
// } else {
|
||||
// logger.log("📄 Wrote (sync!)", this.filename);
|
||||
// return Promise.resolve(compressed);
|
||||
// }
|
||||
// }
|
||||
|
||||
return asyncCompressor
|
||||
.compressFileAsync(jsonString)
|
||||
|
|
|
@ -10,14 +10,13 @@ import {
|
|||
import { clickDetectorGlobals } from "../core/click_detector";
|
||||
import { globalConfig } from "../core/config";
|
||||
import { createLogger } from "../core/logging";
|
||||
import { queryParamOptions } from "../core/query_parameters";
|
||||
import { Rectangle } from "../core/rectangle";
|
||||
import { Signal, STOP_PROPAGATION } from "../core/signal";
|
||||
import { clamp } from "../core/utils";
|
||||
import { mixVector, Vector } from "../core/vector";
|
||||
import { BasicSerializableObject, types } from "../savegame/serialization";
|
||||
import { GameRoot } from "./root";
|
||||
import { KEYMAPPINGS } from "./key_action_mapper";
|
||||
import { GameRoot } from "./root";
|
||||
|
||||
const logger = createLogger("camera");
|
||||
|
||||
|
|
|
@ -95,18 +95,18 @@ export class InGameState extends GameState {
|
|||
}
|
||||
|
||||
onBeforeExit() {
|
||||
logger.log("Saving before quitting");
|
||||
return this.doSave().then(() => {
|
||||
logger.log(this, "Successfully saved");
|
||||
// this.stageDestroyed();
|
||||
});
|
||||
// logger.log("Saving before quitting");
|
||||
// return this.doSave().then(() => {
|
||||
// logger.log(this, "Successfully saved");
|
||||
// // this.stageDestroyed();
|
||||
// });
|
||||
}
|
||||
|
||||
onAppPause() {
|
||||
if (this.stage === stages.s10_gameRunning) {
|
||||
logger.log("Saving because app got paused");
|
||||
this.doSave();
|
||||
}
|
||||
// if (this.stage === stages.s10_gameRunning) {
|
||||
// logger.log("Saving because app got paused");
|
||||
// this.doSave();
|
||||
// }
|
||||
}
|
||||
|
||||
getHasFadeIn() {
|
||||
|
|
|
@ -522,7 +522,7 @@ keybindings:
|
|||
general: Application
|
||||
ingame: Game
|
||||
placement: Placement
|
||||
massSelect: Mass Delete
|
||||
massSelect: Mass Select
|
||||
buildings: Building Shortcuts
|
||||
placementModifiers: Placement Modifiers
|
||||
|
||||
|
@ -565,6 +565,7 @@ keybindings:
|
|||
|
||||
massSelectStart: Hold and drag to start
|
||||
massSelectSelectMultiple: Select multiple areas
|
||||
massSelectCopy: Copy area
|
||||
|
||||
placementDisableAutoOrientation: Disable automatic orientation
|
||||
placeMultiple: Stay in placement mode
|
||||
|
|
Reference in New Issue