wgge 0.1.12 → 0.1.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,9 +2,9 @@ import DomRenderer from "../core/renderer/dom/DomRenderer";
2
2
  import EditorRenderer from "../editor/EditorRenderer";
3
3
  import NullableNodeRenderer from "../core/renderer/generic/NullableNodeRenderer";
4
4
  import GlobalAudioRenderer from "../core/audio/global/GlobalAudioRenderer";
5
- import MenuRenderer from "./menu/MenuRenderer";
6
5
  import ConditionalNodeRenderer from "../core/renderer/generic/ConditionalNodeRenderer";
7
6
  import DOMHelper from "../core/helper/DOMHelper";
7
+ import MainMenuRenderer from "./menu/MainMenuRenderer";
8
8
 
9
9
  export default class GameRenderer extends DomRenderer {
10
10
 
@@ -31,7 +31,7 @@ export default class GameRenderer extends DomRenderer {
31
31
  new NullableNodeRenderer(
32
32
  this.game,
33
33
  this.model.menu,
34
- (m) => new MenuRenderer(this.game, m, this.menuLayer)
34
+ (m) => new MainMenuRenderer(this.game, m, this.menuLayer)
35
35
  )
36
36
  );
37
37
 
@@ -0,0 +1,37 @@
1
+ import DomRenderer from "../../core/renderer/dom/DomRenderer";
2
+ import CollectionRenderer from "../../core/renderer/generic/CollectionRenderer";
3
+ import MenuItemRenderer from "./item/MenuItemRenderer";
4
+ import DOMHelper from "../../core/helper/DOMHelper";
5
+
6
+ export default class MainMenuRenderer extends DomRenderer {
7
+
8
+ /**
9
+ * @type MenuModel
10
+ */
11
+ model;
12
+
13
+ constructor(game, model, dom) {
14
+ super(game, model, dom);
15
+
16
+ this.model = model;
17
+
18
+ this.addChild(
19
+ new CollectionRenderer(
20
+ this.game,
21
+ this.model.items,
22
+ (m) => new MenuItemRenderer(this.game, m, this.items)
23
+ )
24
+ );
25
+ }
26
+
27
+ activateInternal() {
28
+ this.container = this.addElement('div', 'main-menu-layer');
29
+ this.paper = DOMHelper.createElement(this.container, 'div', 'main-menu paper');
30
+ this.inner = DOMHelper.createElement(this.paper, 'div', 'inner p-3');
31
+ this.items = DOMHelper.createElement(this.inner, 'div', 'items m-3');
32
+ }
33
+
34
+ deactivateInternal() {
35
+ this.removeElement(this.container);
36
+ }
37
+ }
@@ -1,7 +1,6 @@
1
1
  import DomRenderer from "../../core/renderer/dom/DomRenderer";
2
2
  import CollectionRenderer from "../../core/renderer/generic/CollectionRenderer";
3
3
  import MenuItemRenderer from "./item/MenuItemRenderer";
4
- import DOMHelper from "../../core/helper/DOMHelper";
5
4
 
6
5
  export default class MenuRenderer extends DomRenderer {
7
6
 
@@ -19,16 +18,14 @@ export default class MenuRenderer extends DomRenderer {
19
18
  new CollectionRenderer(
20
19
  this.game,
21
20
  this.model.items,
22
- (m) => new MenuItemRenderer(this.game, m, this.items)
21
+ (m) => new MenuItemRenderer(this.game, m, this.container)
23
22
  )
24
23
  );
25
24
  }
26
25
 
27
26
  activateInternal() {
28
- this.container = this.addElement('div', 'main-menu-layer');
29
- this.paper = DOMHelper.createElement(this.container, 'div', 'main-menu paper');
30
- this.inner = DOMHelper.createElement(this.paper, 'div', 'inner p-3');
31
- this.items = DOMHelper.createElement(this.inner, 'div', 'items m-3');
27
+ this.container = this.addElement('div', 'menu');
28
+
32
29
  }
33
30
 
34
31
  deactivateInternal() {
@@ -15,7 +15,7 @@ export default class MenuItemRenderer extends DomRenderer {
15
15
  }
16
16
 
17
17
  activateInternal() {
18
- this.container = this.addElement('h2', 'item');
18
+ this.container = this.addElement('div', 'item');
19
19
  this.container.addEventListener(
20
20
  'click',
21
21
  (e) => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wgge",
3
- "version": "0.1.12",
3
+ "version": "0.1.13",
4
4
  "description": "Web GL Game Engine",
5
5
  "main": "index.js",
6
6
  "dependencies": {
@@ -6,6 +6,9 @@
6
6
  @gold: #e0b050;
7
7
  @red: darkred;
8
8
  @white: #e0e0e0;
9
+ @light-gray: #a0a0a0;
10
+ @gray: #5a5a5a;
11
+ @dark-gray: #2a2a2a;
9
12
  @black: rgb(0, 0, 0);
10
13
  @transparent-black: rgba(0, 0, 0, 0.7);
11
14
 
@@ -66,8 +69,12 @@ h1, h2, h3, h4 {
66
69
  font-size: @font-size-extra-small;
67
70
  }
68
71
 
69
- .default-cursor {
70
- //cursor: uri('img/cursor/cursor.png'), default;
72
+ .cursor-default {
73
+ cursor: default;
74
+ }
75
+
76
+ .cursor-pointer {
77
+ cursor: pointer;
71
78
  }
72
79
 
73
80
  .info-float {
@@ -141,8 +148,23 @@ h1, h2, h3, h4 {
141
148
  }
142
149
  }
143
150
 
151
+ .menu {
152
+ .decor-text();
153
+
154
+ text-align: center;
155
+ color: @gray;
156
+
157
+ .item {
158
+ .cursor-pointer();
159
+
160
+ &:hover {
161
+ color: @light-gray;
162
+ }
163
+ }
164
+ }
165
+
144
166
  .savegame-layer {
145
- .default-cursor();
167
+ .cursor-default();
146
168
  .normal-text();
147
169
  color: @dark-brown;
148
170