aboutsummaryrefslogtreecommitdiff
path: root/Super Polarity/ActorFactory.cs
diff options
context:
space:
mode:
authorBen Beltran <ben@nsovocal.com>2013-11-12 06:44:55 -0600
committerBen Beltran <ben@nsovocal.com>2013-11-12 06:44:55 -0600
commit2af83e98005a14c439b360a5b9ac636f594d9f0c (patch)
tree5c219527947cb86a15e68ed379fbf0008929b77d /Super Polarity/ActorFactory.cs
parentf8aec187ea7dc410a32996406109f290f3199ffa (diff)
Implements polarity system
Diffstat (limited to 'Super Polarity/ActorFactory.cs')
-rw-r--r--Super Polarity/ActorFactory.cs36
1 files changed, 31 insertions, 5 deletions
diff --git a/Super Polarity/ActorFactory.cs b/Super Polarity/ActorFactory.cs
index 5438b77..3e2f80b 100644
--- a/Super Polarity/ActorFactory.cs
+++ b/Super Polarity/ActorFactory.cs
@@ -10,21 +10,47 @@ namespace SuperPolarity
{
static class ActorFactory
{
- static internal ContentManager Content;
+ static internal Game Game;
static public MainShip CreateMainShip(Vector2 position)
{
- MainShip mainShip = new MainShip();
- mainShip.Initialize(Content, Content.Load<Texture2D>("Graphics\\main-ship"), position);
+ MainShip mainShip = new MainShip(Game);
+ mainShip.Initialize(Game.Content.Load<Texture2D>("Graphics\\main-ship"), position);
ActorManager.CheckIn(mainShip);
return mainShip;
}
- internal static void SetContentManager(ContentManager content)
+ static public StandardShip CreateShip(Ship.Polarity polarity, Vector2 position)
{
- Content = content;
+ StandardShip ship = new StandardShip(Game);
+ Texture2D texture;
+
+ if (polarity == Ship.Polarity.Positive)
+ {
+ texture = Game.Content.Load<Texture2D>("Graphics\\positive-ship");
+ }
+ else if (polarity == Ship.Polarity.Negative)
+ {
+ texture = Game.Content.Load<Texture2D>("Graphics\\negative-ship");
+ }
+ else
+ {
+ texture = Game.Content.Load<Texture2D>("Graphics\\neutral-ship");
+ }
+
+ ship.Initialize(texture, position);
+ ship.SetPolarity(polarity);
+
+ ActorManager.CheckIn(ship);
+
+ return ship;
+ }
+
+ internal static void SetGame(Game game)
+ {
+ ActorFactory.Game = game;
}
}
}