2024年3月11日发(作者:)

实验七 游戏精灵开发(二)

目录

一、 准备工作 ................................................................................................................................. 2

1.1 实验内容 ............................................................................................................................ 2

1.2 效果展示 ............................................................................................................................ 2

1.3项目部署 ............................................................................................................................. 2

二、 增加游戏背景静态图片 ......................................................................................................... 3

2.1 效果介绍 ............................................................................................................................ 3

2.2 代码开发 ............................................................................................................................ 3

三、 多线程开发游戏精灵自动行走效果 ..................................................................................... 4

3.1 效果介绍 ............................................................................................................................ 4

3.2 代码开发 ............................................................................................................................ 4

四、 用xt添加文字效果 ........................................................................................ 6

4.1 效果介绍 ............................................................................................ 错误!未定义书签。

4.2 代码开发 ............................................................................................................................ 6

1 / 6

一、 准备工作

1.1 实验内容

1. 增加游戏背景静态图片

2. 用多线程开发游戏精灵自动行走效果

3. 用canvas在游戏界面中展现文字效果

1.2 效果展示

1.3项目部署

将上周实验项目导入到Eclipse中等待继续开发。

2 / 6

二、 增加游戏背景静态图片

2.1 效果介绍

更改原先黑屏背景为指定图样。

2.2 代码开发

1. 在的构造函数中新增支持透明界面代码,效果如下图:

2. 此时可以添加背景图片了。

a) 请事先将需要显示的图片改为png格式,名称由英文小写字母组成

b) 将该图片复制粘贴到res的drawable-mdpi文件夹中

c) 修改布局界面代码,找到GameView组件

d) 在属性中新增一行android:background="@drawable/图片名称"即可完成

3 / 6

三、 多线程开发游戏精灵自动行走效果

3.1 效果介绍

类似贪吃蛇游戏效果,方向按钮改变人物行走方向,不按键时人物按照同一个方向一直走下

去。

为了避免走出手机屏幕,可以在上下左右四个边缘做碰撞检测,当快要走出去时及时阻止。

3.2 代码开发

1. 将中的draw方法化简。

a) 把draw方法内部的方向检测代码分离出来,新建方法public void checkStatus()

b) 此时确保draw方法只负责锁住画布——绘图——解锁画布,三个动作。

2. 多线程的制作

a) 在中新建内部类public class myThread implements Runnable

b) 在内部方法public void run中,新建while循环

c) 在指定时间内用(毫秒数);进行刷新

d) 效果如下图所示:

3. 在surfaceCreated()方法中激活该多线程,如下图所示。

4 / 6

4. 思考题:如何制作碰撞检测?

提示:判断游戏精灵的坐标sx和sy是否越界。如果即将越界,则修正坐标位置。

5 / 6

四、 用xt添加文字效果

4.1 代码开发

1. 在构造函数上方声明画笔Paint

Paint p = new Paint();

2. 在draw方法内部绘画游戏精灵后面新增一句添加文字效果:

xt("人物名称", x坐标, y坐标, p);

可以自行调整xy坐标,以达到更好的效果。

4.2 Paint字体风格设置

1. 字体大小设置

tSize(int size); //括号内部填写正整数。一般12是小四号字体。

2. 字体类型设置

需要先自定义font变量,代码如下:

Typeface font = (_SERIF, );

其中参数一可选范围如下:

T //常规字体类型

T_BOLD //黑体字体类型

ACE //等宽字体类型

_SERIF //sans serif字体类型

//serif字体类型

参数二可选范围如下:

//粗体

_ITALIC //粗斜体

//斜体

//常规

然后eface( font);即可。

6 / 6