📄 mgc.java
字号:
/*游戏场景类
包括如下场景:
场景一:城郊
场景二:荒岛
场景三:女儿国
场景四:勇士国
场景五:真假蓬莱
场景六:军营*/
import javax.microedition.lcdui.*;
import java.io.*;
import java.lang.*;
import java.util.Timer;
import java.util.TimerTask;
import java.util.Random;
import java.util.Vector;
import javax.microedition.media.*;
import com.nokia.mid.ui.*;
public class MGC extends FullCanvas
{
/*角色变量*/
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=4;//行走的速度
int count;//通用变量,用于各种情况下的计数
int[] weapon;//武器
int curKey;
boolean update;//更新标志
static int[] startx,starty;//初生地的坐标
int curweapon;//当前使用的武器
int curEl;//当前战斗中的怪物等级
boolean task,task2;//任务的触发标志,task为前四个任务,task2为最后一个任务
boolean boat;//判断是否已经购买过船
boolean t;//隐身标志
boolean tran;//附身标志
boolean walk;//是否持续移动
boolean[] dlg;//和NPC的对话标志
String[] dlgMenu;//对话中的菜单
boolean win,die;//战斗胜利和阵亡的标志
String tip;//提示信息
String dlgm;
String pro;//属性信息
String[] attackMenu=new String[]{"火球",
"落星",
"风残",
"召狼",
"召熊",
"召龙",
"隐身",
"遁走",
"附身",
"回血",
"回气",
"攻击"};
int Offy,Offx;
int dlgn;
int dlgMenuChoose;
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;
int step;
static boolean running;
String[] dlgM;//对话的内容
static Image screenPic;//场景大图
static Image NPCPic;//精灵大图
static Image proBg,UI;//属性菜单图
InputStream is;//输入流
Vector winString=new Vector(0,1);//胜利画面的文字
static Image[] p;
static Image[] screen;//场景图片
static Image[] spic;//技能图片
static Image atpic,attackBg;//战斗场景中的图片
static Image spic0;
Image dlgpic;//对话的图片
static Image[] sword;//武器图片
String[] mapName=new String[]{"剑灵村","流沙岛","幽灵镇","勇士国","蓬莱岛","断肠谷"};
boolean updateMan;
static Graphics g1;
Random rd;
Player map,attack;
boolean isWeather;
Graphics bufferg;
Image winScreen;
int offsetY=20;//屏幕上提的偏移量
Timer ti;
int[][] snow=new int[15][15];//雪花
TI mo,atw,atc,changeMap,playsound,weather;//mo控制人物移动,atw控制技能效果,atc控制攻击顺序切换,changeMap控制场景切换
//Command choose,gmenu,con;
public MGC()
{
running=true;
w=176;
h=208-offsetY;
// choose=new Command("",Command.OK,0);
// gmenu=new Command("菜单",Command.SCREEN,0);
// choose=new Command("选择",Command.OK,0);
// con=new Command("继续",Command.OK,0);
//
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -