summaryrefslogtreecommitdiff
path: root/www/js/menu.js
diff options
context:
space:
mode:
authorAlex Xu <alex_y_xu@yahoo.ca>2013-06-28 22:14:51 -0400
committerAlex Xu <alex_y_xu@yahoo.ca>2013-06-28 22:14:51 -0400
commitfcf62890c9abb994fd2534a44de66def114575da (patch)
tree7cbae92df4a7dd313d1d9befd5828086949e3e54 /www/js/menu.js
parent012ac4ef2f91ed67d36c5e06510cec8c00517de3 (diff)
downloadhtml5ks-fcf62890c9abb994fd2534a44de66def114575da.tar.xz
html5ks-fcf62890c9abb994fd2534a44de66def114575da.zip
commit changes
Diffstat (limited to 'www/js/menu.js')
-rw-r--r--www/js/menu.js85
1 files changed, 55 insertions, 30 deletions
diff --git a/www/js/menu.js b/www/js/menu.js
index ad37964..573dd8d 100644
--- a/www/js/menu.js
+++ b/www/js/menu.js
@@ -1,33 +1,58 @@
-html5ks.menu = {
- mainMenu: function () {
- html5ks.api.stop("music");
- html5ks.api.stop("sound");
- html5ks.api.stop("ambient");
- html5ks.api.window("hide");
- html5ks.api.play("music", "music_menus");
- html5ks.elements.bg.style.background = "url(dump/ui/main/bg-main.png) 0 0 / cover";
- html5ks.elements.mainMenu.style.display = "block";
- },
+(function () {
+ "use strict";
+ html5ks.menu = {
+ mainMenu: function () {
+ html5ks.api.stop("music");
+ html5ks.api.stop("sound");
+ html5ks.api.stop("ambient");
+ html5ks.api.window("hide");
+ html5ks.api.play("music", "music_menus");
+ html5ks.elements.bg.style.background = "url(dump/ui/main/bg-main.png) 0 0 / cover";
+ this.elements.mainMenu.style.display = "block";
+ },
- activeDialog: null,
+ activeDialog: null,
- dialog: function (name) {
- this.activeDialog = html5ks.elements.dialog[name];
- this.activeDialog.style.display = "block";
- html5ks.elements.dialogs.style.display = "block";
- },
+ dialog: function (name) {
+ this.activeDialog = html5ks.elements.dialog[name];
+ this.activeDialog.style.display = "block";
+ html5ks.elements.dialogs.style.display = "block";
+ },
- initEvents: function () {
- document.getElementById("start").addEventListener("click", function () {
- html5ks.elements.mainMenu.style.display = "none";
- html5ks.api.iscene("en_NOP1").then(html5ks.menu.mainMenu);
- }, false);
- document.getElementById("options-button").addEventListener("click", function () {
- html5ks.menu.dialog("options");
- }, false);
- html5ks.elements.dialog.return.addEventListener("click", function (e) {
- html5ks.menu.activeDialog.style.display = "none";
- html5ks.elements.dialogs.style.display = "none";
- }, false);
- }
-};
+ initElements: function () {
+ this.elements = {
+ dialogs: document.getElementById("dialogs"),
+ dialog: {
+ return: document.getElementById("return")
+ },
+ mainMenu: document.getElementById("main-menu"),
+ main: {
+ start: document.getElementById("start"),
+ optionsButton: document.getElementById("options-button"),
+ }
+ };
+ },
+
+ init: function () {
+ this.initElements();
+ this.elements.main.start.addEventListener("click", function () {
+ if (this._imachine_loaded) {
+ this.elements.mainMenu.style.display = "none";
+ html5ks.api.iscene("en_NOP1").then(this.mainMenu.bind(this));
+ }
+ }.bind(this), false);
+ this.elements.main.optionsButton.addEventListener("click", function () {
+ html5ks.menu.dialog("options");
+ }, false);
+ this.elements.dialog.return.addEventListener("click", function (e) {
+ html5ks.menu.activeDialog.style.display = "none";
+ html5ks.elements.dialogs.style.display = "none";
+ }, false);
+ html5ks.fetch("imachine").then(function () {
+ var start = this.elements.main.start;
+ start.className = start.className.replace("button-disabled", "button-enabled");
+ this._imachine_loaded = true;
+ }.bind(this));
+ }
+ };
+}());