//Constructors
        public ShootingBehaviour(Entity host, EntityManager.EntityType targetType)
            : base(host)
        {
            this.targetType = targetType;

            this.elapsedTimeSinceLastShot = INITIAL_TIME_ELAPSED;
        }
        //Constructors
        public ChaseOrFleeBehaviour(AutonomousEntity host, EntityManager.EntityType targetOrThreat, float steeringForce, float detectionDistance)
            : base(host)
        {
            this.targetOrThreat = targetOrThreat;

            this.steeringForce = steeringForce;
            this.detectionDistance = detectionDistance;
        }
        //////////////////////////////
        //Constructors//
        //////////////////////////////
        public Entity(EntityManager.EntityType entityType, Texture2D startTexture)
        {
            this.id = nextId++;
            this.entityType = entityType;
            this.isRemoved = INITIAL_IS_REMOVED;

            this.texture = startTexture;
            this.scale = DEFAULT_SCALE;

            this.position = INITIAL_POSITION;
            this.heading = INITIAL_HEADING;
            this.side = INITIAL_SIDE;

            this.behaviours = new LinkedList<Behaviour>();

            MainModel.Instance.EntityManagement.AddEntity(this);
        }
 //Constructors
 public GroupChasingGraphMovement(AStarMovementEntity host, EntityManager.EntityType groupToChase)
     : base(host)
 {
     this.groupToChase = groupToChase;
 }
 //Constructors
 public KillBehaviour(Entity host, EntityManager.EntityType targetType)
     : base(host)
 {
     this.targetType = targetType;
 }