Game Development Reference
In-Depth Information
In the EnemyManager , when an enemy is created, it needs to be given a path. In
the following the cannon_fodder enemy type is given a path that goes from
right to left, veering upwards as it reaches the middle. The time for the enemy to
follow the full path takes ten seconds.
private Enemy CreateEnemyFromDef(EnemyDef definition)
{
Enemy enemy ¼ new Enemy(_textureManager, _effectsManager);
//enemy.SetPosition(definition.StartPosition); < - this line can be
removed
if (definition.EnemyType == "cannon_fodder")
{
List < Vector > _pathPoints ¼ new List < Vector > ();
_pathPoints.Add(new Vector(1400, 0, 0));
_pathPoints.Add(new Vector(0, 250, 0));
_pathPoints.Add(new Vector(-1400, 0, 0));
enemy.Path ¼ new Path(_pathPoints, 10);
}
else
{
System.Diagnostics.Debug.Assert(false, "Unknown enemy type.");
}
return enemy;
}
Now a more interesting level can be defined by editing the EnemyManager
constructor.
public EnemyManager(TextureManager textureManager, EffectsManager
effectsManager, int leftBound)
{
_textureManager ¼ textureManager;
_effectsManager ¼ effectsManager;
_leftBound ¼ leftBound;
_textureManager ¼ textureManager;
_effectsManager ¼ effectsManager;
_leftBound ¼ leftBound;
Search WWH ::




Custom Search