当初的我只是抱着好奇的心情,才打开博客中的“Crt单元”,瞧瞧里面究竟有什么。就是这么一个小小的举动,激发了我自编小游戏的兴趣。现在,我跟你们娓娓道来。
我上网搜索了关于Crt单元的相关信息,惊奇地发现Crt单元里竟然有这么多有趣的语句!当我如饥似渴地摘录、记忆它们时,我突然发现有些语句好像不像是英文单词组合而成的,如
gotoxy、clrscr等等。这可咋办?
gotoxy大家可能比较容易记忆,可是像clrscr这样稀奇古怪的语句,时间一长就很容易忘记,难道非得死记吗?
其实有一种方法可以较为轻松地记住它。在上网查阅时我发现:clrscr是写成“ClrScr”这种形式的。它将语句分成了两个部分:Clr是clear的缩写,而Scr则是screen的缩写,与它的功能相结合,就是“清屏”的意思。这样记忆很有效果,既记得牢,又轻松。看来,pascal语句的意思还是和实际的用处相符合的,不必死记硬背。
学会了Crt单元中的部分语句后,我跃跃欲试,想要做几个小程序。网络是个好帮手,这一次它又帮了我一个忙。我找到了一个用Crt单元做的程序。它的结构很特别,有许多个子程序,分别对应了各种功能。而主程序则是将这些子程序串联起来,组合成一个整体。于是我参考这个范例,做出了我的第一个小游戏——“顽皮的小人”。
这个小程序赢得了徐老师的赞赏。于是我继续努力,在“顽皮的小人”的基础上添加了新的功能。“小人吃豆豆”、“小人射击”相继诞生了!我花费了许多时间和心血,把“小人系列”打造成了现在这样的规模。
总是做关于“小人”的程序有些无聊,来试试其他的吧。随着这个念头,我想到“飞机”这个主意。说做就做!我再一次钻入编程的世界中。
想法是有了,可是这飞机该怎么表现呢?用图片不太现实,用英文字母也不可行。于是我决定用做“小人”时的老办法——字符画。一会,“飞机”版本1.0(请看插图)诞生了!但是看着不像飞机,像是一个十字架。我就在机头(右侧)加了一个“-”。这就是版本1.1了。后来我看着机翼不太对劲,就改成了版本1.2,又改成版本1.3,最终修改为版本1.4——最终版本。看着是不是挺像的啊?
“飞机”完成,接下来轮到编程了。我的构思是让飞机随着玩家的想法上下左右移动,同时“小行星”(在游戏中用“*”表示)从屏幕右侧向左移动。我定义了一个数组,存下星星的位置,每过一定时间就往左动一格,而且随着被躲过的行星数量到达某数值时,行星的运动速度还会逐步递增,加大游戏难度。我还构思出当“飞机”撞上“小行星时”(机翼碰到不算)飞机会受到一定伤害。所以我定义一个变量作为“飞机”的耐久度(初值为10),当耐久度为0时游戏结束。这样,我的小程序初步完成了。当然,后期我还加入了“是否再试一次“的功能,还有徐老师提出的暂停功能。这就是“星际迷航”——我自认为在我制作的游戏中最棒的一个。我在这个游戏上花费了许多精力,希望能作为你们的参考。
“飞机”做完了,我“重操旧业”,在“小人系列”中加入了“Fighting Game”(我管他叫“小人互殴”)。由于我将要升入初三,学习变得更重要了,所以我不得不放弃我喜爱的自编小游戏。不过我相信,在看了这篇文章的你们,会将它发扬光大的。
我的故事就讲到这里。我希望你们看了以后会对编程更有兴趣。你们可能会想,程序这个东西只是为了解题用的呀。确实如此。但是对我来说,程序是一种日常工具,就像说话、吃饭一样。用编程解决的题目不只在题库中,在生活中随处可见。比如你可以编一个小程序帮助你计算零花钱有多少应该存下来,多少钱买东西,多少钱交通费;如果你英语不好,还可以编程:输入几个英语单词及中文意思,随机出来一个中文,考你英文;如果你数学不好,可以让pascal给你出几道计算题……程序的用处多得很,只有想不到,没有做不到。有志者,事竟成。如果你能活用编程技术,它可以给你带来无限的便利!
任淳:现就读于上外静安外国语中学,2015年上半年连续编制创作了《顽皮的小人》、《小人吃豆豆》、《小人射击》、《星际迷航》、《Fighting Game》《加密/解密程序》等程序作品,深受其他程序设计老师好评,其作品也一直作为教学范例供同学们学习研究。