mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-18 19:58:00 +00:00
- Some fixes for possible null pointer exceptions in Requirements and Target_Selection
This commit is contained in:
@@ -23,7 +23,7 @@ public class SpellAbility_Requirements {
|
||||
fromZone.remove(c);
|
||||
}
|
||||
|
||||
if (select.getTgt().doesTarget()){
|
||||
if (select.doesTarget()){
|
||||
select.setRequirements(this);
|
||||
select.chooseTargets();
|
||||
}
|
||||
@@ -39,7 +39,7 @@ public class SpellAbility_Requirements {
|
||||
fromZone.add(ability.getSourceCard());
|
||||
}
|
||||
|
||||
select.getTgt().resetTargets();
|
||||
select.resetTargets();
|
||||
return;
|
||||
}
|
||||
startPaying();
|
||||
@@ -58,8 +58,8 @@ public class SpellAbility_Requirements {
|
||||
// add back to hand
|
||||
fromZone.add(ability.getSourceCard());
|
||||
}
|
||||
if (select.getTgt().doesTarget())
|
||||
select.getTgt().resetTargets();
|
||||
if (select != null)
|
||||
select.resetTargets();
|
||||
|
||||
payment.cancelPayment();
|
||||
}
|
||||
@@ -69,6 +69,6 @@ public class SpellAbility_Requirements {
|
||||
AllZone.ManaPool.clearPay(false);
|
||||
AllZone.Stack.add(ability);
|
||||
if (select != null)
|
||||
select.getTgt().resetTargets();
|
||||
select.resetTargets();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,6 +27,17 @@ public class Target_Selection {
|
||||
card = sa.getSourceCard();
|
||||
}
|
||||
|
||||
public boolean doesTarget(){
|
||||
if (target == null)
|
||||
return false;
|
||||
return target.doesTarget();
|
||||
}
|
||||
|
||||
public void resetTargets(){
|
||||
if (target != null)
|
||||
target.resetTargets();
|
||||
}
|
||||
|
||||
public boolean chooseTargets(){
|
||||
// if not enough targets chosen, reset and cancel Ability
|
||||
if (bCancel || bDoneTarget && target.getNumTargeted() < target.getMinTargets()){
|
||||
|
||||
Reference in New Issue
Block a user