refactored targets

This commit is contained in:
BetaSteward 2011-09-14 12:46:47 -04:00
parent 37cec55493
commit 5c01b832b9
16 changed files with 46 additions and 48 deletions

View file

@ -86,12 +86,12 @@ class FireballEffect extends OneShotEffect<FireballEffect> {
@Override
public boolean apply(Game game, Ability source) {
int numTargets = source.getTargets().get(0).getTargets().size();
int numTargets = targetPointer.getTargets(source).size();
int damage = source.getManaCostsToPay().getX();
if (numTargets > 0) {
int damagePer = damage/numTargets;
if (damagePer > 0) {
for (UUID targetId: source.getTargets().get(0).getTargets()) {
for (UUID targetId: targetPointer.getTargets(source)) {
Permanent permanent = game.getPermanent(targetId);
if (permanent != null) {
permanent.damage(damagePer, source.getSourceId(), game, true, false);

View file

@ -88,13 +88,10 @@ class MorbidPlunderEffect extends OneShotEffect<MorbidPlunderEffect> {
@Override
public boolean apply(Game game, Ability source) {
boolean result = false;
List<UUID> targets = source.getTargets().get(0).getTargets();
if (targets.size() > 0) {
for (UUID target : targets) {
Card card = game.getCard(target);
if (card != null) {
result |= card.moveToZone(Zone.HAND, source.getId(), game, true);
}
for (UUID target : targetPointer.getTargets(source)) {
Card card = game.getCard(target);
if (card != null) {
result |= card.moveToZone(Zone.HAND, source.getId(), game, true);
}
}
return result;

View file

@ -95,7 +95,7 @@ class ArcTrailEffect extends OneShotEffect {
boolean twoDamageDone = false;
int damage = 2;
for ( UUID target : source.getTargets().get(0).getTargets() ) {
for ( UUID target : targetPointer.getTargets(source) ) {
Permanent permanent = game.getPermanent(target);
if ( twoDamageDone ) {

View file

@ -83,7 +83,7 @@ class FulgentDistractionEffect extends OneShotEffect<FulgentDistractionEffect> {
@Override
public boolean apply(Game game, Ability source) {
for ( UUID target : source.getTargets().get(0).getTargets() ) {
for ( UUID target : targetPointer.getTargets(source) ) {
Permanent creature = game.getPermanent(target);
List<UUID> copiedAttachments = new ArrayList<UUID>(creature.getAttachments());

View file

@ -174,7 +174,7 @@ class LiegeOfTheTangleEffect extends ContinuousEffectImpl<LiegeOfTheTangleEffect
public void init(Ability source, Game game) {
super.init(source, game);
if (this.affectedObjectsSet) {
for (UUID permId: source.getTargets().get(0).getTargets()) {
for (UUID permId: targetPointer.getTargets(source)) {
objects.add(permId);
}
}

View file

@ -97,7 +97,7 @@ class RustTickTapTargetEffect extends TapTargetEffect {
public boolean apply(Game game, Ability source) {
Permanent rustTick = game.getPermanent(source.getSourceId());
if (rustTick != null) rustTick.clearConnectedCards();
for (UUID target : source.getTargets().get(0).getTargets()) {
for (UUID target : targetPointer.getTargets(source)) {
Permanent permanent = game.getPermanent(target);
if (permanent != null) {
rustTick.addConnectedCard(permanent.getId());

View file

@ -101,7 +101,7 @@ class KhalniGemReturnToHandTargetEffect extends OneShotEffect<KhalniGemReturnToH
@Override
public boolean apply(Game game, Ability source) {
for ( UUID target : source.getTargets().get(0).getTargets() ) {
for ( UUID target : targetPointer.getTargets(source) ) {
Permanent permanent = game.getPermanent(target);
if ( permanent != null ) {
permanent.moveToZone(Zone.HAND, source.getId(), game, true);