魔塔java怪物源代码,Java魔塔
求魔塔的地图、怪物数据
///////////////////////生、攻、防、金、经
成都创新互联专注于中大型企业的成都网站制作、网站建设和网站改版、网站营销服务,追求商业策划与数据分析、创意艺术与技术开发的融合,累计客户上千余家,服务满意度达97%。帮助广大客户顺利对接上互联网浪潮,准确优选出符合自己需要的互联网运用,我们将一直专注成都品牌网站建设和互联网程序开发,在前进的路上,与客户一起成长!
boss_man.0 = new Array(50, 20, 1, 1, 1, "绿头怪")
boss_man.1 = new Array(70, 15, 2, 2, 2, "红头怪")
boss_man.2 = new Array(100, 20, 5, 3, 3, "小蝙蝠")
boss_man.4 = new Array(110, 25, 5, 5, 4, "骷髅人")
boss_man.3 = new Array(200, 35, 10, 5, 5, "青头怪")
boss_man.5 = new Array(150, 40, 20, 8, 6, "骷髅士兵")
boss_man.23 = new Array(125, 50, 25, 10, 7, "初级法师")
boss_man.8 = new Array(150, 65, 30, 10, 8, "大蝙蝠")
boss_man.6 = new Array(300, 75, 45, 13, 10, "兽面人")
boss_man.16 = new Array(400, 90, 50, 15, 12, "骷髅队长")
boss_man.25 = new Array(500, 115, 65, 15, 15, "石头怪人")
boss_man.20 = new Array(250, 120, 70, 20, 17, "麻衣法师")
boss_man.7 = new Array(450, 150, 90, 22, 19, "初级卫兵")
boss_man.9 = new Array(550, 160, 90, 25, 20, "红蝙蝠")
boss_man.24 = new Array(100, 200, 110, 30, 25, "高级法师")
boss_man.11 = new Array(700, 250, 125, 32, 30, "怪王")
boss_man.10 = new Array(1300, 300, 150, 40, 35, "白衣武士")
boss_man.14 = new Array(850, 350, 200, 45, 40, "金卫士")
boss_man.12 = new Array(500, 400, 260, 47, 45, "红衣法师")
boss_man.26 = new Array(900, 450, 330, 50, 50, "兽面武士")
boss_man.28 = new Array(1250, 500, 400, 55, 55, "冥卫兵")
boss_man.29 = new Array(1500, 560, 460, 60, 60, "高级卫兵")
boss_man.27 = new Array(1200, 620, 520, 65, 75, "双手剑士")
boss_man.21 = new Array(2000, 680, 590, 70, 65, "冥战士")
boss_man.15 = new Array(900, 750, 650, 77, 70, "金队长")
boss_man.17 = new Array(1500, 830, 730, 80, 70, "灵法师")
boss_man.22 = new Array(2500, 900, 850, 84, 75, "冥队长")
boss_man.18 = new Array(1200, 980, 900, 88, 75, "灵武士")
boss_man.30 = new Array(3100, 1150, 1050, 92, 80, "影子战士")
boss_man.13 = new Array(15000, 1000, 1000, 100, 100, "红衣魔王")
boss_man.19 = new Array(30000, 1700, 1500, 250, 220, "冥灵魔王")
boss_man.31 = new Array(99999, 5000, 4000, 0, 0, "血影")
boss_man.32 = new Array(99999, 9999, 5000, 0, 0, "魔龙")
51层魔塔
物理攻击:敌方攻击力-己方防御力=伤害值
21层魔塔
敌方攻击力-己方防御力=伤害值
或
(敌方攻击力-己方防御力)×2=必杀伤害值
新新魔塔
敌方攻击力-己方防御界线值=伤害值
注:你的攻击界线值越高越好,防御界线值越低越好
或
(敌方攻击力-己方防御力)×2=必杀伤害值
或
敌方攻击力-己方防御界线值+将对手能量化为生命值=伤害值
或
敌方攻击力-己方反弹攻击力-己方防御界线值=伤害值
魔塔各种怪物的能力值与属性
1,属性按照越弱的系越烂,越强的系越牛来分配,刚开始不要10攻防,要1攻0防,把怪物调烂点
2,每20层左右一个商店,最好是越买越贵的,固定价格建议30层出一个
3,每层的宝石不超过6个,后期能力高了每层还是六个,但是必须要加更多能力
4,经验商店的话,下载一个魔塔样板25936,里面有经验商店的范例
跪求魔塔样板工程怪物、物品的名称及相应编号
魔塔样板简易使用指南 首先请确保你已看过66rpg的新手入门录象,没有看过的请关闭本指南。然后你需要rmxp1.03,下载地址(请支持正版软件),最后下载一个魔塔样板,目前最新为Ver4618,下载地址。准备工作到此结束。 现在用rmxp打开魔塔样板,注意左下角,如左图: 先将画红圈的地图改名为5001、5002、6001、6002,然后复制空白地图将新地图改名为1001。好了,这个地图就是你的魔塔第一层,见下图:依次类推1002是第二层、1003是第三层 注意,你必须采用复制的方法来创建每一个地图。右侧5个事件必须在每个地图中存在,事件不能删除然后从其他地方复制粘贴 好了,你已经开始第一层的制作了,你首先要做的就是画地图左边三个图块请画在第二层 下图就是一个样例有了墙,还得有门、钥匙、物品、怪物等等,这些都只需要复制原有样板中的事件即可。物品和怪物在数据库中设置,所有的已有物品都不要删除,怪物则需要作者自行设置,接下来讲一下如何设置怪物。左图是一个典型的怪物设置红圈分别代表怪物名称、生命、战斗图、攻击、防御、经验和金币每种怪物都可以设置两种属性,格式为在名称中“A:B:C”,如右图怪物:A为毒蝙蝠、B为1、C为空,代表这种怪物叫毒蝙蝠,拥有代号为1的一种属性(属性代号参见样板中更新记录) 设置完怪物,复制一个怪物事件,修改,确保红圈中的格式为“怪物xxxB”xxx代表数据库中敌人编号,不足三位左边补0,B代表怪物是否是boss。本例没有B代表不是boss(boss表示只能通过战斗来消灭的怪物) 下图就是设置完成的地图 现在让我们运行游戏,咦!为什么主角没有出现在我们制作的地图中呢,原来还需要设置主角初始位置,在哪呢?? 在开始地图中,打开右图中红圈事件,第二页最下,看见了没有,修改场所移动到我们的新地图里即可。 再次运行游戏,成功,这就是一个最简单的样例,更复杂的就看各位作者了 一些最常见的问题:1、如何设置超过999的怪物攻防?回答:使用脚本:$data_enemies[26].atk=8888$data_enemies[26].pdef=8888$data_enemies[27].atk=9999$data_enemies[27].pdef=9999#以上就是将敌人攻防突破999限制的地方#26、27号敌人魔龙章鱼的攻防调到8888和9999在开始地图事件1第二页中有样例 2、为什么上下楼后不是出现在楼梯口,而是在其他事件上面?回答:必须采用复制的方法创建新地图,且不能删除此地图的原有事件 3、如何设置宝石血瓶增加的数值?回答:在开始地图事件1第二页中设置 4、一些常见的事件如何用脚本来表示?回答:参考地址:在事件中使用的常用脚本 5、样板里的物品只能使用一次,怎样才能无限使用?回答:把公共事件使用物品里的下面这句脚本删除就可以无限使用(注意,每个物品下都有这么一句) $game_party.gain_item($game_variables[20],-1) 6、怎样表示勇士的经验?回答:$game_actors[$game_variables[1]+1].exp表示当前勇士的经验,$game_actors[2].exp 表示2号勇士的经验或者直接使用变量的方法,9号地图53号事件上面有样例。 7、为什么做了很多武器和防具在游戏里不能装备?回答:必须在数据库职业里将可以装备的武器和防具打上勾 8、16个存档不够我用,怎么才能有更多?回答:在脚本库■protect savefile里30行MaxPages = 4,将4改大即可增加存档个数 9、x菜单默认是透明的,怎么设为不透明?回答:在脚本编辑器里删掉■Window_Aero。 10、怎样关闭双楼梯?回答:在公共事件上下楼最后一排关闭76号开关。 巨大八爪鱼2009年10月19日
求一个简单RPG游戏的代码,JAva编写的
package com.lxi;
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Rpg {
@SuppressWarnings("unchecked")
public static void main(String[] args) throws Exception {
System.out.println("在这里输入两个人物进行PK,以英文逗号分隔: [BM,DH,MK]");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
ClassPerson c1;
ClassPerson c2;
try {
String temp = br.readLine();
String[] str = temp.split(",");
if (str.length != 2) {
throw new Exception("输入格式有误,按默认PK");
}
c1 = (ClassPerson) Class.forName("com.lxi."
+ str[0].toUpperCase());
c2 = (ClassPerson) Class.forName("com.lxi."
+ str[1].toUpperCase());
} catch (Exception e) {
// TODO Auto-generated catch block
c1 = (ClassPerson) Class.forName("com.lxi.BM");
c2 = (ClassPerson) Class.forName("com.lxi.DH");
}
try {
Person p1 = c1.newInstance();
Person p2 = c2.newInstance();
long time = System.currentTimeMillis();
long nextTime1 = (long) (time + p1.coldTime*1000); //
long nextTime2 = (long) (time + p2.coldTime*1000); //发动攻击的时间
System.out.println("---游戏开始---");
while (true) {
long currenTime = System.currentTimeMillis();
if (nextTime1 currenTime) { //时间到则发动攻击
p1.hit(p2);
nextTime1 += p1.coldTime*1000 + p1.waitTime*1000; //下次攻击时间=冷却时间+被晕眩时间
p1.waitTime = 0; //回合结束,重置被晕眩时间为0
}
if (nextTime2 currenTime) {
p2.hit(p1);
nextTime2 += p2.coldTime*1000 + p2.waitTime*1000;
p2.waitTime = 0;
}
}
} catch (ClassCastException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
}
package com.lxi;
import java.util.Random;
class BM extends Person {
public BM() {
val = 650;
coldTime = 1.5;
fight = 40;
chanceHit = 3;
chanceDefense = 3;
waitTime = 0;
}
int count = 0; //防御技能发动的次数
int temp = 40; //攻击力,值同fight
boolean hitFlag = false;
boolean defenseFlag = false;
Random rand = new Random();
public void hit(Person p) {
if (rand.nextInt(10) chanceHit) {
fight = fight * 2; //发动双倍攻击
hitFlag = true;
}
int hurt = p.defense(this);
p.val = p.val - hurt;
fight = temp; //还原为单倍攻击
if (p.val = 0) {
System.out.println(this.getClass().getSimpleName() + "胜出!");
System.exit(0);
}
System.out.println(this.getClass().getSimpleName() + "攻击"
+ p.getClass().getSimpleName() + ","
+ this.getClass().getSimpleName()
+ (this.hitFlag ? "发动攻击技能 " : "未发动攻击技能 ")
+ p.getClass().getSimpleName()
+ (this.defenseFlag ? "发动防御技能 " : "未发动防御技能 ")
+ this.getClass().getSimpleName() + ":" + this.val + ","
+ p.getClass().getSimpleName() + ":" + p.val);
hitFlag = false;
defenseFlag = false;
}
public int defense(Person p) {
if (rand.nextInt(10) chanceDefense) {
if (count != 0) {
p.val = p.val - p.fight;
count++;
defenseFlag = true;
if (p.val = 0) {
System.out.println(this.getClass().getSimpleName() + "胜出!");
System.exit(0);
}
}
}
return p.fight;
}
}
class MK extends Person {
public MK() {
val = 700;
coldTime = 2.5;
fight = 50;
chanceDefense = 6;
chanceHit = 3;
waitTime = 0;
}
boolean hitFlag = false;
boolean defenseFlag = false;
Random rand = new Random();
public void hit(Person p) {
if (rand.nextInt(10) chanceHit) {
p.waitTime = 3; //使对方晕眩3s
hitFlag = true;
}
int hurt = p.defense(this);
p.val = p.val - hurt;
if (p.val = 0) {
System.out.println(this.getClass().getSimpleName() + "胜出!");
System.exit(0);
}
System.out.println(this.getClass().getSimpleName() + "攻击"
+ p.getClass().getSimpleName() + ","
+ this.getClass().getSimpleName()
+ (this.hitFlag ? "发动攻击技能 " : "未发动攻击技能 ")
+ p.getClass().getSimpleName()
+ (this.defenseFlag ? "发动防御技能 " : "未发动防御技能 ")
+ this.getClass().getSimpleName() + ":" + this.val + ","
+ p.getClass().getSimpleName() + ":" + p.val);
hitFlag = false;
defenseFlag = false;
}
public int defense(Person p) {
if (rand.nextInt(10) chanceDefense) {
defenseFlag = true;
return p.fight / 2; //防御技能发动,伤害减半
}
return p.fight;
}
}
package com.lxi;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Random;
//三个人物的基类
abstract class Person {
int val; //生命值
double coldTime; //冷却时间
int waitTime; //晕眩时间
int fight; //攻击力
int chanceHit; //发起主动技能的概率
int chanceDefense; //发起防御技能的概率
abstract void hit(Person p); //攻击技能
abstract int defense(Person p); //防御技能,返回被伤害点数
}
class DH extends Person {
public DH() {
val = 600;
coldTime = 1.0;
fight = 30;
chanceHit = 3; //表示30%的概率
chanceDefense = 3;
waitTime = 0;
}
Random rand = new Random();
boolean hitFlag = false; //主动技能发动的标识
boolean defenseFlag = false; //防御技能发动的标识
public void hit(Person p) {
if (rand.nextInt(10) chanceHit) { //发动主动技能
int hurt = p.defense(this);
p.val = p.val - hurt;
if (p.val = 0) {
System.out.println(this.getClass().getSimpleName() + "胜出!");
System.exit(0);
}
val = val + hurt;
if (val 600)
val = 600;
hitFlag = true; //标记主动技能已经发动
} else { //进行普通攻击
int hurt = p.defense(this);
p.val = p.val - hurt;
if (p.val = 0) {
System.out.println(this.getClass().getSimpleName() + "胜出!");
System.exit(0);
}
}
System.out.println(this.getClass().getSimpleName() + "攻击"
+ p.getClass().getSimpleName() + ","
+ this.getClass().getSimpleName()
+ (this.hitFlag ? "发动攻击技能 " : "未发动攻击技能 ")
+ p.getClass().getSimpleName()
+ (this.defenseFlag ? "发动防御技能 " : "未发动防御技能 ")
+ this.getClass().getSimpleName() + ":" + this.val + ","
+ p.getClass().getSimpleName() + ":" + p.val);
hitFlag = false; //
defenseFlag = false; //重置标记,下次重用
}
public int defense(Person p) {
if (rand.nextInt(10) chanceDefense) {
defenseFlag = true; //标记防御技能已经发动
return 0;
} else {
return p.fight;
}
}
}
有用java编写“魔塔”的吗
学习内容大致可分为以下10点,但也要跟上技术发展的步伐,实时更新。
1、Java语言
Java语言体系比较庞大,包括多个模块。从WEB项目应用角度讲有JSP、Servlet、JDBC、JavaBean(Application)四部分技术。
(1)、Java Database Connectivity(JDBC)技术
在Java Web应用开发中,数据库管理系统(RDBMS)的使用是不可缺少的。JDBC(Java Database Connectivity) 是一种用于执行SQL 语句的 Java API。它由一组用 Java 编程语言编写的类和接口组成。JDBC 为工具/数据库开发人员提供了一个标准的API,使他们能够用纯Java API 来编写数据库应用程序。
简单地说,JDBC 可做三件事:
l 与数据库建立连接,
l 发送SQL 语句,
l 处理结果。
(2)、Servlet技术
Servlet是运行在服务器端的程序,可以被认为是服务器端的applet。servlet被Web服务器(例如Tomcat)加载和执行,就如同applet被浏览器加载和执行一样。servlet从客户端(通过Web服务器)接收请求,执行某种操作,然后返回结果。
分享文章:魔塔java怪物源代码,Java魔塔
浏览地址:http://hbruida.cn/article/hdsiep.html