总结
一、首先分析
分析对象、
查找属性,然后单击,
找到方法,
难点分析,难点记录1
2
3
4
5
二.插入图片
首先调用工具类
//*
*常用工具类
*/
public class CommonUtils { /** *读取图像资源,Java对象Image * @param imgPath图像路径* @return Image对象*/publicstaticimagement }
}1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
然后,输入方法窗口的专用属性代码,以创建对象和窗口类(继承Frame ),并在窗口类中打开窗口。 请参阅备注2
(背景从头到尾只有一张)
背景图像寻址完成后,调用到静态块,创建画笔类并绘制背景。
对象类也以同样的方式插入图像地址。
三.程序关闭和人物流动
因为无法返回窗口类并关闭执行检测,所以必须添加监听程序类并关闭监听(请参阅备注3 )。
监听程序不仅需要关闭程序,人物移动也需要接收并移动键盘触发事件,通过this.addKeyListener的方法进行触发判断。 (见备忘录第二部分)。
注意:移动是人物类的移动,所以这样添加到人物类中
使用创建方法参数确定关键点的方向
公共密钥代码)。
使用交换机进行判断
然后,当在测试类中按下键盘事件this.addkey listener (new key adapter ) /键盘时获取触发//Var,诸如a-67、a-67等键的值buffoon.move(buffoon.getdir ) ); (//键盘离开时@ overridepublicvoidkeyreleased (keyevent e ) ) { int keyCode=e.getKeyCode ); buffoon.okdirreleased(keycode ); }; ); 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
然后在人物中创造判断方向运动的方法,
变更x、y轴的数值进行移动。
触发将四个方向属性设置为布尔型以进行判断,按两个按钮,然后倾斜前进。 (见备忘录4 )。
炮弹发射bug的修复与优化
子弹是由人物发射的,所以设定发射方法,在触发方法上写判断,使用按钮发射子弹(参照笔记4 )。
发现子弹实现发射后,如果人物的移动属性为STOP,子弹也会停止,所以在人物类中创建与方向同型的变量toki,在判断方向的基础上赋予该变量方向的值,传递给子弹有参方法的方向变量
这样,子弹的方向变量只有上下左右,并且如果对人物赋予toki默认的方向属性,则初始状态下子弹会向该方向移动,解决了方向变为静止状态时子弹的滞留。
边界设定
新方法是判断x、y的距离是否超过当前设定的宽度高度,如果超过,则将x、y的值变为4边的空白值,用IF进行判断。 (请注意每个判断都是IF。 else if只判断一次,也请注意自己人物的图像大小。 )。
(代码见笔记本5。
数据优化
步骤已经完成到此为止,但我们发现代码中有很多绑定。 此时,可以进行优化。 发现属性各级的属性相同。 因此,可以改为设置父类。 减少代码冗馀还可以提高重用性。 使用继承,在构造方法中使用super关键字引入参数,
代码如下。
publicbuffoon(intx,int y,GameClinet gameClinet ) super ) x,y,datapropertiesutils.buffoon _ size,datapropertiesuuuuuus
2
3
4
5
6
7
制片人沉默的姐姐
想法可能有点偏差,但应该差不多
时间: 2020/11/171
文章来源为: blog.csdn.net,作者: MyonlyloveLAX,版权归原作者所有。 转载时,请与作者联系。
原文链接: blog.csdn.net/myonlylovelax/article/details/109739398