2013年5月15日 星期三

【Java教學】製作九重史


     新增進階精靈魔法:九重矢


1.開啟 src/l1j/server/server/clientpackets/C_ItemUSe.java

搜尋
          } else if (itemId == 40022) { // 古代體力恢復劑



修改為

          // 新增進階精靈魔法:九重矢 by impreza8837
          } else if(itemId == 300037) {
            int skillid = NINE_ARROW;
            L1SkillUse l1skilluse = new L1SkillUse();
            l1skilluse.handleCommands(client.getActiveChar(), skillid,
                  spellsc_objid, spellsc_x, spellsc_y, null, 0,
                  L1SkillUse.TYPE_NORMAL);
          // 新增進階精靈魔法:九重矢 by impreza8837
          } else if (itemId == 40022) { // 古代體力恢復劑


2.開啟 src/l1j/server/server/model/skill/L1SkillUse.java

搜尋
10027, 10028, 10029 };


修改為
10027, 10028, 10029, 177 }; // 新增進階精靈魔法:九重矢 by impreza8837


再搜尋
} else if (_skillId == 10026 || _skillId == 10027


修改為
          // 新增進階精靈魔法:九重矢 by impreza8837
          } else if (_skillId == NINE_ARROW) {
            boolean gfxcheck = false;
            int[] BowGFX = { 138, 37, 3860, 3126, 3420, 2284, 3105,
                  3145, 3148, 3151, 3871, 4125, 2323, 3892, 3895,
                  3898, 3901, 4917, 4918, 4919, 4950, 6087, 6140,
                  6145, 6150, 6155, 6160, 6269, 6272, 6275, 6278, 371 };
            int playerGFX = _player.getTempCharGfx();
            for (int gfx : BowGFX) {
                if (playerGFX == gfx) {
                  gfxcheck = true;
                  break;
                }
            }
            if (!gfxcheck) {
                return;
            }

            for (int i = 9; i > 0; i--) {
                _target.onAction(_player);
            }
            for (int i = 3; i > 0; i--) {
              _player.sendPackets(new S_SkillSound(_player.getId(),
                  4394));
            _player.broadcastPacket(new S_SkillSound(_player.getId(),
                  4394));
            Thread.sleep(400L);
            }
          // 新增進階精靈魔法:九重矢 by impreza8837
          } else if (_skillId == 10026 || _skillId == 10027


3.開啟 src/l1j/server/server/model/skill/L1SkillId.java



搜尋
public static final int SKILLS_END = 176;


修改為

  // 新增進階精靈魔法:九重矢 by impreza8837
  public static final int NINE_ARROW = 177;
  // 新增進階精靈魔法:九重矢 by impreza8837
  public static final int SKILLS_END = 177;


DB增加etcitem物品
INSERT INTO `etcitem` VALUES ('300037', '進階精靈魔法:九重矢', '進階精靈魔法:九重矢', 'scroll', 'spell_long', 'paper', '630', '1755', '22', '0', '1', '0', '0', '0', '0', '0', '0', '0', '0', '1', '0', '0', '5', '400', '0', '0', '0');

記得修改想要的CD時間 預設:400

DB增加skills技能
INSERT INTO `skills` VALUES ('177', '進階精靈魔法:九重矢', '0', '0', '45', '0', '0', '0', '0', '0', 'attack', '3', '0', '0', '0', '0', '0', '0', '64', '0', '-1', '0', '0', '8', '', '18', '0', '0', '0', '0');
記得修改想要的耗魔量 預設:45

沒有留言:

張貼留言