南京新世界电玩 >> PSP >> PSP技术 >> 菜鸟也能为PSP编程 - Lua Player 编程初级指南
菜鸟也能为PSP编程 - Lua Player 编程初级指南
作者:不详  浏览:次  日期:06-25
广告位

代码:

screen.waitVblankStart()
screen.flip() end

 

  保存并运行你的程序,看看动起来的定时器吧。

12——碰撞演示

  本课我们讲解如何在 lua 中制作一些简单的碰撞。本方法使用盒式碰撞,没有达到像素级精度。因为这是你的第一次碰撞尝试,所以简单一点好。

  我们将要做的这个小演示将使用一个可移动的玩家角色。屏幕上还有三个实施了碰撞效果的方块。玩家将无法穿过这些方块。

  首先我们创建两个要用的色彩。一个用于玩家,一个用于我们的方块。

代码:

green=Color.new(0,255,0)
white = Color.new(255,255,255)

 

  接着创建玩家和方块要用的图像。先创建空的 32x32 的方块,然后用我们刚刚创建的颜色填充它们。

代码:

player = Image.createEmpty(32,32)
player:clear(white)
block = Image.createEmpty(32,32)
block:clear(green)

 

  现在我们需要创建一个数列来存放我们的玩家信息。本演示中就是简单的保存玩家的 x 和 y 坐标位置。

代码:

Player = { x = 30, y = 100 }

 

  接下来我们要定义两个变量,存储我们玩家图像的高和宽。这些值将用于我们的碰撞函数中。记住我们刚才是以 32x32 创建图像的,所以那就是我们要用的值。

代码:

playerHeight = 32
playerWidth = 32

 

  然后,为我们的三个方块也创建一个数列来存储信息。自然,我们要存储每个方块在屏幕上所处的 x,y 值,还有每个方块的宽度与高度。我们使用 width() 和 height() 命令来自动从我们刚才创建的方块图像中获取这些值。代码如下:

代码:

Block = {}
Block[1] = { x = 100, y = 80, height = block:height(), width = block:width() }
Block[2] = { x = 300, y = 30, height = block:height(), width = block:width() }
Block[3] = { x = 200, y = 58, height = block:height(), width = block:width() }

 

  现在让我们写一个函数让玩家动起来。每次循环都会调用这个函数以检查移动。如果你认真学了前面的课程,应该不难理解下面的代码:

代码:

function movePlayer()
pad = Controls.read()
if pad:left() then
Player.x = Player.x - 1
end
if pad:right() then
Player.x = Player.x + 1
end
if pad:up() then
Player.y = Player.y - 1
end
if pad:down() then
Player.y = Player.y + 1
end
end

 

  ...终于到好玩的地方了。该是时候创建一个函数来检查碰撞是否产生了。这个函数将使得我们能对游戏中任何一个对象检测碰撞,只要在循环中为该对象调用该函数。先看一下整个函数,然后我们来分析一下。

代码:

function collisionCheck(object)
if (Player.x + playerWidth > object.x) and (Player.x < object.x + object.width) and (Player.y + playerHeight > object.y) and (Player.y < object.y + object.height) then

广告位2
 来源:来自网络 
 热门文章
②新世界新街口店地址:南京中山东路71号电..
招商、批发、邮购请与总部联系邮购地址:南..
产品代理列表:任天堂神游机系列产品江苏、..
新世界出台会员制度如何成为会员: 第一次 购..
南京新世界电玩,是一家经营达20年的老字号..
 最新文章
面对越来越多的客户关于新版PSP 3000掌机扫..
Alek谈PSP破解小组M33的近况 Dark-Alex官方..
由 CAPCOM 製作,预定明年春季推出的 PSP 战..
由 KOEI 製作,推出移植自 PS / PS2 同名作..
将《传说》系列诸多角色汇集到一起的梦幻游..
PSP | iDSL | PS3 | wii | XBOX360 | 下载中心 | 本站商城 |淘宝一店 | 淘宝二店 | 加盟 | 招聘 | 联系我们 | TOP
使用 1200*1024 以上分辨率 IE7.0 浏览新世界以达到最佳视觉效果