package com.swsp.game.simpleplane;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Rectangle;
import java.awt.event.KeyEvent;
import com.swsp.GameUtil.GameConstants;
import com.swsp.GameUtil.GameUtil;
/**
* 玩家飞机类
* @author Tom
*
*/
public class PlayerPlane
{
/**
* 控制飞机方向的变量
* 玩家飞机移动方法,控制不飞出游戏界面(计算图片边框)
*/
private boolean left , right , up , down ;
private int x =30, y=30 ,speed=10;
private Image playerPlaneImg = GameUtil.getImage("GameImage/plane.png");
private boolean live= true;
public boolean isLive()
{
return live;
}
public void move()
{
if (left && x > 0) x -= speed ;
if (up && y > 30) y -= speed ;
if (right && x < GameConstants.GAME_WEDTH -playerPlaneImg.getWidth(null)) x += speed ;
if (down && y < GameConstants.GAME_HEIGHT -playerPlaneImg.getHeight(null)) y += speed ;
}
/**
* 键盘行为增加方向方法
* @param e
*/
public void addDirection(KeyEvent e)
{
switch (e.getKeyCode())
{
case KeyEvent.VK_LEFT : left = true ; break;
case KeyEvent.VK_UP : up = true ; break;
case KeyEvent.VK_RIGHT : right = true ; break;
case KeyEvent.VK_DOWN : down = true ; break;
default : break;
}
}
/**
* 键盘行为停止方向方法
* @param e
*/
public void stopDirection(KeyEvent e)
{
switch (e.getKeyCode())
{
case KeyEvent.VK_LEFT : left = false ; break;
case KeyEvent.VK_UP : up = false ; break;
case KeyEvent.VK_RIGHT : right = false ; break;
case KeyEvent.VK_DOWN : down = false ; break;
default : break;
}
}
public void draw(Graphics g)
{
move();
if(live)
{
g.drawImage(playerPlaneImg, x, y, null);
}
}
public Rectangle getRectangle()
{
return new Rectangle(x, y, playerPlaneImg.getWidth(null), playerPlaneImg.getHeight(null));
}
public void kill()
{
live = false ;
}
}
基于java,awt实现的简单飞机游戏.zip
版权申诉
18 浏览量
2023-12-17
21:41:07
上传
评论
收藏 88KB ZIP 举报
马coder
- 粉丝: 1203
- 资源: 6602
最新资源
- 本科毕业设计基于C# wpf人脸识别的考勤系统的设计与实现源码.zip
- 基于Ruoyi+uniapp实现学生考勤系统 学生考勤源码+项目说明.zip
- feae6bc968ca68a099455d8b8a8dea35
- 基于Pytorch训练CIRAR10上分类算法.zip
- Pytorch-pytorch深度学习教程之Tensorboard.zip
- 基于C++和Python开发yolov8-face作为人脸检测器dlib作为人脸识别器的人脸考勤系统源码+项目说明.zip
- Pytorch-pytorch深度学习教程之变分自动编码器.zip
- Pytorch-pytorch深度学习教程之神经风格迁移.zip
- Pytorch-pytorch深度学习教程之深度残差网络.zip
- Pytorch-pytorch深度学习教程之循环神经网络.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈