Track ui clicks

pull/33/head
tobspr 4 years ago
parent 71d25078a0
commit 2e30347c20

@ -71,7 +71,7 @@ export const globalConfig = {
debug: {
/* dev:start */
fastGameEnter: true,
// fastGameEnter: true,
noArtificialDelays: true,
// disableSavegameWrite: true,
// showEntityBounds: true,

@ -27,7 +27,7 @@ export class MainMenuState extends GameState {
${T.demoBanners.advantages.map(advantage => `<li>${advantage}</li>`).join("")}
</ul>
<a href="https://steam.shapez.io" class="steamLink" target="_blank">Get shapez.io on steam!</a>
<a href="#" class="steamLink" target="_blank">Get shapez.io on steam!</a>
`;
return `
@ -109,6 +109,7 @@ export class MainMenuState extends GameState {
const file = input.files[0];
if (file) {
waitNextFrame().then(() => {
this.app.analytics.trackUiClick("import_savegame");
const closeLoader = this.dialogs.showLoadingDialog();
const reader = new FileReader();
reader.addEventListener("load", event => {
@ -200,6 +201,19 @@ export class MainMenuState extends GameState {
this.trackClicks(qs(".settingsButton"), this.onSettingsButtonClicked);
this.renderSavegames();
const steamLinks = this.htmlElement.querySelectorAll(".steamLink");
steamLinks.forEach(steamLink => {
steamLink.addEventListener("click", this.onSteamLinkClicked.bind(this));
});
}
onSteamLinkClicked(event) {
this.app.analytics.trackUiClick("main_menu_steam_link");
alert("The steam version will launch very soon! (Planned date: Begin of June 2020)");
// window.open("https://steam.shapez.io");
event.preventDefault();
return false;
}
renderSavegames() {
@ -245,6 +259,7 @@ export class MainMenuState extends GameState {
* @param {object} game
*/
resumeGame(game) {
this.app.analytics.trackUiClick("resume_game");
const savegame = this.app.savegameMgr.getSavegameById(game.internalId);
savegame.readAsync().then(() => {
this.moveToState("InGameState", {
@ -282,6 +297,8 @@ export class MainMenuState extends GameState {
* @param {object} game
*/
downloadGame(game) {
this.app.analytics.trackUiClick("download_game");
const savegame = this.app.savegameMgr.getSavegameById(game.internalId);
savegame.readAsync().then(() => {
const data = ReadWriteProxy.serializeObject(savegame.currentData);
@ -294,6 +311,7 @@ export class MainMenuState extends GameState {
}
onPlayButtonClicked() {
this.app.analytics.trackUiClick("start_new_game");
const savegame = this.app.savegameMgr.createNewSavegame();
this.app.analytics.trackUiClick("startgame");

Loading…
Cancel
Save