您的位置:首页 > 移动开发 > Android开发

Java(Android)游戏开发框架LGame-0.2.7发布

2010-08-22 07:53 886 查看
2010-08-19更新内容:



1、针对Android版增加了多点触摸支持。



2、增加了一组模拟按钮,以Screen实现Emulator监听(此监听器对应8种按钮事件)即可直接使用。



3、增加了一些细节处的功能扩展,譬如Android版LSystem类已和JavaSE版一样提供了大量系统环境参数。



4、修正了某些环境会遇到的中文乱码问题以及新发现的框架BUG(旧版LGraphics类仿J2ME实现部分有BUG,建议更新此版)。

源码及jar下载地址:

http://loon-simple.googlecode.com/files/LGame-0.2.7.7z




Android版启动函数变更:



在0.2.7版中,略微变更了游戏初始化方式,入口函数改为onMain。



public class Main extends LGameAndroid2DActivity {
	
	public void onMain() {
		//this.initialization(false,LAD.LEFT, "Admob ID",60);
		this.initialization(false);
		this.setShowLogo(false);
		this.setScreen(new EmulatorTest());
		this.setFPS(50);
		this.setShowFPS(true);
		this.showScreen();
	}
}





新增模拟按钮的使用




为了适应复杂操作环境及格斗游戏需要,特为Android及JavaSE版LGame新增一组模拟按钮,在任意Screen中实现EmulatorListener监听即可调用。



基本使用方式如下:



package org.loon.test;
import org.loon.framework.android.game.action.sprite.ColorBackground;
import org.loon.framework.android.game.core.EmulatorListener;
import org.loon.framework.android.game.core.graphics.LColor;
import org.loon.framework.android.game.core.graphics.Screen;
import org.loon.framework.android.game.core.graphics.device.LGraphics;
import android.view.KeyEvent;
import android.view.MotionEvent;
//所有的Screen(Screen、ThreadScreen、CanvasScreen)只要实现EmulatorListener监听,
//即会自动调用模拟按键。 
public class EmulatorTest extends Screen implements EmulatorListener {
	private ColorBackground background;
	public EmulatorTest() {
               //通过getEmulatorButtons函数可以返回当前模拟按钮的数组集合。	
               //getEmulatorButtons();
	}
	// 0.2.7版新增函数,会在Screen构建完成后执行并加载其中数据
	public void onLoad() {
		// ***一块红色的背景,大小为48x48
		this.background = new ColorBackground(LColor.red, 48, 48);
		// 居中(ColorBackground本身为精灵)
		this.centerOn(background);
		// 加载
		this.add(background);
	}
	public void draw(LGraphics g) {
	}
	// 0.2.7版新增函数,仿照rokon同名函数构建,仅在支持多点触摸的环境中才能被触发。
	public void onTouch(float x, float y, MotionEvent e, int pointerCount,
			int pointerId) {
	}
	public boolean onKeyDown(int keyCode, KeyEvent e) {
		return true;
	}
	public boolean onKeyUp(int keyCode, KeyEvent e) {
		return true;
	}
	public boolean onTouchDown(MotionEvent e) {
		return true;
	}
	public boolean onTouchMove(MotionEvent e) {
		return true;
	}
	public boolean onTouchUp(MotionEvent e) {
		return true;
	}
	public void onUpClick() {
		if (background != null) {
			background.move_up(4);
		}
	}
	public void onDownClick() {
		if (background != null) {
			background.move_down(4);
		}
	}
	public void onLeftClick() {
		if (background != null) {
			background.move_left(4);
		}
	}
	public void onRightClick() {
		if (background != null) {
			background.move_right(4);
		}
	}
	public void onCancelClick() {
		if (background != null) {
			background.setVisible(false);
		}
	}
	public void onCircleClick() {
		
	}
	public void onSquareClick() {
	}
	public void onTriangleClick() {
		if (background != null) {
			background.setVisible(true);
		}
	}
	public void unCancelClick() {
	}
	public void unCircleClick() {
	}
	public void unDownClick() {
	}
	public void unLeftClick() {
	}
	public void unRightClick() {
	}
	public void unSquareClick() {
	}
	public void unTriangleClick() {
	}
	public void unUpClick() {
	}





用新增的模拟按键可以轻松实现格斗类或需要复杂操作的游戏:







框架基本使用方法请参见此文:http://blog.csdn.net/cping1982/archive/2010/08/06/5794380.aspx





以下为较早前发布过的一些程序示例画面(请下载较早前LGame发布版本获得):

以下为LGame-Simple开发的部分游戏示例画面。





































源码及jar下载地址:

http://loon-simple.googlecode.com/files/LGame-0.2.7.7z
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: