//this creates a basic hook with no position //assign it the player's position? public Hook() : base() { this.beam = new Beam(); this.maxSpeed = HOOK_MAX_SPEED; this.terminalVelocity = HOOK_MAX_SPEED; this.Scale = SCALE; this.length = HOOK_MAX_LENGTH; }
//basic constructor at some point more of these variables will be XML read and passed in instead of hard-coded. public Enemy(int startX, int startY) : base(new Vector2(startX, startY)) { this.Scale = ENEMYSCALE; this.lazerBeam = new Beam(); this.exlcamationPoint = new Sprite(); exlcamationPoint.Scale = .4f; questionMark = new Sprite(); questionMark.Scale = QUESTION_SCALE; this.isDead = false; this.isPatrolling = true; this.isInvestigating = false; this.canFallWhilePatrolling = false; this.hasStartedLazer = false; this.onGround = false; this.maxSpeed = 200f; this.patrolStart = startX; this.velocity.X = (float) PATROLSPEED; timeSinceLastFire = 0; this.patrolspeed = PATROLSPEED; this.patrolRange = PATROL_RANGE; this.vertViewRange = VERT_VIEW_RANGE; this.horizViewRange = HORIZ_VIEW_RANGE; this.soundRange = SOUND_RANGE; this.investigateMaxWait = INVESTIGATE_MAX_WAIT; this.lazerChargeTime = LAZER_CHARGE_TIME; this.lazerDuration = LAZER_DURATION; this.fireInterval = MIN_FIRE_INTERVAL; this.weaponType = WEAPON_DEFAULT; emitter = new Particle_Engine.LazerChargeEmitter(this.position, lazerChargeTime); }