首页 资讯中心 硬件周边 攻略中心 秘籍中心 在线动漫 CG壁纸  
专题栏目: PSP NDS GBA PS2 PS3 XBOX XBOX360 WII
PSP 游戏资料 | 玩家宝典
您的位置:游狐网 >> PSP >> 玩家宝典 >> 软件教程

菜鸟也能为PSP编程 - Lua Player 编程初级指南

[ 时间:2008-5-6 9:40:37 | 来源:电玩巴士 | 收藏本文 ] 【

3——写一个使用变量的简单程序

  本课我们学习怎样在程序中使用变量。变量是很重要的工具,将来也必然成为你最好的朋友。一言以蔽之,变量就是信息的存储容器,供你在程序中随时调用。

  现在我们就来写一个使用变量的简单程序。同时也学习一下Lua中的简单算术。这次我们对每一行代码都给与注释。

  首先,让我们再次以创建色彩对象开始,用来在屏幕上打印信息。这次我们选用绿色。

代码:

-- 绿色色彩对象
green = Color.new(0, 255, 0)

  接着就开始创建我们第一个变量吧。这将是一个存储你出生年份的变量。请随意替换1981为你自己的出生年份,事实上我也建议你这么做!

代码:

-- 将出生年份存为变量 myBirthYear
myBirthYear = 1981

  就是这样!我们所做的就是取得数值1981(或是你使用的自己的出生年份)并将其保存在我们命名为myBirthYear的变量中。稍后我们在程序中将使用该变量。

  现在移下一行再设一个变量用来存储当前年份。

代码:

-- 将当前年份存为变量 currentYear
currentYear = 2008

  现在让我们创建一个略微不同的变量。

代码:

-- 创建一个空变量
myAge = nil

  请注意这次我们为变量赋值为nil,就是表明该变量尚未赋值。我们会在稍后为此变量存入信息。

  那么,我们最后再创建一个变量,向你表明变量除了存储数值以外,也能存储字串(文本)。注意文本要用引号括起来。

代码:

-- 在变量中存储一些文字
someText = "My age is roughly "

  到此我想你已知道如何创建变量了,那么让我们开始使用它们。我们将要做的就是使用我们的变量和一些基础算术计算出你的年龄。开始添加下面的代码到你的程序中吧:

代码:

-- 用 currentYear 减去 myBirthYear 并将结果保存在变量 myAge 中
myAge = currentYear - myBirthYear

  这一步是提取myBirthYear中存储的值,用currentYear的值减去,然后将结果保存在myAge变量中。这样myAge就被赋予了值!

  现在,让我们使用上一讲学到的print命令将我们的文本变量打印到屏幕上。

代码:

-- 打印文本变量至屏幕
screen:print(10,100,someText,green)

  与我们上一讲所做的唯一不同(除了颜色)在于我们这次打印的是变量的值,而不是直接的文本。请注意此处我们没有使用引号。这句代码将以绿色文本在x-10,y-100的位置打印someText变量中存储的任何内容。

  现在我们将在这句话的旁边打印我们的年龄结果。我们得用一个新命令。要在 someText 的文本右侧打印 myAge,我们可以使用双句点(..)

  这称为“串联”。那么我们把刚才那一行代码略作修改如下:

代码:

-- 同时打印文本变量和年龄至屏幕
screen:print(10,100,someText .. myAge,green)

  最后我们把screen.flip()和循环扔进代码以结束程序。

代码:

-- 离屏缓存转至显屏
screen.flip()
-- 不停循环
while true do
screen.waitVblankStart()
end

  保存你的程序,运行查看结果。

  通过使用变量,我们只要改变myBirthYear的值,程序就可以自动计算出任何人的年龄。没有变量的话,你就不得不修改很多行代码,有些程序甚至得上万行。

  本节课我们只用到了减法,很简单,就是 - 符号。

  加法请使用 +
  乘法请使用 *
  除法请使用 /