wgge 0.1.36 → 1.0.1

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.
Files changed (121) hide show
  1. package/README.MD +9 -9
  2. package/bin/deploy.cmd +1 -1
  3. package/core/ActivatedTreeNode.js +187 -187
  4. package/core/Collection.js +156 -156
  5. package/core/Dictionary.js +83 -83
  6. package/core/animation/AnimatedRotation.js +44 -44
  7. package/core/animation/AnimatedValue.js +33 -33
  8. package/core/animation/AnimatedVector2.js +35 -35
  9. package/core/animation/ProgressRotation.js +40 -40
  10. package/core/animation/ProgressValue.js +30 -30
  11. package/core/animation/ProgressVector2.js +23 -23
  12. package/core/audio/AudioModel.js +36 -36
  13. package/core/audio/AudioRenderer.js +120 -120
  14. package/core/audio/global/GlobalAudioModel.js +88 -88
  15. package/core/audio/global/GlobalAudioRenderer.js +108 -108
  16. package/core/controller/AnimationController.js +37 -37
  17. package/core/controller/AnimationDelayController.js +56 -56
  18. package/core/controller/AnimationFloatController.js +39 -39
  19. package/core/controller/AnimationRotationVector2Controller.js +45 -45
  20. package/core/controller/AnimationVector2Controller.js +39 -39
  21. package/core/controller/CollectionController.js +47 -47
  22. package/core/controller/ConditionalNodeController.js +51 -51
  23. package/core/controller/ControllerBase.js +64 -64
  24. package/core/controller/ControllerWithSaveGame.js +27 -27
  25. package/core/controller/ControllerWithTimeout.js +10 -10
  26. package/core/controller/NullableNodeController.js +35 -35
  27. package/core/controller/TimeoutController.js +26 -26
  28. package/core/helper/ArrayHelper.js +19 -19
  29. package/core/helper/DOMHelper.js +167 -167
  30. package/core/helper/HttpHelper.js +41 -41
  31. package/core/helper/ImageHelper.js +36 -36
  32. package/core/helper/NumberHelper.js +28 -28
  33. package/core/helper/ObjectHelper.js +10 -10
  34. package/core/helper/StringHelper.js +59 -59
  35. package/core/model/ModelBase.js +99 -99
  36. package/core/model/ObjectModel.js +100 -100
  37. package/core/model/collection/ModelNodeCollection.js +238 -238
  38. package/core/model/collection/table/IdentifiedModelNode.js +24 -24
  39. package/core/model/collection/table/ModelNodeTable.js +53 -53
  40. package/core/model/event/ChangeEvent.js +24 -24
  41. package/core/model/event/NodeWithEvents.js +37 -37
  42. package/core/model/template/TemplateNode.js +45 -45
  43. package/core/model/value/BoolValue.js +17 -17
  44. package/core/model/value/CapacityValue.js +49 -49
  45. package/core/model/value/DirtyValue.js +66 -66
  46. package/core/model/value/FloatValue.js +12 -12
  47. package/core/model/value/IntValue.js +32 -32
  48. package/core/model/value/NullableNode.js +71 -71
  49. package/core/model/vector/Quaternion.js +86 -86
  50. package/core/model/vector/Rotation.js +61 -61
  51. package/core/model/vector/Vector2.js +178 -178
  52. package/core/renderer/RendererBase.js +46 -46
  53. package/core/renderer/canvas/CanvasRenderer.js +132 -132
  54. package/core/renderer/canvas/ImageCanvasRenderer.js +59 -59
  55. package/core/renderer/canvas/ImageViewRenderer.js +42 -42
  56. package/core/renderer/dom/DirtyValueRenderer.js +36 -36
  57. package/core/renderer/dom/DomRenderer.js +32 -32
  58. package/core/renderer/dom/ImageDomRenderer.js +41 -41
  59. package/core/renderer/dom/Vector2Renderer.js +36 -36
  60. package/core/renderer/generic/CollectionRenderer.js +50 -50
  61. package/core/renderer/generic/ConditionalNodeRenderer.js +57 -57
  62. package/core/renderer/generic/NullableNodeRenderer.js +43 -43
  63. package/core/renderer/generic/SwitchController.js +34 -34
  64. package/core/renderer/generic/SwitchRenderer.js +34 -34
  65. package/editor/EditorController.js +134 -134
  66. package/editor/EditorModel.js +38 -38
  67. package/editor/EditorRenderer.js +116 -116
  68. package/editor/form/NodeFormRenderer.js +180 -180
  69. package/editor/table/TableRenderer.js +123 -123
  70. package/editor/table/lookup/TableLookupRenderer.js +120 -120
  71. package/editor/table/row/TableRowRenderer.js +98 -98
  72. package/game/GameController.js +136 -136
  73. package/game/GameModel.js +73 -73
  74. package/game/GameRenderer.js +108 -108
  75. package/game/controls/ControlsController.js +92 -92
  76. package/game/controls/ControlsModel.js +64 -64
  77. package/game/menu/MainMenuRenderer.js +37 -37
  78. package/game/menu/MenuModel.js +25 -25
  79. package/game/menu/MenuRenderer.js +34 -34
  80. package/game/menu/item/MenuItemModel.js +31 -31
  81. package/game/menu/item/MenuItemRenderer.js +48 -48
  82. package/game/resources/ResourcesModel.js +26 -26
  83. package/game/resources/assets/AssetCache.js +203 -203
  84. package/game/resources/assets/loader/AssetLoader.js +56 -56
  85. package/game/resources/assets/loader/AudioLoader.js +15 -15
  86. package/game/resources/assets/loader/ImageLoader.js +15 -15
  87. package/game/resources/image/DualImageModel.js +34 -34
  88. package/game/resources/image/ImageModel.js +24 -24
  89. package/game/resources/image/ImageViewModel.js +106 -106
  90. package/game/save/SaveGameController.js +21 -21
  91. package/game/save/SaveGameModel.js +5 -5
  92. package/game/save/SaveGameRenderer.js +17 -17
  93. package/game/save/editor/SaveGameEditorRenderer.js +17 -17
  94. package/index.html +42 -42
  95. package/index.js +72 -73
  96. package/package.json +28 -35
  97. package/style/basic/editor.less +290 -290
  98. package/style/basic/game.less +171 -171
  99. package/style/style.less +3 -3
  100. package/webpack.config.js +29 -29
  101. package/core/animation/3d/AnimatedVector3.js +0 -35
  102. package/core/animation/3d/AnimationHelper.js +0 -103
  103. package/core/animation/3d/ProgressVector3.js +0 -26
  104. package/core/helper/GUIHelper.js +0 -53
  105. package/core/model/vector/Vector3.js +0 -107
  106. package/core/particles/ParticleController.js +0 -35
  107. package/core/particles/ParticleModel.js +0 -68
  108. package/core/particles/ParticleRenderer.js +0 -53
  109. package/core/particles/generator/ParticleGeneratorController.js +0 -70
  110. package/core/particles/generator/ParticleGeneratorModel.js +0 -76
  111. package/core/particles/generator/ParticleGeneratorRenderer.js +0 -27
  112. package/core/renderer/svg/SvgRenderer.js +0 -139
  113. package/core/renderer/three/ThreeRenderer.js +0 -17
  114. package/editor/material/MaterialPreviewRenderer.js +0 -136
  115. package/game/resources/3d/3DModel.js +0 -30
  116. package/game/resources/assets/loader/GlbLoader.js +0 -16
  117. package/game/resources/assets/loader/MaterialLoader.js +0 -50
  118. package/game/resources/assets/loader/Model3dAnimationLoader.js +0 -28
  119. package/game/resources/assets/loader/Model3dLoader.js +0 -26
  120. package/game/resources/assets/loader/SpriteLoader.js +0 -40
  121. package/game/resources/material/MaterialModel.js +0 -69
package/README.MD CHANGED
@@ -1,9 +1,9 @@
1
- # WEGGE
2
-
3
- ## Publish
4
-
5
- Change version in `package.json`.
6
-
7
- Then run:
8
-
9
- npm publish
1
+ # WEGGE
2
+
3
+ ## Publish
4
+
5
+ Change version in `package.json`.
6
+
7
+ Then run:
8
+
9
+ npm publish
package/bin/deploy.cmd CHANGED
@@ -1 +1 @@
1
- npm publish
1
+ npm publish
@@ -1,187 +1,187 @@
1
- import NumberHelper from "./helper/NumberHelper";
2
-
3
- export default class ActivatedTreeNode {
4
-
5
- /**
6
- * @type ActivatedTreeNode[]
7
- */
8
- children;
9
-
10
- /**
11
- * @type ActivatedTreeNode
12
- */
13
- parent;
14
-
15
- /**
16
- * @type boolean
17
- */
18
- isActivated;
19
-
20
- /**
21
- *
22
- * @type {[{param}]}
23
- * @type param.node {ModelNode}
24
- * @type param.event {string}
25
- * @type param.handler {(ep) => any}
26
- */
27
- autoRegisterEvents = null;
28
-
29
- constructor() {
30
- this.isActivated = false;
31
- this.parent = null;
32
- this.children = [];
33
- }
34
-
35
- isRoot() {
36
- return (this.parent === null);
37
- }
38
-
39
- findRoot() {
40
- return (this.isRoot()) ? this : this.parent.findRoot();
41
- }
42
-
43
- /**
44
- *
45
- * @param node ActivatedTreeNode
46
- * @returns ActivatedTreeNode
47
- */
48
- addChild(node) {
49
- node.parent = this;
50
- this.children.push(node);
51
- if (this.isActivated) {
52
- node.activate();
53
- }
54
- return node;
55
- }
56
-
57
- hasChildren() {
58
- return this.children.length > 0;
59
- }
60
-
61
- removeChild(node) {
62
- const index = this.children.indexOf(node);
63
- if (index >= 0) {
64
- this.children.splice(index, 1);
65
- node.deactivate();
66
- node.parent = null;
67
- return node;
68
- }
69
- for (let i = 0, max = this.children.length; i < max; i++) {
70
- const child = this.children[i];
71
- const result = child.removeChild(node);
72
- if (result) {
73
- return result;
74
- }
75
- }
76
- }
77
-
78
- removeMyself() {
79
- if (this.parent) {
80
- this.parent.removeChild(this);
81
- } else {
82
- this.deactivate();
83
- }
84
- }
85
-
86
- resetChildren() {
87
- this.children.forEach((child) => child.deactivate());
88
- this.children = [];
89
- }
90
-
91
- forEach(func) {
92
- func(this);
93
- for (let i = 0, max = this.children.length; i < max; i++) {
94
- const child = this.children[i];
95
- child.forEach(func);
96
- }
97
- }
98
-
99
- activate() {
100
- if (!this.isActivated) {
101
- this.activateInternal();
102
-
103
- if (this.autoRegisterEvents) {
104
- this.autoRegisterEvents.forEach((event) => {
105
- event.node.addEventListener(event.name, event.handler);
106
- if (event.runOnActivate) {
107
- event.handler();
108
- }
109
- });
110
- }
111
-
112
- this.children.forEach((c) => c.activate());
113
- this.isActivated = true;
114
-
115
- this.afterActivatedInternal();
116
- }
117
- }
118
-
119
- activateInternal() {
120
-
121
- }
122
-
123
- afterActivatedInternal() {
124
-
125
- }
126
-
127
- deactivate() {
128
- if (this.isActivated) {
129
- if (this.autoRegisterEvents) {
130
- this.autoRegisterEvents.forEach((event) => {
131
- event.node.removeEventListener(event.name, event.handler);
132
- });
133
- }
134
-
135
- this.children.forEach((c) => c.deactivate());
136
- this.deactivateInternal();
137
- this.isActivated = false;
138
- }
139
- }
140
-
141
- deactivateInternal() {
142
-
143
- }
144
-
145
- /**
146
- *
147
- * @param node ModelNode
148
- * @param event string
149
- * @param handler (param) => any
150
- * @param runOnActivate bool
151
- */
152
- addAutoEvent(node, event, handler, runOnActivate = false) {
153
- if ((!node) || typeof node.addEventListener !== 'function') {
154
- console.error('Node with addEventListener was not provided!', node);
155
- }
156
- if (!this.autoRegisterEvents) {
157
- this.autoRegisterEvents = [];
158
- }
159
- this.autoRegisterEvents.push({node: node, name: event, handler: handler, runOnActivate: runOnActivate});
160
- }
161
-
162
- addAutoEvents(node, events, handler, runOnActivate = false) {
163
- events.forEach((event) => this.addAutoEvent(node, event, handler, runOnActivate));
164
- }
165
-
166
- addAutoEventMultiple(nodes, event, handler, runOnActivate = false) {
167
- if (!Array.isArray(nodes)) {
168
- console.error('Node array was not provided!');
169
- }
170
- nodes.forEach((n, i) => this.addAutoEvent(n, event, handler, i === 0 && runOnActivate));
171
- }
172
-
173
- addAutoEventsMultiple(nodes, events, handler, runOnActivate = false) {
174
- events.forEach((event) => this.addAutoEventMultiple(nodes, event, handler, runOnActivate));
175
- }
176
-
177
- removeAutoEvent(node, name, handler) {
178
- if (!this.autoRegisterEvents) {
179
- return;
180
- }
181
- const event = this.autoRegisterEvents.find((e) => e.handler === handler && e.name === name && e.node === node);
182
- if (event) {
183
- NumberHelper.arrayRemove(this.autoRegisterEvents, event);
184
- }
185
- }
186
-
187
- }
1
+ import NumberHelper from "./helper/NumberHelper";
2
+
3
+ export default class ActivatedTreeNode {
4
+
5
+ /**
6
+ * @type ActivatedTreeNode[]
7
+ */
8
+ children;
9
+
10
+ /**
11
+ * @type ActivatedTreeNode
12
+ */
13
+ parent;
14
+
15
+ /**
16
+ * @type boolean
17
+ */
18
+ isActivated;
19
+
20
+ /**
21
+ *
22
+ * @type {[{param}]}
23
+ * @type param.node {ModelNode}
24
+ * @type param.event {string}
25
+ * @type param.handler {(ep) => any}
26
+ */
27
+ autoRegisterEvents = null;
28
+
29
+ constructor() {
30
+ this.isActivated = false;
31
+ this.parent = null;
32
+ this.children = [];
33
+ }
34
+
35
+ isRoot() {
36
+ return (this.parent === null);
37
+ }
38
+
39
+ findRoot() {
40
+ return (this.isRoot()) ? this : this.parent.findRoot();
41
+ }
42
+
43
+ /**
44
+ *
45
+ * @param node ActivatedTreeNode
46
+ * @returns ActivatedTreeNode
47
+ */
48
+ addChild(node) {
49
+ node.parent = this;
50
+ this.children.push(node);
51
+ if (this.isActivated) {
52
+ node.activate();
53
+ }
54
+ return node;
55
+ }
56
+
57
+ hasChildren() {
58
+ return this.children.length > 0;
59
+ }
60
+
61
+ removeChild(node) {
62
+ const index = this.children.indexOf(node);
63
+ if (index >= 0) {
64
+ this.children.splice(index, 1);
65
+ node.deactivate();
66
+ node.parent = null;
67
+ return node;
68
+ }
69
+ for (let i = 0, max = this.children.length; i < max; i++) {
70
+ const child = this.children[i];
71
+ const result = child.removeChild(node);
72
+ if (result) {
73
+ return result;
74
+ }
75
+ }
76
+ }
77
+
78
+ removeMyself() {
79
+ if (this.parent) {
80
+ this.parent.removeChild(this);
81
+ } else {
82
+ this.deactivate();
83
+ }
84
+ }
85
+
86
+ resetChildren() {
87
+ this.children.forEach((child) => child.deactivate());
88
+ this.children = [];
89
+ }
90
+
91
+ forEach(func) {
92
+ func(this);
93
+ for (let i = 0, max = this.children.length; i < max; i++) {
94
+ const child = this.children[i];
95
+ child.forEach(func);
96
+ }
97
+ }
98
+
99
+ activate() {
100
+ if (!this.isActivated) {
101
+ this.activateInternal();
102
+
103
+ if (this.autoRegisterEvents) {
104
+ this.autoRegisterEvents.forEach((event) => {
105
+ event.node.addEventListener(event.name, event.handler);
106
+ if (event.runOnActivate) {
107
+ event.handler();
108
+ }
109
+ });
110
+ }
111
+
112
+ this.children.forEach((c) => c.activate());
113
+ this.isActivated = true;
114
+
115
+ this.afterActivatedInternal();
116
+ }
117
+ }
118
+
119
+ activateInternal() {
120
+
121
+ }
122
+
123
+ afterActivatedInternal() {
124
+
125
+ }
126
+
127
+ deactivate() {
128
+ if (this.isActivated) {
129
+ if (this.autoRegisterEvents) {
130
+ this.autoRegisterEvents.forEach((event) => {
131
+ event.node.removeEventListener(event.name, event.handler);
132
+ });
133
+ }
134
+
135
+ this.children.forEach((c) => c.deactivate());
136
+ this.deactivateInternal();
137
+ this.isActivated = false;
138
+ }
139
+ }
140
+
141
+ deactivateInternal() {
142
+
143
+ }
144
+
145
+ /**
146
+ *
147
+ * @param node ModelNode
148
+ * @param event string
149
+ * @param handler (param) => any
150
+ * @param runOnActivate bool
151
+ */
152
+ addAutoEvent(node, event, handler, runOnActivate = false) {
153
+ if ((!node) || typeof node.addEventListener !== 'function') {
154
+ console.error('Node with addEventListener was not provided!', node);
155
+ }
156
+ if (!this.autoRegisterEvents) {
157
+ this.autoRegisterEvents = [];
158
+ }
159
+ this.autoRegisterEvents.push({node: node, name: event, handler: handler, runOnActivate: runOnActivate});
160
+ }
161
+
162
+ addAutoEvents(node, events, handler, runOnActivate = false) {
163
+ events.forEach((event) => this.addAutoEvent(node, event, handler, runOnActivate));
164
+ }
165
+
166
+ addAutoEventMultiple(nodes, event, handler, runOnActivate = false) {
167
+ if (!Array.isArray(nodes)) {
168
+ console.error('Node array was not provided!');
169
+ }
170
+ nodes.forEach((n, i) => this.addAutoEvent(n, event, handler, i === 0 && runOnActivate));
171
+ }
172
+
173
+ addAutoEventsMultiple(nodes, events, handler, runOnActivate = false) {
174
+ events.forEach((event) => this.addAutoEventMultiple(nodes, event, handler, runOnActivate));
175
+ }
176
+
177
+ removeAutoEvent(node, name, handler) {
178
+ if (!this.autoRegisterEvents) {
179
+ return;
180
+ }
181
+ const event = this.autoRegisterEvents.find((e) => e.handler === handler && e.name === name && e.node === node);
182
+ if (event) {
183
+ NumberHelper.arrayRemove(this.autoRegisterEvents, event);
184
+ }
185
+ }
186
+
187
+ }