图片的插入图片的插入之前的方法太过于繁琐,所以我们可以在对象中直接打印图片在测试类里缩减代码量代码如下: //人物图片public static Image image= CommonUtils.getImage("images/body/s-left.png");//人物横坐标private int x;//人物纵坐标private int y;//宽private int width;//高private int height;//速度private

图片的插入

** 图片的插入之前的方法太过于繁琐,所以我们可以
在对象中直接打印图片在测试类里缩减代码量 **

 代码如下://人物图片
public static Image image= CommonUtils.getImage("images/body/s-left.png");
//人物横坐标
private int x;
//人物纵坐标
private int y;
//宽
private int width;
//高
private int height;
//速度
private int speed;
//游戏窗体属性 因为小丑要在窗体中画画
private GameClinet gameClinet;

之后要设置有参构造方法设置初始值,并使用get,set方法获取初始值

     代码如下:public Buffoon(){}
public Buffoon(int x,int y,GameClinet gameClinet){this.x=x;this.y=y;this.width=50;this.height=50;this.speed=5;this.gameClinet=gameClinet;
}//生成get,set方法
public int getX() {return x;
}public void setX(int x) {this.x = x;
}public int getY() {return y;
}public void setY(int y) {this.y = y;
}public int getWidth() {return width;
}public void setWidth(int width) {this.width = width;
}public int getHeight() {return height;
}public void setHeight(int height) {this.height = height;
}public int getSpeed() {return speed;
}public void setSpeed(int speed) {this.speed = speed;
}

对象可以再自己的类中直接在窗口显示,所以也该有个画笔的方法进行显示

 代码如下:/*** 小丑里有自己的画画方法*/public void paint(Graphics g){g.drawImage(image,this.x,this.y,this.width,this.height,this.gameClinet);}

最后在回到测试类中创建对象:直接使用画笔方法带入就可以了,这样简便了量的代码,使得测试类变得简洁

 如下代码:/*** 画画,重写父类的paint方法* Graphics 画笔类* @param g*/
@Override
public void paint(Graphics g) {//画背景g.drawImage(image,0,0,1000,700,this);//墙体wall.paint(g);//爆炸物explode.paint(g);//画小丑buffoon.paint(g);//子弹missile.paint(g);
}

人物如何移动

 首先:小丑类方法要素      移动移动需要方向  定义一个方法move判断方向,之后X与Y坐标的变动更改代码如下:创建方法后使用IF判断方向与其相应的X,Y位置变动public void move(String dir){if ("U".equals(dir)){this.y=this.y-this.speed;}if ("R".equals(dir)){this.x=this.x+this.speed;}if ("D".equals(dir)) {this.y=this.y+this.speed;}if ("L".equals(dir)){this.x=this.x-this.speed;}if ("UR".equals(dir)) {this.y=this.y-this.speed;this.x=this.x+this.speed;}if ("UL".equals(dir)){this.y=this.y-this.speed;this.x=this.x-this.speed;}if ("DR".equals(dir)){this.x=this.x+this.speed;this.y=this.y+this.speed;}if ("DL".equals(dir)) {this.y=this.y+this.speed;this.x=this.x-this.speed;}

可以代入图片观察方向变化坐标改动

【尚学堂】Java300集零基础适合初学者视频教程_Java300集零基础教程_Java初学入门视频基础巩固教程_Java语言入门到精通_哔哩哔哩_bilibili

Java小游戏学习笔记相关推荐

  1. 学习笔记Java小游戏学习笔记

    [尚学堂]Java300集零基础适合初学者视频教程_Java300集零基础教程_Java初学入门视频基础巩固教程_Java语言入门到精通_哔哩哔哩_bilibili 图片的插入图片的插入之前的方法太过 ...

  2. Java小游戏学习笔记四,动态移动进阶与子弹的发射

    人物的斜线移动 接上一章的人物移动,如果我想要这个人物往斜线的方向移动,那么上一章的方法则无法实现,所以今天要进阶的优化移动.代码如下:首先确认移动的对象,然后在对象中创建一个有参方法获得方向,将上章 ...

  3. python求数列的积_python小游戏学习笔记4-2(列表【】,数列矩阵排列)

    x数值的单列写法: xlist = [1,2,3,4,5] for x in xlist: print(x) 关于len(长度)的用法:(结果为:5)(lens的作用就是把list 化为单个数字(内容 ...

  4. 微信小游戏制作学习笔记

    微信小游戏制作学习笔记 关于 cocos 的学习笔记 文字图像部分: ***1.***图集资源由png和plist文件组成 接下来可以使用专门的软件生成图集,我们推荐的图集制作软件包括:[Zwopte ...

  5. Java编程思想学习笔记-第11章

    <?xml version="1.0" encoding="utf-8"?> Java编程思想学习笔记-第11章 Java编程思想学习笔记-第11章 ...

  6. 各种经典java小游戏_Java是这个世界上最好的语言!

    为什么? 请看TIOBE最新发布的编程语言排行榜: TIOBE开发语言排行榜每月更新一次,其结果可以用来检阅开发者的编程技能能否跟上趋势,或是否有必要作出战略改变,以及什么编程语言是应该及时掌握的. ...

  7. java小游戏——飞翔的小鸟(java初学作品)

    注:学习了java基础后,做出来的一个小作品,可以用来巩固学习 概述: 飞翔的小鸟能够作为Java基础的收官之作,包涵了Java很多的基础知识,在学习完Java基础后,尝试编写一些东西,能够起到很好的 ...

  8. 【Java】寒假答辩作品:Java小游戏

    文章目录 java入门小游戏[test] 游戏界面 前言 (可直接跳到程序介绍) 前期入门小项目 前期收获 后期自创关卡 熄灯问题拓展 新游戏拓展 实现切换关卡切换音乐 后续 java入门小游戏[te ...

  9. JAVA 第二周学习笔记

    JAVA第二周学习笔记 一.变量 1.变量的本质 2.变量的三大要素 a.变量名: b.变量值: c.变量类型: 3.变量的定义和使用 4.课后小练习: 5.变量的定义和使用 二.运算符 1.赋值运算 ...

最新文章

  1. 面完字节跳动,才知道自己的数据结构与算法有多薄弱...
  2. 【转载】如何:为 Windows Phone 创建警报和提醒
  3. 三层路由中限制VLAN间转发,但其他转发正常事例
  4. php 去除二维数组中的包含某一个值的数组
  5. 深入浅出解释深拷贝、浅拷贝、对象拷贝、引用拷贝原理和应用
  6. Iterator作用
  7. 利用旧手机自建anki服务器,废旧手机变身服务器,打造私人云盘
  8. xcode+文字支持html元素,iOS使用UITextview实现富文本编辑
  9. Processing编程学习指南1.5 颜色透明度
  10. Servlet各种接口和类
  11. cuteftp连不上Linux虚拟机和传输文件问题的解决方案
  12. 雅诗兰黛公司实现里程碑式的气候目标 – 净零碳排放、RE100 – 并制定新的科学碳目标
  13. 迈动互联布局华北、华东、华南三大业务中心
  14. Radiology:影像组学:图像不仅仅是图片,它们还是数据
  15. Unity与讯飞语音交互:使用aiui技能
  16. 站内搜索案例:提高商品成交率,创造卓越业绩
  17. 对m720蓝牙优联已配对设备进行更换
  18. 机器翻译评价指标之BLEU原理介绍及代码实现
  19. 为什么叫vanilla neural network?
  20. Easypack之Alpine容器系列:Sonarqube

热门文章

  1. vue功能之“微信支付“
  2. 基于stm32f407的无线视屏传输项目
  3. 无root 权限 linux安装 rar,centos上如何yum安装rar/unrar及手动安装最新rar
  4. php对plc的TCP通信,西门子1200PLC进行TCP通讯配置详解
  5. 看中科院大牛博士如何进行文献检索和阅读
  6. 通过 pip 安装软件时提示 0.1.36ubuntu1,0.23ubuntu1 is an invalid version 的完美解决方案。
  7. 如何在Dev-c++中打c语音的代码
  8. clickhouse建表异常 DB::Exception: No macro ‘shard‘ in config
  9. iOS开发学习之YYKit中YYText的深入解析,YYTextShadow的代码解析
  10. Wind万得PythonAPI量化接口常用小工具——时序数据处理及工作日前推查询