XSGridEditor  1.0.0
XSGridEditor is a lightweight square grid map system for 2D/3D SRPG games, and comes with a simple and easy-to-use grid editing function. It can be used as a beginning for you to create SRPG games.
Public Member Functions | Protected Member Functions | Properties | Private Member Functions | List of all members
XSSLG.TriggerBase Class Referenceabstract

主动技能触发器,触发技能释放 先通过CanRelease判断技能能否施放,然后调用Release施放技能 和被动技的区别就是是否注册BattleEmitter,但是还有其他要注意的: 1. More...

Inheritance diagram for XSSLG.TriggerBase:
XSSLG.WorkItem< TriggerData, SkillUpdateData > XSSLG.TriggerManual XSSLG.TriggerNull XSSLG.TriggerPassive

Public Member Functions

 TriggerBase (TriggerData data, IReleaseEntity releaseEntity)
 初始化 More...
 
List< Vector3GetAttackRegion (XSIGridMgr gridMgr, XSTile srcTile)
 获取攻击范围的格子 More...
 
List< Vector3GetAttackEffectRegion (XSTile tile, XSTile srcTile)
 获取攻击效果范围的格子 More...
 
override void StartWork ()
 触发器开始工作 More...
 
override void StopWork ()
 结束触发器 More...
 
void StartTick ()
 开始倒计时 More...
 
void StopTick ()
 停止倒计时 More...
 
virtual bool CanRelease (OnTriggerDataBase data)
 是否能释放 More...
 
virtual bool Release (OnTriggerDataBase data)
 释放技能 More...
 
override void OnTurnStart (SkillUpdateData data)
 回合开始响应 More...
 
- Public Member Functions inherited from XSSLG.WorkItem< TriggerData, SkillUpdateData >
 WorkItem (T data)
 构造函数 More...
 
abstract void OnTurnStart (T1 data)
 

Protected Member Functions

virtual bool CanRelease (ReleaseData data)
 是否能释放 More...
 
abstract List< UnitBaseGetTarget (OnTriggerDataBase data)
 获取处理对象 More...
 
void CdUpdate (SkillUpdateData data)
 cd更新 More...
 

Properties

TriggerType Type [get]
 
IReleaseEntity ReleaseEntity [get, set]
 对SkillBase的引用 More...
 
CountDown Cd [get, set]
 倒计时 More...
 
SearchTargetBase SearchTarget [get]
 索敌 More...
 
List< TriggerConditionBaseConditionList [get]
 触发器触发条件 More...
 

Private Member Functions

ReleaseData CreateReleaseData (OnTriggerDataBase data, List< UnitBase > target)
 

Detailed Description

主动技能触发器,触发技能释放 先通过CanRelease判断技能能否施放,然后调用Release施放技能 和被动技的区别就是是否注册BattleEmitter,但是还有其他要注意的: 1.

拥有这个trigger的技能必须是主动技能 2.triggerType必须是ClickCombat或者ClickMagic 3.因为第2条,所以condition没有用 3.因为第1,2条,参数OnTriggerDataBase只能是OnTriggerDataBase或者OntriggerDataCommon,其他类原则上不能传递, 因为这个trigger和主动技能都不会处理其他OnTriggerDataBase类额外的参数,做好约束才能方便设计

Constructor & Destructor Documentation

◆ TriggerBase()

XSSLG.TriggerBase.TriggerBase ( TriggerData  data,
IReleaseEntity  releaseEntity 
)
inline

初始化

Parameters
data触发器data
releaseEntity触发器触发的对象

Member Function Documentation

◆ CanRelease() [1/2]

virtual bool XSSLG.TriggerBase.CanRelease ( OnTriggerDataBase  data)
inlinevirtual

是否能释放

Parameters
data
Returns

◆ CanRelease() [2/2]

virtual bool XSSLG.TriggerBase.CanRelease ( ReleaseData  data)
inlineprotectedvirtual

是否能释放

Parameters
data
Returns

Reimplemented in XSSLG.TriggerNull.

◆ CdUpdate()

void XSSLG.TriggerBase.CdUpdate ( SkillUpdateData  data)
inlineprotected

cd更新

◆ CreateReleaseData()

ReleaseData XSSLG.TriggerBase.CreateReleaseData ( OnTriggerDataBase  data,
List< UnitBase target 
)
inlineprivate

◆ GetAttackEffectRegion()

List<Vector3> XSSLG.TriggerBase.GetAttackEffectRegion ( XSTile  tile,
XSTile  srcTile 
)

获取攻击效果范围的格子

◆ GetAttackRegion()

List<Vector3> XSSLG.TriggerBase.GetAttackRegion ( XSIGridMgr  gridMgr,
XSTile  srcTile 
)

获取攻击范围的格子

◆ GetTarget()

abstract List<UnitBase> XSSLG.TriggerBase.GetTarget ( OnTriggerDataBase  data)
protectedpure virtual

获取处理对象

Parameters
data触发数据

Implemented in XSSLG.TriggerPassive, XSSLG.TriggerNull, and XSSLG.TriggerManual.

◆ OnTurnStart()

override void XSSLG.TriggerBase.OnTurnStart ( SkillUpdateData  data)

回合开始响应

◆ Release()

virtual bool XSSLG.TriggerBase.Release ( OnTriggerDataBase  data)
inlinevirtual

释放技能

Parameters
data触发数据

◆ StartTick()

void XSSLG.TriggerBase.StartTick ( )
inline

开始倒计时

◆ StartWork()

override void XSSLG.TriggerBase.StartWork ( )
inlinevirtual

触发器开始工作

Implements XSSLG.WorkItem< TriggerData, SkillUpdateData >.

Reimplemented in XSSLG.TriggerNull.

◆ StopTick()

void XSSLG.TriggerBase.StopTick ( )
inline

停止倒计时

◆ StopWork()

override void XSSLG.TriggerBase.StopWork ( )
inlinevirtual

Property Documentation

◆ Cd

CountDown XSSLG.TriggerBase.Cd
getsetprotected

倒计时

◆ ConditionList

List<TriggerConditionBase> XSSLG.TriggerBase.ConditionList
getprotected

触发器触发条件

◆ ReleaseEntity

IReleaseEntity XSSLG.TriggerBase.ReleaseEntity
getsetprotected

对SkillBase的引用

◆ SearchTarget

SearchTargetBase XSSLG.TriggerBase.SearchTarget
getprotected

索敌

◆ Type

TriggerType XSSLG.TriggerBase.Type
get

The documentation for this class was generated from the following file: