import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

/**
 * The controller for a game.  The controller handles the time and
 * the player's input.
 *
 * @author Jim Glenn
 * @version 0.1 1/20/2009 :)
 */

public class PeanutsControl extends GameControl
{
    /**
     * Creates a controller connected to the given game model.
     *
     * @param g a Pick Up The Peanuts game
     */

    public PeanutsControl(PeanutsModel m)
    {
	super(m);
    }

    private PeanutsModel getModel()
    {
	return (PeanutsModel)model;
    }

    public synchronized void keyPressed(KeyEvent e)
    {
	switch (e.getKeyCode())
	    {
	    case KeyEvent.VK_NUMPAD1:
		getModel().movePlayer(-1, 1);
		break;

	    case KeyEvent.VK_NUMPAD2:
		getModel().movePlayer(0, 1);
		break;

	    case KeyEvent.VK_NUMPAD3:
		getModel().movePlayer(1, 1);
		break;

	    case KeyEvent.VK_NUMPAD4:
		getModel().movePlayer(-1, 0);
		break;

	    case KeyEvent.VK_NUMPAD6:
		getModel().movePlayer(1, 0);
		break;

	    case KeyEvent.VK_NUMPAD7:
		getModel().movePlayer(-1, -1);
		break;

	    case KeyEvent.VK_NUMPAD8:
		getModel().movePlayer(0, -1);
		break;

	    case KeyEvent.VK_NUMPAD9:
		getModel().movePlayer(1, -1);
		break;
	    }
    }
}

