放下宝贵的1分,再放下1段宝贵J2ME的RPG游戏核心代码,找的不容易啊,分少情谊重.感觉好就顶个吧,强烈BS不结帖的人
/*游戏场景类
包括如下场景:
场景一:城郊
场景二:荒岛
场景三:女儿国
场景四:勇士国
场景五:真假蓬莱
场景六:军营*/
//逻辑处理
import javax.microedition.lcdui.*;
import java.io.*;
import java.lang.*;
import java.util.Timer;
import java.util.TimerTask;
import java.util.Random;
public class MGC extends Canvas implements CommandListener
{
/*角色变量*/
static int l,m,le,ex,sp,d,gold,x,y,lm,mm,dr;//l,m为当前的血和气,lm,mm为当前的血气的最大值,le为人物等级,ex为经验,sp为剩余技能点,d为基础物理攻击力,dr为人物的方向标志
int D;//角色的物理总攻击力,包括基础攻击力和加成攻击力
int[] s,tn;//s[]为技能等级,tn[]为任务物品的收集数量
int addMd,addPd;//武器附加的魔法攻击和物理攻击
int stealB;//偷血量
int addPdP;//基础攻击力提升比例
int curnpc;//当前对话的NPC序号
int speed=8;//行走的速度
int count;//通用变量,用于各种情况下的计数
int[] weapon;//武器
static int[] startx,starty;//初生地的坐标
int curweapon;//当前使用的武器
int curEl;//当前战斗中的怪物等级
boolean task,task2;//任务的触发标志,task为前四个任务,task2为最后一个任务
boolean boat;//判断是否已经购买过船
boolean t;//隐身标志
boolean tran;//附身标志
boolean walk;//是否持续移动
boolean[] dlg;//和NPC的对话标志
boolean win,die;//战斗胜利和阵亡的标志
String tip;//提示信息
String dlgm;
int dlgn;
static Image poc;//主角的图片
/*游戏控制变量*/
static int x0,y0,w,h,sl,i,j;//sl为场景号,i,j为菜单选项编号,i为一级菜单,j为二级菜单,x0,y0为屏幕左上角相对大场景的坐标
int killCount;//竞技场的竞技计数
static int[] W,H;//场景的长和宽(Tile为单位)
int[] sc;//地图索引数组
int[] spn;//精灵的数量
static int[] screenStart=new int[]{16,29,33,47,68,77,83};//场景图片编号的起点
int sx,sy;//技能图片的坐标
int sn;//对话的序号(兼战斗中获得的经验值)
SP[] spi;//战斗场景中的精灵对象
SP[] NPC;//非战斗场景中的精灵对象
int an;//攻击顺序
int nn;//当前与主角对话的NPC序号(兼战斗中获得的金钱)
boolean pm,am,tm;//属性菜单,战斗菜单和传送菜单的弹出标志
boolean atm;//战斗场景
boolean me;//对话控制开关
boolean change;//场景切换开关
boolean gameMenu;//游戏菜单开关
boolean playOn;
boolean showW;
static boolean running;
String[] dlgM;//对话的内容
static Image screenPic;//场景大图
static Image NPCPic;//精灵大图
InputStream is;//输入流
static Image[] p;
static Image[] screen;//场景图片
static Image[] spic;//技能图片
static Image atpic;//战斗场景中的图片
static Image spic0;
Image dlgpic;//对话的图片
static Graphics g1;
Random rd;
Timer ti;
TI mo,atw,atc,changeMap,playsound;//mo控制人物移动,atw控制技能效果,atc控制攻击顺序切换,changeMap控制场景切换
Command choose,gmenu,con;
public MGC()
{
running=true;
w=176;
h=182;
choose=new Command( " ",Command.OK,0);
gmenu=new Command( "菜单 ",Command.SCREEN,0);
choose=new Command( "选择 ",Command.OK,0);
con=new Command( "继续 ",Command.OK,0);
//addCommand(choose);
//addCommand(gmenu);
setCommandListener(this);
}
------解决方案--------------------顶你啊。。。。太牛了。。