Skip to content

Commit 386e5f6

Browse files
committed
Removed SetupCallbacks and merged with CreateSceneFromObject as its the only method to use it.
Updated CreateSceneFromObject to make it smaller and also now will copy across extra properties and functions defined in the 'extend' block.
1 parent bc28187 commit 386e5f6

3 files changed

Lines changed: 37 additions & 25 deletions

File tree

v3/src/scene/global/GlobalSceneManager.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,6 @@ var GlobalSceneManager = new Class({
7777
payloadComplete: require('./inc/PayloadComplete'),
7878
resume: require('./inc/Resume'),
7979
sendToBack: require('./inc/SendToBack'),
80-
setupCallbacks: require('./inc/SetupCallbacks'),
8180
sleep: require('./inc/Sleep'),
8281
start: require('./inc/Start'),
8382
stop: require('./inc/Stop'),

v3/src/scene/global/inc/CreateSceneFromObject.js

Lines changed: 37 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
var GetValue = require('../../../utils/object/GetValue');
2+
var NOOP = require('../../../utils/NOOP');
13
var Scene = require('../../local/Scene');
24

35
var CreateSceneFromObject = function (key, sceneConfig)
@@ -19,7 +21,41 @@ var CreateSceneFromObject = function (key, sceneConfig)
1921

2022
this.createSceneDisplay(newScene);
2123

22-
return this.setupCallbacks(newScene, sceneConfig);
24+
// Extract callbacks or set NOOP
25+
26+
var defaults = [ 'init', 'preload', 'create', 'shutdown', 'update', 'render' ];
27+
28+
for (var i = 0; i < defaults.length; i++)
29+
{
30+
newScene[defaults[i]] = GetValue(sceneConfig, defaults[i], NOOP);
31+
}
32+
33+
// Now let's move across any other functions or properties that may exist
34+
35+
/*
36+
scene: {
37+
preload: preload,
38+
create: create,
39+
extend: {
40+
hello: 1,
41+
test: 'atari',
42+
addImage: addImage
43+
}
44+
}
45+
*/
46+
47+
if (sceneConfig.hasOwnProperty('extend'))
48+
{
49+
for (var propertyKey in sceneConfig.extend)
50+
{
51+
if (defaults.indexOf(propertyKey) === -1)
52+
{
53+
newScene[propertyKey] = sceneConfig.extend[propertyKey];
54+
}
55+
}
56+
}
57+
58+
return newScene;
2359
};
2460

2561
module.exports = CreateSceneFromObject;

v3/src/scene/global/inc/SetupCallbacks.js

Lines changed: 0 additions & 23 deletions
This file was deleted.

0 commit comments

Comments
 (0)