当前位置 : 145z游戏站 | 热血传奇 | 技术教程 | 

新开传奇geem2:人物攻击与被攻击伤害调整机制详解及脚本实现

热度:
在geem2引擎的新开传奇游戏中,开发者可以自定义人物在攻击和被攻击时的伤害计算方式。本文将详细介绍如何通过触发脚本实现伤害值的修改,以及如何在前端显示调整后的伤害。

一、功能说明
修改伤害血量: 通过ChangeDamageValue函数,开发者可以调整当前计算出的伤害值。该函数的格式为:ChangeDamageValue 类型(0=值,1=百分比) 操作符(+,-,=) 值。
二、触发脚本详解
触发时机: 以下触发脚本适用于伤害计算之前的时刻:

人物攻击目标掉血前:@AttackDamage
英雄攻击目标掉血前:@HeroAttackDamage
人物被攻击掉血前:@StruckDamage
英雄被攻击掉血前:@HeroStruckDamage
NPC变量: 游戏中增加了两个NPC变量来存储当前计算出的伤害值,分别是<$DamageValue>(用于普通人物)和<$H.DamageValue>(用于英雄)。

三、脚本示例
人物攻击目标:

[@AttackDamage]
#ACT
SENDMSG 6 人物攻击目标,掉血量为<$DamageValue>,攻击加成10点血量
ChangeDamageValue 0 + 10
Copy
在这个脚本中,当人物攻击目标时,系统会发送消息显示基础伤害值,并通过ChangeDamageValue函数增加10点伤害。

英雄攻击目标:

[@HeroAttackDamage]
#ACT
SENDMSG 6 英雄攻击目标,掉血量为<$H.DamageValue>,攻击加成10点血量
H.ChangeDamageValue 0 + 10
Copy
类似地,当英雄攻击目标时,也会增加10点伤害。

人物被攻击:

[@StruckDamage]
#ACT
SENDMSG 6 人物被攻击,掉血量为<$DamageValue>,抵御掉血量的50%
ChangeDamageValue 1 - 50
Copy
在这个脚本中,当人物被攻击时,系统会显示基础伤害值,并通过ChangeDamageValue函数减少50%的伤害。

英雄被攻击:

[@HeroStruckDamage]
#ACT
SENDMSG 6 英雄被攻击,掉血量为<$H.DamageValue>,抵御掉血量的50%
H.ChangeDamageValue 1 - 50
Copy
当英雄被攻击时,也会减少50%的伤害。

功能说明:人物攻击和被攻击掉血前触发、修改当前伤害血量

格式:ChangeDamageValue 类型(0=值,1=百分比) 操作符(+,-,=) 值

注意:当前伤害血量仅用于以下触发

增加伤害前触发:
人物攻击目标掉血前:@AttackDamage
英雄攻击目标掉血前:@HeroAttackDamage
人物被攻击掉血前:@StruckDamage
英雄被攻击掉血前:@HeroStruckDamage

增加NPC变量,当前伤害掉血量(仅用于以下触发):<$DamageValue> <$H.DamageValue>

[@AttackDamage]
#ACT
SENDMSG 6 人物攻击目标,掉血量为<$DamageValue>,攻击加成10点血量
ChangeDamageValue 0 + 10

[@HeroAttackDamage]
#ACT
SENDMSG 6 英雄攻击目标,掉血量为<$H.DamageValue>,攻击加成10点血量
H.ChangeDamageValue 0 + 10

[@StruckDamage]
#ACT
SENDMSG 6 人物被攻击,掉血量为<$DamageValue>,抵御掉血量的50%
ChangeDamageValue 1 - 50

[@HeroStruckDamage]
#ACT
SENDMSG 6 英雄被攻击,掉血量为<$H.DamageValue>,抵御掉血量的50%
H.ChangeDamageValue 1 - 50
[顶部]