Adding dice rolling trigger/replacement (ready for review) (#7989)

* [AFR] Implemented DiceRolledTriggeredAbility
* [AFR] Implemented Brazen Dwarf
* [AFR] Implemented Feywild Trickster
* [AFC] Implemented Reckless Endeavor
* [AFR] Implemented Pixie Guide
* [AFR] Implemented Critical Hit
* [AFR] Implemented Netherese Puzzle Ward
* [AFC] Implemented Neverwinter Hydra
* [AFR] Implemented Farideh, Devil's Chosen
* [AFR] Implemented Barbarian Class
* [AFC] Implemented Vrondiss, Rage of Ancients
* [AFC] Implemented Arcane Endeavor
* Test framework: added planar die rolls support
* Test framework: added random results set up support in AI simulated games;
* AI: improved roll die results chooses in computer games;
* Roll die: improved combo support for planar die and roll die effects;

Co-authored-by: Daniel Bomar <dbdaniel42@gmail.com>
Co-authored-by: Oleg Agafonov <jaydi85@gmail.com>
This commit is contained in:
Evan Kranzler 2021-08-26 06:06:10 -04:00 committed by GitHub
parent 12219cff01
commit f8d030bef4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
97 changed files with 2641 additions and 553 deletions

View file

@ -0,0 +1,29 @@
package mage.game.events;
import mage.abilities.Ability;
import java.util.ArrayList;
import java.util.List;
/**
* @author TheElk801
*/
public class DiceRolledEvent extends GameEvent {
private final int sides;
private final List<Object> results = new ArrayList<>(); // Integer for numerical and PlanarDieRollResult for planar
public DiceRolledEvent(int sides, List<Object> results, Ability source) {
super(EventType.DICE_ROLLED, source.getControllerId(), source, source.getControllerId());
this.sides = sides;
this.results.addAll(results);
}
public int getSides() {
return sides;
}
public List<Object> getResults() {
return results;
}
}