123
发新帖 返回列表
楼主: q5127

吸血武器制作

[复制链接]

0

主题

66

帖子

108

积分

中级会员

Rank: 3Rank: 3

积分
108
发表于 2022-12-3 04:08:13 | 显示全部楼层
吸血武器
改这个的位置在哪里?在原码的l1j.server.server.model.L1Attack.java

public int DrainMana = 0;
下面新增:
public int DrainHp = 0;
--------------------------------------------------------------------------------------------

public void PlayerStaffOfManaCalc()
{
下面新增:
if((weaponId == 41 || weaponId == 57 || weaponId == 14 || weaponId == 256))    // 吸血武器 武器编号可以自己更改
{
int som_lvl = weaponEnchant + 10; // 最大hp吸取量设定
if(som_lvl < 0) som_lvl = 0;
DrainHp = _random.nextInt(som_lvl) + 5;
if(DrainHp > 30)     // 最大hp吸取量限制,红色字体(可以依照自己的喜好把一次吸血上限调高)
{
DrainHp = 30;  红色字体(可以依照自己的喜好把一次吸血上限调高)
}
}
--------------------------------------------------------------------------------------------

private void PcCommit()
{
if(_calcType == PC_PC)
{
下面新增:

if(DrainHp > 0 && targetPlayer.get_currentHp() > 0)
{
if(DrainHp > targetPlayer.get_currentHp())
DrainHp = targetPlayer.get_currentHp();
short newHp = (short) (targetPlayer.get_currentHp() - DrainHp);
targetPlayer.set_currentHp(targetPlayer, newHp);
newHp = (short) (player.get_currentHp() + DrainHp);
player.set_currentHp(player, newHp);
}
--------------------------------------------------------------------------------------------

private void NpcCommit()
{
if(_calcType == PC_NPC)
{
下面新增:

if(DrainHp > 0 && targetNpc.get_currentHp() > 0)
{
if(DrainHp > targetNpc.get_currentHp())
DrainHp = targetNpc.get_currentHp();
//HP吸取限制处理追加
short newHp = (short) (targetNpc.get_currentHp() - DrainHp);
targetNpc.set_currentHp2(newHp);
newHp = (short) (player.get_currentHp() + DrainHp);
player.set_currentHp(player, newHp);
}

加上以后,就大功告成了 可以开始吸血了!!
回复 支持 反对

使用道具 举报

0

主题

14

帖子

27

积分

注册会员

Rank: 2

积分
27
发表于 2022-12-5 14:48:34 | 显示全部楼层
谢谢大佬的分享!!!!
回复 支持 反对

使用道具 举报

0

主题

808

帖子

1387

积分

金牌会员

Rank: 6Rank: 6

积分
1387
发表于 2023-2-7 14:16:58 | 显示全部楼层
好贴,学习一下~~~!~~~~
回复 支持 反对

使用道具 举报

2

主题

56

帖子

89

积分

注册会员

Rank: 2

积分
89
发表于 2023-6-8 16:50:33 | 显示全部楼层
感謝分享!
回复

使用道具 举报

2

主题

56

帖子

89

积分

注册会员

Rank: 2

积分
89
发表于 2023-6-15 11:08:52 | 显示全部楼层
谢谢大大的分享
回复 支持 反对

使用道具 举报

1

主题

111

帖子

1071

积分

金牌会员

Rank: 6Rank: 6

积分
1071
发表于 2023-9-12 21:05:34 | 显示全部楼层
fffffffffffffffff
回复 支持 反对

使用道具 举报

0

主题

108

帖子

112

积分

中级会员

Rank: 3Rank: 3

积分
112
发表于 2024-1-23 17:17:39 | 显示全部楼层
谢谢大佬分享,  MARK一下
吸血武器
改这个的位置在哪里?在原码的l1j.server.server.model.L1Attack.java

public int DrainMana = 0;
下面新增:
public int DrainHp = 0;
--------------------------------------------------------------------------------------------

public void PlayerStaffOfManaCalc()
{
下面新增:
if((weaponId == 41 || weaponId == 57 || weaponId == 14 || weaponId == 256))    // 吸血武器 武器编号可以自己更改
{
int som_lvl = weaponEnchant + 10; // 最大hp吸取量设定
if(som_lvl < 0) som_lvl = 0;
DrainHp = _random.nextInt(som_lvl) + 5;
if(DrainHp > 30)     // 最大hp吸取量限制,红色字体(可以依照自己的喜好把一次吸血上限调高)
{
DrainHp = 30;  红色字体(可以依照自己的喜好把一次吸血上限调高)
}
}
--------------------------------------------------------------------------------------------

private void PcCommit()
{
if(_calcType == PC_PC)
{
下面新增:

if(DrainHp > 0 && targetPlayer.get_currentHp() > 0)
{
if(DrainHp > targetPlayer.get_currentHp())
DrainHp = targetPlayer.get_currentHp();
short newHp = (short) (targetPlayer.get_currentHp() - DrainHp);
targetPlayer.set_currentHp(targetPlayer, newHp);
newHp = (short) (player.get_currentHp() + DrainHp);
player.set_currentHp(player, newHp);
}
--------------------------------------------------------------------------------------------

private void NpcCommit()
{
if(_calcType == PC_NPC)
{
下面新增:

if(DrainHp > 0 && targetNpc.get_currentHp() > 0)
{
if(DrainHp > targetNpc.get_currentHp())
DrainHp = targetNpc.get_currentHp();
//HP吸取限制处理追加
short newHp = (short) (targetNpc.get_currentHp() - DrainHp);
targetNpc.set_currentHp2(newHp);
newHp = (short) (player.get_currentHp() + DrainHp);
player.set_currentHp(player, newHp);
}

加上以后,就大功告成了 可以开始吸血了!!
回复 支持 反对

使用道具 举报

0

主题

26

帖子

37

积分

注册会员

Rank: 2

积分
37
发表于 2024-2-13 17:41:40 | 显示全部楼层

吸血武器
改这个的位置在哪里?在原码的l1j.server.server.model.L1Attack.java

public int DrainMana = 0;
下面新增:
public int DrainHp = 0;
--------------------------------------------------------------------------------------------

public void PlayerStaffOfManaCalc()
{
下面新增:
if((weaponId == 41 || weaponId == 57 || weaponId == 14 || weaponId == 256))    // 吸血武器 武器编号可以自己更改
{
int som_lvl = weaponEnchant + 10; // 最大hp吸取量设定
if(som_lvl < 0) som_lvl = 0;
DrainHp = _random.nextInt(som_lvl) + 5;
if(DrainHp > 30)     // 最大hp吸取量限制,红色字体(可以依照自己的喜好把一次吸血上限调高)
{
DrainHp = 30;  红色字体(可以依照自己的喜好把一次吸血上限调高)
}
}
--------------------------------------------------------------------------------------------

private void PcCommit()
{
if(_calcType == PC_PC)
{
下面新增:

if(DrainHp > 0 && targetPlayer.get_currentHp() > 0)
{
if(DrainHp > targetPlayer.get_currentHp())
DrainHp = targetPlayer.get_currentHp();
short newHp = (short) (targetPlayer.get_currentHp() - DrainHp);
targetPlayer.set_currentHp(targetPlayer, newHp);
newHp = (short) (player.get_currentHp() + DrainHp);
player.set_currentHp(player, newHp);
}
--------------------------------------------------------------------------------------------

private void NpcCommit()
{
if(_calcType == PC_NPC)
{
下面新增:

if(DrainHp > 0 && targetNpc.get_currentHp() > 0)
{
if(DrainHp > targetNpc.get_currentHp())
DrainHp = targetNpc.get_currentHp();
//HP吸取限制处理追加
short newHp = (short) (targetNpc.get_currentHp() - DrainHp);
targetNpc.set_currentHp2(newHp);
newHp = (short) (player.get_currentHp() + DrainHp);
player.set_currentHp(player, newHp);
}

加上以后,就大功告成了 可以开始吸血了!!
回复 支持 反对

使用道具 举报

0

主题

29

帖子

193

积分

中级会员

Rank: 3Rank: 3

积分
193
发表于 2024-5-30 21:25:59 | 显示全部楼层
感謝大大的分享~~~
回复 支持 反对

使用道具 举报

123
发新帖 返回列表
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表