⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gamecanvas.java

📁 手机版大航海时代
💻 JAVA
📖 第 1 页 / 共 5 页
字号:

	/** 港口任务头像图片y 8坐标 */
	int headY = 8;

	int x3 = 17;

	int y3 = 60;

	/** 选择跑商任务编号 */
	int runShangSelect;

	/** 各港口1~5级跑商任务对应目的地 */
	int runShangAim[][] = new int[8][5];

	/**
	 * 接受和取消跑商任务状态 0:接受任务成功 1:接受任务不成功(当前有跑商任务) 2:为取消跑商任务成功 3:为当前没有跑商任务,取消任务无效
	 */
	int rs;

	/** 跑商信息详细提示拆分字符串数组 */
	String runShangCueTemp[];

	/** 随机进入战斗状态定时器 */
	int actionTimer;

	/** 是否随机战斗时间 */
	boolean isRandom = true;

	/** 记录随机时间 */
	int actionNum;

	/** 随机对象 */
	Random random;

	/** 对战过程中状态true为玩家控制状态 */
	boolean playerAction = true;

	/** 战斗画面背景x坐标 */
	int actionCanvasX = -5;

	/** 战斗画面背景 */
	Image actionImage;

	/** 玩家战斗画面船只图片 */
	Image actionPlayerImage;

	/** 战斗画面海盗船只图片 */
	Image actionNpcImage;

	/** 遭遇当前海盗等级 */
	int npcLv = 1;

	/** 当前海域序号 */
	int seaIndex = 1;

	/** 对战状态下绘制玩家选择攻击方式x,y坐标 */
	int aX = 100;

	int aY = 170;

	/** 非玩家控制战斗进程0播放玩家攻击动画,1击中海盗播放动画,2海盗攻击动画,3播放击中玩家动画 */
	int actionCourse = -1;

	/** 攻击方式选择图片 */
	Image actionFashion;

	/** 是否绘制切入战斗画面盒装打开动画 */
	boolean isStartAction = true;

	/** 切入战斗画面剪切区域其实标签 */
	int actionClipLable;

	/** 玩家此次攻击是否出现爆击 */
	boolean playerMax;

	/** 炮弹图片 */
	Image shotImage;

	/** 玩家炮弹发射位置 */
	int shotX1;

	int shotY;

	int shotY1;

	/** 海盗船炮弹发射位置 */
	int shotX2;

	/** 海盗船此次攻击是否出现爆击 */
	boolean npcMax;

	/** 本轮攻击玩家失血量 */
	int playerLoss;

	/** 本轮攻击NPC失血量 */
	int npcLoss;

	/** 绘制失血y坐标 */
	int lossY;

	/** 判断抛物线上升或者下降 */
	boolean b = true;

	/** 记录逃跑是否成功 */
	boolean flee;

	/** 战斗结果标签-1战斗未结束,0战斗失败,1为战斗胜利 */
	int actionResult = -1;

	/** 爆炸图片 */
	Image boomImage;

	/** 爆炸图片绘制标签 */
	int boomIndex;

	/** 战斗胜利图片 */
	Image actionWinImage;

	/** 战斗失败界面图片 */
	Image actionLostImage;

	/** 主线任务对话 */
	String mainDalog;

	/** 主线任务进度 */
	int mainDalogSum;

	/** 主线任务对话长度的下标 */
	int mainindex = 0;

	/** 主线任务对话长度 */
	int[] mainDalogLenth = { 5, 7, 9, 11, 12, 16, 17, 20, 21, 23, 100 };

	/** 弹药的重量 */
	int ammoWight[] = { 5, 10, 15, 20 };

	/** 购买弹药需要的金钱 */
	int ammoMoney[] = { 10, 30, 50, 80 };

	/** 主线任务需要的声望值 */
	int mainSound[] = { 0, 50, 200, 550, 1000, 2500, 3500, 10000000 };

	int tempActionTimer;

	boolean startTempActionTimer;

	/** 完成任务发放宝物 */
	boolean[] isSonny = new boolean[7];

	/** 赌博的金钱 */
	int GambingMoney[] = { 900, 600, 300 };

	/** NPC点数 */
	int aNumber;

	/** 玩家点数 */
	int pNumber;

	/** 控制选择颜色 */
	int color;

	/** 是否显示文字 */
	boolean showFont;

	/** 是否进入NPC操作 */
	boolean AI;

	/** 是否NPC操作结束 */
	boolean isWin;

	/** 是否重新再来一次 */
	boolean isAgain;

	/** 是否显示 是 和 否 */
	boolean isShow;

	/** 隐藏地图是否可以进入 */

	// 新增加的变量///////////////////////////////////////////////////////////////
	/** 控制当前任务状态下隐藏地图是否开放1代表任务1中需开放的隐藏地图 */
	boolean[] mapOpen = new boolean[6];

	/** 关卡怪物显示图片 */
	Image bossImage;

	/** 移动象素控制 */
	int dx, dy;

	/** 暂存dx,dy */
	int dx1, dy1;

	/** 当前战斗对象是否是Boss */
	boolean actionBoss;

	/** 战斗中Boss图片 */
	Image bossActionImage;

	/** 进入港口提示文字 */
	Image FontIn;

	/** 离开港口提示文字 */
	Image FontLift;

	/** 游戏结束显示图片 */
	Image gameOverImage;

	/** 游戏结束图片y坐标(x坐标为屏幕宽度的一般) */
	int gameOverY;

	/** boss的x,y坐标 */
	int bossPlace[][] = { { 125, 47 }, { 129, 169 }, { 67, 49 }, { 99, 24 },
			{ 129, 161 } };

	/** 玩家是否可以选择退出游戏 */
	boolean canExit = false;

	/** 边框图片 */
	Image runs;

	/** 商品图片 */
	Image shangPin;

	/** 交易界面图片 */
	Image abc;

	/** 购买选择框的Y坐标 */
	int buyDown;

	/** 购买选择框的X坐标 */
	int buyRight;

	/** 默认商品物价 */
	int[][] buyMoney = { { 100, 120, 300, 80, 70 }, { 70, 220, 100, 180, 100 },
			{ 100, 280, 130, 220, 80 }, { 80, 140, 160, 70, 90 },
			{ 90, 210, 320, 380, 80 }, { 80, 110, 60, 180, 200 },
			{ 200, 170, 800, 220, 170 }, { 360, 170, 230, 150, 220 } };

	/** 商品编号 */
	int[][] merchandise = { { 0, 1, 2, 3, 4 }, { 5, 6, 7, 8, 9 },
			{ 10, 11, 12, 13, 14 }, { 15, 16, 17, 18, 19 },
			{ 20, 21, 22, 23, 24, 25 }, { 25, 26, 27, 28, 29 },
			{ 30, 31, 32, 33, 34 }, { 35, 36, 37, 38, 39 }

	};

	/** 购买物价水平 */
	int[][] wujiashupin = { { 80, 80, 80, 80, 80 }, { 80, 80, 80, 80, 80 },
			{ 80, 80, 80, 80, 80 }, { 80, 80, 80, 80, 80 },
			{ 80, 80, 80, 80, 80 }, { 80, 80, 80, 80, 80 },
			{ 80, 80, 80, 80, 80 }, { 80, 80, 80, 80, 80 } };

	/** 卖出物价水平 */
	int[][] sellMerchandise = { { 70, 130, 140, 150, 160, 170, 180, 190 },
			{ 70, 130, 140, 150, 160, 170, 180, 190 },
			{ 70, 130, 140, 150, 160, 170, 180, 190 },
			{ 70, 130, 140, 150, 160, 170, 180, 190 },
			{ 70, 70, 140, 150, 160, 170, 180, 190 },

			{ 70, 70, 140, 150, 160, 170, 180, 190 },
			{ 130, 70, 130, 140, 150, 160, 170, 180 },
			{ 130, 70, 130, 140, 150, 160, 170, 180 },
			{ 130, 70, 130, 140, 150, 160, 170, 180 },
			{ 140, 70, 70, 140, 150, 160, 170, 180 },

			{ 140, 70, 70, 140, 150, 160, 170, 180 },
			{ 140, 130, 70, 130, 140, 150, 160, 170 },
			{ 140, 130, 70, 130, 140, 150, 160, 170 },
			{ 140, 130, 70, 130, 140, 150, 160, 170 },
			{ 140, 130, 70, 70, 130, 140, 150, 160 },

			{ 140, 130, 70, 70, 130, 140, 150, 160 },
			{ 140, 130, 120, 70, 130, 140, 150, 160 },
			{ 140, 130, 120, 70, 130, 140, 150, 160 },
			{ 140, 130, 120, 70, 130, 140, 150, 160 },
			{ 150, 140, 130, 70, 70, 130, 140, 150 },

			{ 150, 140, 130, 70, 70, 130, 140, 150 },
			{ 160, 150, 140, 130, 70, 130, 140, 150 },
			{ 160, 150, 140, 130, 70, 130, 140, 150 },
			{ 160, 150, 140, 130, 70, 130, 140, 150 },
			{ 160, 150, 140, 130, 70, 70, 140, 150 },

			{ 160, 150, 140, 130, 70, 70, 140, 150 },
			{ 170, 160, 150, 140, 130, 70, 130, 140 },
			{ 170, 160, 150, 140, 130, 70, 130, 140 },
			{ 170, 160, 150, 140, 130, 70, 130, 140 },
			{ 170, 160, 150, 140, 130, 70, 70, 130 },

			{ 170, 160, 150, 140, 130, 70, 70, 130 },
			{ 180, 170, 160, 150, 140, 130, 70, 130 },
			{ 180, 170, 160, 150, 140, 130, 70, 130 },
			{ 180, 170, 160, 150, 140, 130, 70, 130 },
			{ 180, 170, 160, 150, 140, 130, 70, 70 },

			{ 180, 170, 160, 150, 140, 130, 70, 70 },
			{ 190, 180, 170, 160, 150, 140, 130, 120 },
			{ 190, 180, 170, 160, 150, 140, 130, 120 },
			{ 190, 180, 170, 160, 150, 140, 130, 120 },
			{ 190, 180, 170, 160, 150, 140, 130, 120 },

	};

	/** 默认卖出物价水平 */
	final int sell[][] = { { 70, 130, 140, 150, 160, 170, 180, 190 },
			{ 70, 130, 140, 150, 160, 170, 180, 190 },
			{ 70, 130, 140, 150, 160, 170, 180, 190 },
			{ 70, 130, 140, 150, 160, 170, 180, 190 },
			{ 70, 70, 140, 150, 160, 170, 180, 190 },

			{ 70, 70, 140, 150, 160, 170, 180, 190 },
			{ 130, 70, 130, 140, 150, 160, 170, 180 },
			{ 130, 70, 130, 140, 150, 160, 170, 180 },
			{ 130, 70, 130, 140, 150, 160, 170, 180 },
			{ 140, 70, 70, 140, 150, 160, 170, 180 },

			{ 140, 70, 70, 140, 150, 160, 170, 180 },
			{ 140, 130, 70, 130, 140, 150, 160, 170 },
			{ 140, 130, 70, 130, 140, 150, 160, 170 },
			{ 140, 130, 70, 130, 140, 150, 160, 170 },
			{ 140, 130, 70, 70, 130, 140, 150, 160 },

			{ 140, 130, 70, 70, 130, 140, 150, 160 },
			{ 140, 130, 120, 70, 130, 140, 150, 160 },
			{ 140, 130, 120, 70, 130, 140, 150, 160 },
			{ 140, 130, 120, 70, 130, 140, 150, 160 },
			{ 150, 140, 130, 70, 70, 130, 140, 150 },

			{ 150, 140, 130, 70, 70, 130, 140, 150 },
			{ 160, 150, 140, 130, 70, 130, 140, 150 },
			{ 160, 150, 140, 130, 70, 130, 140, 150 },
			{ 160, 150, 140, 130, 70, 130, 140, 150 },
			{ 160, 150, 140, 130, 70, 70, 140, 150 },

			{ 160, 150, 140, 130, 70, 70, 140, 150 },
			{ 170, 160, 150, 140, 130, 70, 130, 140 },
			{ 170, 160, 150, 140, 130, 70, 130, 140 },
			{ 170, 160, 150, 140, 130, 70, 130, 140 },
			{ 170, 160, 150, 140, 130, 70, 70, 130 },

			{ 170, 160, 150, 140, 130, 70, 70, 130 },
			{ 180, 170, 160, 150, 140, 130, 70, 130 },
			{ 180, 170, 160, 150, 140, 130, 70, 130 },
			{ 180, 170, 160, 150, 140, 130, 70, 130 },
			{ 180, 170, 160, 150, 140, 130, 70, 70 },

			{ 180, 170, 160, 150, 140, 130, 70, 70 },
			{ 190, 180, 170, 160, 150, 140, 130, 120 },
			{ 190, 180, 170, 160, 150, 140, 130, 120 },
			{ 190, 180, 170, 160, 150, 140, 130, 120 },
			{ 190, 180, 170, 160, 150, 140, 130, 120 },

	};

	/** 默认商品买进水平 */
	final int buysmz[][] = { { 80, 80, 80, 80, 80 }, { 80, 80, 80, 80, 80 },
			{ 80, 80, 80, 80, 80 }, { 80, 80, 80, 80, 80 },
			{ 80, 80, 80, 80, 80 }, { 80, 80, 80, 80, 80 },
			{ 80, 80, 80, 80, 80 }, { 80, 80, 80, 80, 80 } };

	/** 船舱物品 */
	int[] deport = { 100, 100, 100, 100, 100 };

	/** 分钟 */
	int minute = 0;

	/** 日期 */
	int date = 1;

	/** 月 */
	int month = 1;

	/** 支出费用 */
	int payout;

	/** 收入利润 */
	int earning;

	/** 界面2需要使用的文字信息 */
	String[] scene2Str = { "港口: ", "交易中心", "赌   博", "修   理", "跑   商", "改造船体",
			"月", "日" };

	/** 界面4需要使用的文字信息 */
	String scene4Str[] = { "任务 Lv1", "任务 Lv2", "任务 Lv3", "任务 Lv4", "任务 Lv5",
			"取消任务", "返回港口" };

	/** 界面12需要使用的文字信息 */
	String scene7Str = "是否保存";

	/** 界面10需使用文字信息 */
	String scene10Str = "修理费用:";

	/** 界面12需使用的文字信息 */
	String[] scene12Str = { "修理成功", "您的金币不足,无法修理" };

	/** 界面8需使用的文字信息 */
	String[] scene8Str = { "跑商任务:", "跑商任务:无", "主线任务:", "主线任务:无" };

	/** 界面13需使用的文字信息 */
	String[] scene13Str = { "先把原有任务做完再来吧", "取消任务成功", "扣除金钱:200   扣除声望:5",
			"当前没有任务" };

	/** 界面14需使用的文字信息 */
	String[] scene14Str = { "此次跑商任务顺利完成", "奖励金钱:  ", "奖励声望:  " };

	/** 界面15需使用的文字信息 */
	String scene15Str = "弹药不足!!";

	/** 界面16需使用的文字信息 */
	String[] scene16Str = { "逃跑成功!!", "按任意键返回航行界面", "逃跑失败!!", "按任意键继续对战" };

	/** 界面18需使用的文字信息 */
	String[] scene18Str = { "当前战况:  胜利", "对方等级:  ", "我方等级:  ", "当前装甲:  ",
			"获得金钱:  ", "获得声望:  ", "当前战况:  战败", "对方等级:  ", "当前跑商任务失败",
			"损失金钱:  200", "损失声望:  5" };

	/** 界面19需使用的文字信息 */
	String scene19Str = "需要金币 : ";

	/** 界面20需使用的文字信息 */
	String scene20Str = "当前无法进入此区域";

	/** 界面21需使用的文字信息 */
	String[] scene21Str = { "庄家:", "丹尼:", "金币" };

	/** 界面24需使用的文字信息 */
	String[] scene24Str = { "收入", "支出", "当前金币" };

	/** 战斗界面需使用的文字信息 */
	String[] actionStr = { "等级: ", "装甲: " };

	public GameCanvas() {
		// 设定游戏为正常状态(调试)
		scene = -1;
		// 获得屏幕宽度和高度
		width = getWidth();
		height = getHeight();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -