主页| 免费发布天堂1开机信息| 站长qq:1161903

教大家新增宠物

来源:2TT天堂发布网 www.2tt.cc    发布时间:2018/9/4 0:51:17    浏览量:950

首先要修改的档案有四个:
C_GiveItem
C_RequestAttr
CalcStat
L1PetInstance
跟db 的npc

第一部分先新增npc
举例:
就像是杜宾狗二转变高等杜宾狗
193050        狼人a宝宝        L1Monster        5        60        10        10        20        20        20        20        20        20        82        -9        small        0        0        0        0        0        1        1        1        0        640        1080        1        0        0        1110        $18        0        0        0        0        wolf        0        -1        -1        0        0        0        0        0        0        0        0        0        0        0        10        0        0        0        0        0        0        0        -1        0        -1        0        1        0        0

193066        莱肯a弟弟        L1Monster        5        90        20        10        27        27        27        27        27        27        26        -6        small        0        0        0        0        0        2        1        1        1        640        850        1        0        0        1108        $1,711        0        0        0        0        wolf        0        -1        -1        0        0        0        0        0        0        0        0        0        0        0        13        0        0        0        0        0        0        0        -1        0        -1        0        1        0        0

新增好db后我们开始修改核心

第二部分修改C_GiveItem
收询if ((item.getItem().getItemId() == 40057
在底下新增
target.getNpcTemplate().get_npcId() == 193050 || //狼人a宝宝

在收询else if (item.getItem().getItemId() == 40070
一样新增

target.getNpcTemplate().get_npcId() == 193050 || //狼人a宝宝


再来第三部分修改C_RequestAttr

收询case 325
在底下新增
"狼人a宝宝") ||
str.toLowerCase().equals(
"莱肯a弟弟") ||
str.toLowerCase().equals(

这样就完成第三部分

再来第四部分修改L1PetInstance

收询public void evolvePet(int new_itemobjid)

在底下新增
case 193050: // 狼人a宝宝
new_npcid = 193066; // 莱肯a弟弟
break;

这样就完成第四部分

再来第五部分修改CalcStat

收询public short CalcStatPethp(int npcid) {

在底下新增
if (npcid == 193050) { // 狼人a宝宝
randomhp = (short) (10 + getRnd().nextInt(6));
}
if (npcid == 193066) { // 莱肯a弟弟
randomhp = (short) (18 + getRnd().nextInt(10));
}

在收询public short CalcStatPetmp(int npcid)

在底下新增
if (npcid == 193050) { // 狼人a宝宝
randommp = (short) (2 + getRnd().nextInt(3));
}
if (npcid == 193066) { // 莱肯a弟弟
randommp = (short) (3 + getRnd().nextInt(3));
}

这样宠物就大功告成了!!希望大家多多研究自己研发的宠物萝!!!!
别问我太多高深的问题= =++小弟很浅学!!!

新增宠物用蛇麽东西抓,需要动核心
如果你懂java转class的话..我教的你就懂^^

1.
l1j\server\server\clientpackets
打开:C_GiveItem.java
if ((item.getItem().getItemId()
看到以下东西~
if ((item.getItem().getItemId() == 40057 ||
item.getItem().getItemId() == 40060)    解释一下:此段的意思就是对应db,使用漂肉and胡萝卜抓宠
&& !target.isDead()
&& (
//
target.getNpcTemplate().get_npcId() == 45043  解释一下:45043就是狼的代号!
|| //
target.getNpcTemplate().get_npcId() == 45034
自己画葫芦八..加上..
|| //
target.getNpcTemplate().get_npcId() == 输入你要加的宠物npc代号

修改后在往下面拉..
看到
} else if (item.getItem().getItemId() == 40070   解释一下:此段就是对应db,使用40070进化果实进化..
&& // 进化果实
!target.isDead()
&& (
//
target.getNpcTemplate().get_npcId() == 45034
|| //
target.getNpcTemplate().get_npcId() == 45034
自己画葫芦八..加上..
|| //
target.getNpcTemplate().get_npcId() == 输入你要加入的宠物代号让它进化!!

2.
l1j\server\server\utils
打开:CalcStat.java
找到public static short calcStatPetHp(int npcid)
public static short calcStatPetHp(int npcid) {
short randomhp = 0;
if (npcid == 45043) { //
randomhp = (short) (3 + rnd.nextInt(7));  解释一下:45043是狼的代号.升级加多少hp
自己画葫芦...加上..
}
if (npcid == 填入你要加的宠物编号) { //
randomhp = (short) (升级加的血量 + rnd.nextInt(在加上随机值));
记得还要加上宠物进化后的升级血量!!
}
if (npcid == 填入你要加的宠物进化编号) { //
randomhp = (short) (升级加的血量 + rnd.nextInt(在加上随机值));
修改后在往下面拉..
看到
public static short calcStatPetMp(int npcid) {
short randommp = 0;
if (npcid == 45043) { //
randommp = (short) (1 + rnd.nextInt(2));  解释一下:45043是狼的代号.升级加多少mp
自己画葫芦...加上..
}
if (npcid == 填入你要加的宠物进化编号) { //
randomhp = (short) (升级加的魔量 + rnd.nextInt(在加上随机值));
记得还要加上宠物进化后的升级血量!!
}
if (npcid == 填入你要加的宠物进化编号) { //
randomhp = (short) (升级加的魔量 + rnd.nextInt(在加上随机值));
3.
l1j\server\server\model\Instance
打开:L1PetInstance.java
找到public void evolvePet(int new_itemobjid)
public void evolvePet(int new_itemobjid) {
PetTable pettable = new PetTable();
L1Pet l1pet = pettable.getTemplate(_itemObjId);
if (l1pet == null) {
return;
}
int new_npcid = 0;
switch (l1pet.get_npcid()) {
case 45043: //            解释一下:此段意思是狼进化成高等狼的代号!!
new_npcid = 45686;
break;"
自己画葫芦...加上..
case 填入你新增的宠物代号: //
new_npcid = 填入你新增的进化宠物代号;
break;
这样就新增宠物完毕萝~!!