仙魔无双SDK
面向策划逻辑制作的游戏开发包
护盾操作

护盾操作的API集合 更多...

函数

int TryAddShieldToActor (FxCreature *pActor, unsigned long nCasterID, unsigned long nShieldID, unsigned long nBuffID, int nMaxValue, unsigned long nDamageReceiver=-1)
 尝试是否能给角色pActor添加ID为nShieldID的护盾,关联的buff是nBuffID 更多...
 
int AddShieldToActor (FxCreature *pActor, unsigned long nCasterID, unsigned long nShieldID, unsigned long nBuffID, int nMaxValue, unsigned long nDamageReceiver=-1)
 给角色pActor添加ID为nShieldID的护盾,关联的buff是nBuffID 更多...
 
int RemoveShieldFromActor (FxCreature *pActor, unsigned long nShieldID=-1)
 从角色pActor身上移除ID为nShieldID的护盾 更多...
 
int RemoveShieldFromActorByTeamMate (FxCreature *pActor, unsigned long nShieldID=-1)
 从角色pActor身上移除队友添加的,ID为nShieldID的护盾 更多...
 
int RemoveShieldFromActorByCaster (FxCreature *pActor, unsigned long nCasterID, unsigned long nShieldID=-1)
 从角色pActor身上移除指定的角色nCasterID添加的,ID为nShieldID的护盾 更多...
 
int RemoveShieldFromTarget (FxCreature *pActor, unsigned long nShieldID=-1)
 从角色pActor的目标身上移除ID为nShieldID的护盾 更多...
 

详细描述

护盾操作的API集合

注解
目前这些接口仅仅是预留接口。护盾机制尚未制作。

函数说明

◆ AddShieldToActor()

int AddShieldToActor ( FxCreature *  pActor,
unsigned long  nCasterID,
unsigned long  nShieldID,
unsigned long  nBuffID,
int  nMaxValue,
unsigned long  nDamageReceiver = -1 
)

给角色pActor添加ID为nShieldID的护盾,关联的buff是nBuffID

参数
pActor[角色] 角色对象。
nCasterID[整数] 护盾添加者ID。
nShieldID[整数] 护盾ID。
nBuffID[整数] 关联的Buff ID。
nMaxValue[整数] 此次护盾能吸收的伤害的上限。
nDamageReceiver[整数] 伤害吸收者对象ID。为-1的时候,会被修正为护盾拥有者,即pActor。默认-1
返回
[整数] 操作的结果
返回值
0失败
1成功

◆ RemoveShieldFromActor()

int RemoveShieldFromActor ( FxCreature *  pActor,
unsigned long  nShieldID = -1 
)

从角色pActor身上移除ID为nShieldID的护盾

参数
pActor[角色] 角色对象。
nShieldID[整数] 护盾ID。为-1的时候表示无差别移除护盾,否则只移除指定ID的护盾。默认-1

◆ RemoveShieldFromActorByCaster()

int RemoveShieldFromActorByCaster ( FxCreature *  pActor,
unsigned long  nCasterID,
unsigned long  nShieldID = -1 
)

从角色pActor身上移除指定的角色nCasterID添加的,ID为nShieldID的护盾

参数
pActor[角色] 角色对象。
nCasterID[整数] 添加者ID
nShieldID[整数] 护盾ID。为-1的时候表示无差别移除护盾,否则只移除指定ID的护盾。默认-1
返回
是否移除成功
返回值
1移除成功
0没有移除成功

◆ RemoveShieldFromActorByTeamMate()

int RemoveShieldFromActorByTeamMate ( FxCreature *  pActor,
unsigned long  nShieldID = -1 
)

从角色pActor身上移除队友添加的,ID为nShieldID的护盾

参数
pActor[角色] 角色对象。
nShieldID[整数] 护盾ID。为-1的时候表示无差别移除护盾,否则只移除指定ID的护盾。默认-1
注解
在离队中调用。策划可能暂时不需要。

◆ RemoveShieldFromTarget()

int RemoveShieldFromTarget ( FxCreature *  pActor,
unsigned long  nShieldID = -1 
)

从角色pActor的目标身上移除ID为nShieldID的护盾

参数
pActor[角色] 角色对象。
nShieldID[整数] 护盾ID。为-1的时候表示无差别移除护盾,否则只移除指定ID的护盾。默认-1
返回
[整数] 忽略
注解
尚未制作

◆ TryAddShieldToActor()

int TryAddShieldToActor ( FxCreature *  pActor,
unsigned long  nCasterID,
unsigned long  nShieldID,
unsigned long  nBuffID,
int  nMaxValue,
unsigned long  nDamageReceiver = -1 
)

尝试是否能给角色pActor添加ID为nShieldID的护盾,关联的buff是nBuffID

参数
pActor[角色] 角色对象。
nCasterID[整数] 护盾添加者ID。
nShieldID[整数] 护盾ID。
nBuffID[整数] 关联的Buff ID。
nMaxValue[整数] 此次护盾能吸收的伤害的上限。
nDamageReceiver[整数] 伤害吸收者对象ID。为-1的时候,会被修正为护盾添加者。默认-1
返回
[整数] 操作的结果
返回值
0失败
1成功
注解
尝试能否添加,返回结果,不实际添加