using UnityEngine;
using System.Collections;
using System.Collections.Generic;

public class Player : MonoBehaviour 
{	
	public List< WeaponBase > weaponList = new List< WeaponBase >();
	
	private WeaponBase _currentWeapon;
	private WeaponBase prevWeapon;
	public WeaponBase currentWeapon
    {
        set 
		{ 		
			Debug.Log( "WEAPON CHANGE TO: " + value.weaponName );
				
			// Unequip existing weapon
			if ( _currentWeapon )
			{
				// Already equipped
				if ( _currentWeapon.weaponName == value.weaponName )
				{
					Debug.Log( value.weaponName + " already equipped!" );
					return;
				}
				
				_currentWeapon.onUnequipped();
				Destroy( _currentWeapon.gameObject );
			}
			
			// Switch to new weapon 
			_currentWeapon = Instantiate( value, Vector3.zero, Quaternion.identity ) as WeaponBase;
			_currentWeapon.onEquipped();
		}
        
        get 
		{ 
			return _currentWeapon; 
		}
    }
	
	void Start () 
	{
		currentWeapon = weaponList[ 0 ];
	}
	
	void Update () 
	{
		if( Input.GetKeyDown( KeyCode.Alpha1 ) )
		{
			currentWeapon = weaponList[ 0 ];
		}
		else if ( Input.GetKeyDown( KeyCode.Alpha2 ) )
		{
			currentWeapon = weaponList[ 1 ];
		}
	}
}
