📄 mali.java
字号:
/**
* @(#)Mali.java
* Copyright (c) 2004-2005 wuhua of workroom Inc. All Rights Reserved.
* @version 1.0, 10/05/2004
* @author 饶荣庆
* @author 余煜辉
*/
package com.wuhua.mali;
import javax.microedition.lcdui.*;
import javax.microedition.lcdui.game.*;
/**
*此类是用来描述玛莉赛跑中玛莉类
*/
public class Mali extends Sprite
{
/**
*定义没贴图象的宽度
*/
public static int WIDTH = 32;
/**
*定义没贴图象的高度
*/
public static int HEIGHT = 48;
/**
*定义初始化X的位置
*/
public int myInitialY;
/**
*定义初始化Y的位置
*/
public int myInitialX;
/**
*定义水平方向初始速度变量
*/
public int rateX;
/**
*定义与水平垂直方向初始速度变量
*/
public int rateY;
public Mali(int initialX, int initialY) throws Exception
{
super(Image.createImage("/mali/mali.png"), WIDTH, HEIGHT);
this.myInitialX = initialX;
this.myInitialY = initialY;
this.rateX = 1; //初始速度为0
this.rateY = 65; //跳跃的高度
defineReferencePixel(WIDTH/2, HEIGHT/2); //设置动画的像素参考点为图象的中心
setPosition(myInitialX, myInitialY); //设置游戏开始时玛莉的位置
setFrame(2); //设置初始动作
}
public void reset()
{
setRefPixelPosition(myInitialX, myInitialY); //设置游戏开始时玛莉的位置
setFrame(2); //设置初始动作
}
/**
*碰撞算法
*/
public boolean checkCollision(Parapet parapet)
{
if(collidesWith(parapet, false))
{
return true;
}
else return false;
}
/**
*玛莉前进方法
*/
public void advance()
{
move(rateX, 0);
}
/**
*玛莉加速方法
*/
public void accelerate()
{
if (rateX <= 5) //速度不能超过10
{
rateX++;
}
this.advance();
}
/**
*玛莉减速方法
*/
public void decelerate()
{
if (rateX >= 0) //速度不能小于0
{
rateX--;
}
this.advance();
}
/**
*玛莉跳跃是的高度方法
*/
public void jump()
{
this.move(0, -rateY);
}
/**
*玛莉跳跃时下降的方法
*/
public void down()
{
this.move(0, rateY);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -