public void Receive(MoveUseFailure moveFailure) { MoveUseFailureEventArgs moveUseFailureEventArgs = new MoveUseFailureEventArgs(this, moveFailure); OnMoveUseFailure?.Invoke(this, moveUseFailureEventArgs); // TODO MoveUseFailedEventArgs moveUseFailedEventArgs = new MoveUseFailedEventArgs(this, moveFailure); OnMoveUseFailed?.Invoke(this, moveUseFailedEventArgs); }
public override void OnMessageBroadcast(object sender, EventArgs args) { IMessage message = args.Battle.MessageQueue.First; if (message is UseMove action) { if (action.Move.Type == PokemonType.Fire) { MoveUseFailure newMessage = new MoveUseFailure(action.Move); args.Battle.MessageQueue.Replace(message, newMessage); } } }
public MoveUseFailedEventArgs(IBattle battle, MoveUseFailure action) : base(battle) { Action = action; }