Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package game;
- import org.newdawn.slick.Input;
- import org.newdawn.slick.InputListener;
- import org.newdawn.slick.command.Control;
- import org.newdawn.slick.command.ControllerButtonControl;
- import org.newdawn.slick.command.ControllerDirectionControl;
- import org.newdawn.slick.command.KeyControl;
- import org.newdawn.slick.command.MouseButtonControl;
- /**
- * Whenever this class receives input, it converts it to a {@link Control} and
- * sends this to another class implementing the {@link ControlEvent}.
- *
- * @author snapy666
- */
- public class ControlListener implements InputListener
- {
- private ControlEvent control_event;
- private boolean active;
- public ControlListener(ControlEvent control_event)
- {
- super();
- this.control_event = control_event;
- this.setActive(false);
- }
- public boolean isActive()
- {
- return active;
- }
- public void setActive(boolean active)
- {
- this.active = active;
- }
- private void gotControl(Control control)
- {
- if (isActive())
- {
- control_event.gotControl(control);
- }
- }
- @Override
- public void mouseClicked(int button, int x, int y, int clickCount)
- {
- gotControl(new MouseButtonControl(button));
- }
- @Override
- public void mouseDragged(int oldx, int oldy, int newx, int newy)
- {
- }
- @Override
- public void mouseMoved(int oldx, int oldy, int newx, int newy)
- {
- }
- @Override
- public void mousePressed(int button, int x, int y)
- {
- }
- @Override
- public void mouseReleased(int button, int x, int y)
- {
- }
- @Override
- public void mouseWheelMoved(int change)
- {
- }
- @Override
- public void inputEnded()
- {
- }
- @Override
- public void inputStarted()
- {
- }
- @Override
- public boolean isAcceptingInput()
- {
- return true;
- }
- @Override
- public void setInput(Input input)
- {
- }
- @Override
- public void keyPressed(int key, char c)
- {
- gotControl(new KeyControl(key));
- }
- @Override
- public void keyReleased(int key, char c)
- {
- }
- @Override
- public void controllerButtonPressed(int controller, int button)
- {
- gotControl(new ControllerButtonControl(controller, button));
- }
- @Override
- public void controllerButtonReleased(int controller, int button)
- {
- }
- @Override
- public void controllerDownPressed(int controller)
- {
- gotControl(new ControllerDirectionControl(controller,
- ControllerDirectionControl.DOWN));
- }
- @Override
- public void controllerDownReleased(int controller)
- {
- }
- @Override
- public void controllerLeftPressed(int controller)
- {
- gotControl(new ControllerDirectionControl(controller,
- ControllerDirectionControl.LEFT));
- }
- @Override
- public void controllerLeftReleased(int controller)
- {
- }
- @Override
- public void controllerRightPressed(int controller)
- {
- gotControl(new ControllerDirectionControl(controller,
- ControllerDirectionControl.RIGHT));
- }
- @Override
- public void controllerRightReleased(int controller)
- {
- }
- @Override
- public void controllerUpPressed(int controller)
- {
- gotControl(new ControllerDirectionControl(controller,
- ControllerDirectionControl.UP));
- }
- @Override
- public void controllerUpReleased(int controller)
- {
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement