I wrote this draw function partially based on Jesse Freeman's swap weapon example but improved it with the ability to access player properties and display them on the main game display. You might find it useful if you've been scratching your head wondering why Weltmeister throws an error when doing so.

draw: function(){
		// Draw Player HUD stats
		// Check if the specified font exists so Weltmeister doesn't throw an error
		// when player class tries to draw a font in the global scope
		if(ig.game.statText){
			//var player = ig.game.getEntitiesByType( EntityPlayer )[0];
			ig.game.statText.draw('Direction: '+this.direction, 10, 50);
			ig.game.statText.draw(this.cash, 120, 5);
			ig.game.statText.draw(this.ammo+' / '+this.totalAmmo, 40, 300);
			
			var img = new ig.Image('media/bullet.png');
			img.draw( 10, 300 );
			switch(this.weapon){
			      case(0):
				      img = new ig.Image(this.weaponItems[0]);
				      break;
			      case(1):
				      img = new ig.Image(this.weaponItems[1]);
				      break;
			      }
			img.draw( 0, 240 );
		}
		
		if(this.invincible)
		    this.currentAnim.alpha = this.invincibleTimer.delta()/this.invincibleDelay * 1 ;
		this.parent();
        }