除了充盈都做完了
This commit is contained in:
@@ -8,52 +8,52 @@ namespace Continentis.MainGame.Character
|
||||
{
|
||||
public partial class EventSubmodule : SubmoduleBase<CharacterBase>
|
||||
{
|
||||
public OrderedDictionary<string, EventUnit> onCombatStart; //战斗开始时
|
||||
public OrderedDictionary<string, EventUnit> onCombatEnd; //战斗结束时
|
||||
public OrderedDictionary<string, PrioritizedAction> onCombatStart; //战斗开始时
|
||||
public OrderedDictionary<string, PrioritizedAction> onCombatEnd; //战斗结束时
|
||||
|
||||
public OrderedDictionary<string, EventUnit> onRoundStart; //每回合开始时
|
||||
public OrderedDictionary<string, EventUnit> onRoundEnd; //每回合结束时
|
||||
public OrderedDictionary<string, PrioritizedAction> onRoundStart; //每回合开始时
|
||||
public OrderedDictionary<string, PrioritizedAction> onRoundEnd; //每回合结束时
|
||||
|
||||
public OrderedDictionary<string, EventUnit<List<CharacterBase>>> onStartAttack; //开始攻击时,参数为被攻击目标列表
|
||||
public OrderedDictionary<string, EventUnit<List<CharacterBase>, List<AttackResult>>> onFinishAttack; //完成攻击时,参数为被攻击目标列表和对应的攻击结果列表
|
||||
public OrderedDictionary<string, EventUnit<CharacterBase, AttackResult>> onGetAttacked; //被攻击时,参数为攻击者和攻击结果
|
||||
public OrderedDictionary<string, PrioritizedAction<List<CharacterBase>>> onStartAttack; //开始攻击时,参数为被攻击目标列表
|
||||
public OrderedDictionary<string, PrioritizedAction<List<CharacterBase>, List<AttackResult>>> onFinishAttack; //完成攻击时,参数为被攻击目标列表和对应的攻击结果列表
|
||||
public OrderedDictionary<string, PrioritizedAction<CharacterBase, AttackResult>> onGetAttacked; //被攻击时,参数为攻击者和攻击结果
|
||||
|
||||
public OrderedDictionary<string, EventUnit> onActionStart; //每次行动开始时
|
||||
public OrderedDictionary<string, EventUnit> onActionEnd; //每次行动结束时
|
||||
public OrderedDictionary<string, PrioritizedAction> onActionStart; //每次行动开始时
|
||||
public OrderedDictionary<string, PrioritizedAction> onActionEnd; //每次行动结束时
|
||||
|
||||
public OrderedDictionary<string, EventUnit<CardInstance, List<CharacterBase>>> onBeforePlayCard; //使用卡牌前,参数为使用的卡牌
|
||||
public OrderedDictionary<string, EventUnit<CardInstance, List<CharacterBase>>> onAfterPlayCard; //使用卡牌后,参数为使用的卡牌
|
||||
public OrderedDictionary<string, PrioritizedAction<CardInstance, List<CharacterBase>>> onBeforePlayCard; //使用卡牌前,参数为使用的卡牌
|
||||
public OrderedDictionary<string, PrioritizedAction<CardInstance, List<CharacterBase>>> onAfterPlayCard; //使用卡牌后,参数为使用的卡牌
|
||||
|
||||
public EventSubmodule(CharacterBase character) : base(character)
|
||||
{
|
||||
onCombatStart = new OrderedDictionary<string, EventUnit>();
|
||||
onCombatEnd = new OrderedDictionary<string, EventUnit>();
|
||||
onCombatStart = new OrderedDictionary<string, PrioritizedAction>();
|
||||
onCombatEnd = new OrderedDictionary<string, PrioritizedAction>();
|
||||
|
||||
onRoundStart = new OrderedDictionary<string, EventUnit>();
|
||||
onRoundEnd = new OrderedDictionary<string, EventUnit>();
|
||||
onRoundStart = new OrderedDictionary<string, PrioritizedAction>();
|
||||
onRoundEnd = new OrderedDictionary<string, PrioritizedAction>();
|
||||
|
||||
onActionStart = new OrderedDictionary<string, EventUnit>();
|
||||
onActionEnd = new OrderedDictionary<string, EventUnit>();
|
||||
onActionStart = new OrderedDictionary<string, PrioritizedAction>();
|
||||
onActionEnd = new OrderedDictionary<string, PrioritizedAction>();
|
||||
|
||||
onStartAttack = new OrderedDictionary<string, EventUnit<List<CharacterBase>>>();
|
||||
onFinishAttack = new OrderedDictionary<string, EventUnit<List<CharacterBase>, List<AttackResult>>>();
|
||||
onGetAttacked = new OrderedDictionary<string, EventUnit<CharacterBase, AttackResult>>();
|
||||
onStartAttack = new OrderedDictionary<string, PrioritizedAction<List<CharacterBase>>>();
|
||||
onFinishAttack = new OrderedDictionary<string, PrioritizedAction<List<CharacterBase>, List<AttackResult>>>();
|
||||
onGetAttacked = new OrderedDictionary<string, PrioritizedAction<CharacterBase, AttackResult>>();
|
||||
|
||||
onBeforePlayCard = new OrderedDictionary<string, EventUnit<CardInstance, List<CharacterBase>>>();
|
||||
onAfterPlayCard = new OrderedDictionary<string, EventUnit<CardInstance, List<CharacterBase>>>();
|
||||
onBeforePlayCard = new OrderedDictionary<string, PrioritizedAction<CardInstance, List<CharacterBase>>>();
|
||||
onAfterPlayCard = new OrderedDictionary<string, PrioritizedAction<CardInstance, List<CharacterBase>>>();
|
||||
|
||||
onActionStart.InsertByPriority("StaminaRecover", new EventUnit(() =>
|
||||
onActionStart.InsertByPriority("StaminaRecover", new PrioritizedAction(() =>
|
||||
{
|
||||
owner.ModifyAttribute("Stamina", owner.GetAttribute("StaminaRecoverPerAction"));
|
||||
owner.ClampAttribute("Stamina", 0, owner.GetAttribute("MaximumStamina"));
|
||||
}, 999));
|
||||
onActionStart.InsertByPriority("ManaRecover", new EventUnit(() =>
|
||||
onActionStart.InsertByPriority("ManaRecover", new PrioritizedAction(() =>
|
||||
{
|
||||
owner.ModifyAttribute("Mana", owner.GetAttribute("ManaRecoverPerAction"));
|
||||
owner.ClampAttribute("Mana", 0, owner.GetAttribute("MaximumMana"));
|
||||
}, 999));
|
||||
|
||||
onActionStart.InsertByPriority("DefenseReset", new EventUnit(() =>
|
||||
onActionStart.InsertByPriority("DefenseReset", new PrioritizedAction(() =>
|
||||
{
|
||||
if (owner.GetAttribute("KeepBlockOnActionStart") <= 0)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user