Skip to content

Commit

Permalink
refactoring
Browse files Browse the repository at this point in the history
  • Loading branch information
newagebegins committed Jun 20, 2012
1 parent 131d51c commit 99d869e
Show file tree
Hide file tree
Showing 7 changed files with 49 additions and 45 deletions.
18 changes: 9 additions & 9 deletions spec/MainMenuSceneSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,15 @@ describe("MainMenuScene", function () {
it("subscribe", function () {
var eventManager = new EventManager();
spyOn(eventManager, 'addSubscriber');
var scene = new MainMenuScene(new SceneManager(), eventManager);
var scene = new MainMenuScene(new SceneManager(eventManager));
expect(eventManager.addSubscriber).toHaveBeenCalledWith(scene, [Keyboard.Event.KEY_PRESSED]);
});

describe("#notify", function () {
describe("Keyboard.Event.KEY_PRESSED", function () {
it("Keyboard.Key.START", function () {
var eventManager = new EventManager();
var scene = new MainMenuScene(new SceneManager(), eventManager);
var scene = new MainMenuScene(new SceneManager(eventManager), eventManager);
spyOn(scene, 'keyPressed');
scene.notify({'name': Keyboard.Event.KEY_PRESSED, 'key': Keyboard.Key.START});
expect(scene.keyPressed).toHaveBeenCalledWith(Keyboard.Key.START);
Expand All @@ -28,7 +28,7 @@ describe("MainMenuScene", function () {
});

function checkKey(key) {
var scene = new MainMenuScene(new SceneManager(), new EventManager());
var scene = new MainMenuScene(new SceneManager(new EventManager()));
spyOn(scene, 'arrived');
scene.keyPressed(key);
expect(scene.arrived).toHaveBeenCalled();
Expand All @@ -37,7 +37,7 @@ describe("MainMenuScene", function () {

describe("#updatePosition", function () {
it("speed - 1", function () {
var scene = new MainMenuScene(new SceneManager(), new EventManager());
var scene = new MainMenuScene(new SceneManager(new EventManager()));
scene.setSpeed(1);
scene.setY(2);
expect(scene.getY()).toEqual(2);
Expand All @@ -50,7 +50,7 @@ describe("MainMenuScene", function () {
});

it("speed - 2", function () {
var scene = new MainMenuScene(new SceneManager(), new EventManager());
var scene = new MainMenuScene(new SceneManager(new EventManager()));
scene.setSpeed(2);
scene.setY(6);
expect(scene.getY()).toEqual(6);
Expand All @@ -61,7 +61,7 @@ describe("MainMenuScene", function () {
});

it("arrived", function () {
var scene = new MainMenuScene(new SceneManager(), new EventManager());
var scene = new MainMenuScene(new SceneManager(new EventManager()));
spyOn(scene, 'arrived');
scene.setSpeed(1);
scene.setY(2);
Expand All @@ -76,7 +76,7 @@ describe("MainMenuScene", function () {

it("main menu controller activate", function () {
var eventManager = new EventManager();
var scene = new MainMenuScene(new SceneManager(), eventManager);
var scene = new MainMenuScene(new SceneManager(eventManager));

var mainMenu = new MainMenu();
var mainMenuController = new MainMenuController(eventManager, mainMenu);
Expand All @@ -94,7 +94,7 @@ describe("MainMenuScene", function () {

it("#arrived", function () {
var eventManager = new EventManager();
var scene = new MainMenuScene(new SceneManager(), eventManager);
var scene = new MainMenuScene(new SceneManager(eventManager));
scene.setY(1);

var cursor = new MainMenuCursor();
Expand All @@ -108,7 +108,7 @@ describe("MainMenuScene", function () {
});

it("#update", function () {
var scene = new MainMenuScene(new SceneManager(), new EventManager());
var scene = new MainMenuScene(new SceneManager(new EventManager()));
var cursor = new MainMenuCursor();
spyOn(cursor, 'update');
scene.setCursor(cursor);
Expand Down
2 changes: 1 addition & 1 deletion spec/SceneManagerSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ describe("SceneManager", function () {
it("#update", function () {
var eventManager = new EventManager();
var manager = new SceneManager(eventManager);
var scene = new MainMenuScene(new SceneManager(), eventManager);
var scene = new MainMenuScene(manager);
spyOn(scene, 'update');
manager.setScene(scene);
manager.update();
Expand Down
14 changes: 7 additions & 7 deletions src/Construction.js
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
function Construction(sceneManager, eventManager) {
Gamefield.call(this, sceneManager, eventManager);
function Construction(sceneManager) {
Gamefield.call(this, sceneManager);

this._eventManager.addSubscriber(this, [Keyboard.Event.KEY_PRESSED]);

new Builder(eventManager);
this._structureManager = new StructureManager(eventManager);
new Builder(this._eventManager);
this._structureManager = new StructureManager(this._eventManager);

this._cursor = new Cursor(eventManager);
this._cursor = new Cursor(this._eventManager);
this._cursor.setZIndex(100);
this._cursor.setPosition(new Point(this._x, this._y));
new CursorController(eventManager, this._cursor);
new CursorController(this._eventManager, this._cursor);

this._spriteSerializerController = new SpriteSerializerController(eventManager, this._structureManager);
this._spriteSerializerController = new SpriteSerializerController(this._eventManager, this._structureManager);

this._createBase();
}
Expand Down
8 changes: 4 additions & 4 deletions src/Gamefield.js
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
function Gamefield(sceneManager, eventManager) {
function Gamefield(sceneManager) {
Rect.call(this);

this._sceneManager = sceneManager;
this._eventManager = eventManager;
this._eventManager = this._sceneManager.getEventManager();

this._x = Globals.UNIT_SIZE;
this._y = Globals.TILE_SIZE;
this._w = 13 * Globals.UNIT_SIZE;
this._h = 13 * Globals.UNIT_SIZE;

this._spriteContainer = new SpriteContainer(eventManager);
this._spriteContainer = new SpriteContainer(this._eventManager);
this._painter = new Painter(this._spriteContainer);
this._updater = new Updater(this._spriteContainer);

var bounds = new Rect(this._x, this._y, this._w, this._h);
new CollisionDetector(eventManager, bounds, this._spriteContainer);
new CollisionDetector(this._eventManager, bounds, this._spriteContainer);
}

Gamefield.subclass(Rect);
Expand Down
38 changes: 19 additions & 19 deletions src/Level.js
Original file line number Diff line number Diff line change
@@ -1,24 +1,24 @@
function Level(sceneManager, eventManager) {
Gamefield.call(this, sceneManager, eventManager);
function Level(sceneManager) {
Gamefield.call(this, sceneManager);

new PlayerTankControllerFactory(eventManager);
new PlayerTankControllerFactory(this._eventManager);

var playerTankFactory = new PlayerTankFactory(eventManager);
var playerTankFactory = new PlayerTankFactory(this._eventManager);
playerTankFactory.setAppearPosition(new Point(this._x + 4 * Globals.UNIT_SIZE, this._y + 12 * Globals.UNIT_SIZE));
playerTankFactory.create();

new BulletFactory(eventManager);
new BulletExplosionFactory(eventManager);
new TankExplosionFactory(eventManager);
new BaseExplosionFactory(eventManager);
new PointsFactory(eventManager);
new Score(eventManager);
this._freezeTimer = new FreezeTimer(eventManager);
new BulletFactory(this._eventManager);
new BulletExplosionFactory(this._eventManager);
new TankExplosionFactory(this._eventManager);
new BaseExplosionFactory(this._eventManager);
new PointsFactory(this._eventManager);
new Score(this._eventManager);
this._freezeTimer = new FreezeTimer(this._eventManager);

this._aiControllersContainer = new AITankControllerContainer(eventManager);
new AITankControllerFactory(eventManager);
this._aiControllersContainer = new AITankControllerContainer(this._eventManager);
new AITankControllerFactory(this._eventManager);

this._enemyFactory = new EnemyFactory(eventManager);
this._enemyFactory = new EnemyFactory(this._eventManager);
this._enemyFactory.setPositions([
new Point(this._x + 6 * Globals.UNIT_SIZE, this._y),
new Point(this._x + 12 * Globals.UNIT_SIZE, this._y),
Expand Down Expand Up @@ -53,19 +53,19 @@ function Level(sceneManager, eventManager) {
]);
baseWallBuilder.setSpriteContainer(this._spriteContainer);

var powerUpHandler = new PowerUpHandler(eventManager);
var powerUpHandler = new PowerUpHandler(this._eventManager);
powerUpHandler.setSpriteContainer(this._spriteContainer);

this._shovelHandler = new ShovelHandler(eventManager);
this._shovelHandler = new ShovelHandler(this._eventManager);
this._shovelHandler.setBaseWallBuilder(baseWallBuilder);

this._pause = new Pause(eventManager);
this._pause = new Pause(this._eventManager);

var lives = new Lives(eventManager);
var lives = new Lives(this._eventManager);
this._livesView = new LivesView(lives);

var map = "Base(224,400);BrickWall(208,416);BrickWall(208,400);BrickWall(208,384);BrickWall(224,384);BrickWall(240,384);BrickWall(256,384);BrickWall(256,400);BrickWall(256,416);BrickWall(64,368);BrickWall(80,368);BrickWall(64,384);BrickWall(80,384);BrickWall(64,336);BrickWall(80,336);BrickWall(64,352);BrickWall(80,352);BrickWall(64,304);BrickWall(80,304);BrickWall(64,320);BrickWall(80,320);BrickWall(128,304);BrickWall(144,304);BrickWall(128,320);BrickWall(144,320);BrickWall(128,336);BrickWall(144,336);BrickWall(128,352);BrickWall(144,352);BrickWall(128,368);BrickWall(144,368);BrickWall(128,384);BrickWall(144,384);BrickWall(192,304);BrickWall(208,304);BrickWall(192,320);BrickWall(208,320);BrickWall(192,272);BrickWall(208,272);BrickWall(192,288);BrickWall(208,288);BrickWall(224,272);BrickWall(240,272);BrickWall(224,288);BrickWall(240,288);BrickWall(256,272);BrickWall(272,272);BrickWall(256,288);BrickWall(272,288);BrickWall(256,304);BrickWall(272,304);BrickWall(256,320);BrickWall(272,320);BrickWall(320,368);BrickWall(336,368);BrickWall(320,384);BrickWall(336,384);BrickWall(320,336);BrickWall(336,336);BrickWall(320,352);BrickWall(336,352);BrickWall(320,304);BrickWall(336,304);BrickWall(320,320);BrickWall(336,320);BrickWall(384,304);BrickWall(400,304);BrickWall(384,320);BrickWall(400,320);BrickWall(384,336);BrickWall(400,336);BrickWall(384,352);BrickWall(400,352);BrickWall(384,368);BrickWall(400,368);BrickWall(384,384);BrickWall(400,384);BrickWall(192,336);BrickWall(208,336);BrickWall(256,336);BrickWall(272,336);BrickWall(128,288);BrickWall(144,288);BrickWall(64,288);BrickWall(80,288);BrickWall(320,288);BrickWall(336,288);BrickWall(384,288);BrickWall(400,288);BrickWall(256,256);BrickWall(272,256);BrickWall(192,256);BrickWall(208,256);SteelWall(32,240);SteelWall(48,240);SteelWall(416,240);SteelWall(432,240);BrickWall(352,240);BrickWall(368,240);BrickWall(320,240);BrickWall(336,240);BrickWall(96,240);BrickWall(112,240);BrickWall(128,240);BrickWall(144,240);BrickWall(32,224);BrickWall(48,224);BrickWall(96,224);BrickWall(112,224);BrickWall(128,224);BrickWall(144,224);BrickWall(320,224);BrickWall(336,224);BrickWall(352,224);BrickWall(368,224);BrickWall(416,224);BrickWall(432,224);BrickWall(192,208);BrickWall(208,208);BrickWall(256,208);BrickWall(272,208);BrickWall(256,192);BrickWall(272,192);BrickWall(192,192);BrickWall(208,192);BrickWall(128,176);BrickWall(144,176);BrickWall(64,176);BrickWall(80,176);BrickWall(320,176);BrickWall(336,176);BrickWall(384,176);BrickWall(400,176);BrickWall(256,144);BrickWall(272,144);BrickWall(192,144);BrickWall(208,144);BrickWall(128,144);BrickWall(144,144);BrickWall(128,160);BrickWall(144,160);BrickWall(64,144);BrickWall(80,144);BrickWall(64,160);BrickWall(80,160);BrickWall(64,112);BrickWall(80,112);BrickWall(64,128);BrickWall(80,128);BrickWall(64,80);BrickWall(80,80);BrickWall(64,96);BrickWall(80,96);BrickWall(64,48);BrickWall(80,48);BrickWall(64,64);BrickWall(80,64);BrickWall(128,48);BrickWall(144,48);BrickWall(128,64);BrickWall(144,64);BrickWall(128,80);BrickWall(144,80);BrickWall(128,96);BrickWall(144,96);BrickWall(128,112);BrickWall(144,112);BrickWall(128,128);BrickWall(144,128);BrickWall(192,112);BrickWall(208,112);BrickWall(192,128);BrickWall(208,128);BrickWall(192,80);BrickWall(208,80);BrickWall(192,96);BrickWall(208,96);BrickWall(192,48);BrickWall(208,48);BrickWall(192,64);BrickWall(208,64);BrickWall(256,48);BrickWall(272,48);BrickWall(256,64);BrickWall(272,64);BrickWall(256,80);BrickWall(272,80);BrickWall(256,96);BrickWall(272,96);BrickWall(256,112);BrickWall(272,112);BrickWall(256,128);BrickWall(272,128);BrickWall(320,144);BrickWall(336,144);BrickWall(320,160);BrickWall(336,160);BrickWall(320,112);BrickWall(336,112);BrickWall(320,128);BrickWall(336,128);BrickWall(320,80);BrickWall(336,80);BrickWall(320,96);BrickWall(336,96);BrickWall(320,48);BrickWall(336,48);BrickWall(320,64);BrickWall(336,64);BrickWall(384,48);BrickWall(400,48);BrickWall(384,64);BrickWall(400,64);BrickWall(384,80);BrickWall(400,80);BrickWall(384,96);BrickWall(400,96);BrickWall(384,112);BrickWall(400,112);BrickWall(384,128);BrickWall(400,128);BrickWall(384,144);BrickWall(400,144);BrickWall(384,160);BrickWall(400,160);SteelWall(224,112);SteelWall(240,112);SteelWall(224,128);SteelWall(240,128)";
var serializer = new SpriteSerializer(eventManager);
var serializer = new SpriteSerializer(this._eventManager);
serializer.unserializeSprites(map);
}

Expand Down
4 changes: 2 additions & 2 deletions src/MainMenuScene.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
function MainMenuScene(sceneManager, eventManager) {
function MainMenuScene(sceneManager) {
this._sceneManager = sceneManager;
this._eventManager = eventManager;
this._eventManager = this._sceneManager.getEventManager();
this._eventManager.addSubscriber(this, [Keyboard.Event.KEY_PRESSED]);

this._y = Globals.CANVAS_HEIGHT;
Expand Down
10 changes: 7 additions & 3 deletions src/SceneManager.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ SceneManager.prototype.getScene = function () {

SceneManager.prototype.toMainMenuScene = function (arrived) {
this._eventManager.removeAllSubscribers();
this._scene = new MainMenuScene(this, this._eventManager);
this._scene = new MainMenuScene(this);

if (arrived) {
this._scene.nextMenuItem();
Expand All @@ -23,12 +23,12 @@ SceneManager.prototype.toMainMenuScene = function (arrived) {

SceneManager.prototype.toLevelScene = function () {
this._eventManager.removeAllSubscribers();
this._scene = new Level(this, this._eventManager);
this._scene = new Level(this);
};

SceneManager.prototype.toConstructionScene = function () {
this._eventManager.removeAllSubscribers();
this._scene = new Construction(this, this._eventManager);
this._scene = new Construction(this);
};

SceneManager.prototype.update = function () {
Expand All @@ -38,3 +38,7 @@ SceneManager.prototype.update = function () {
SceneManager.prototype.draw = function (ctx) {
this._scene.draw(ctx);
};

SceneManager.prototype.getEventManager = function () {
return this._eventManager;
};

0 comments on commit 99d869e

Please sign in to comment.