Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 21:32
    phulin edited #6082
  • 21:16
    JayDi85 edited #5795
  • 19:29
    phulin commented #6082
  • 19:24
    phulin synchronize #6082
  • 18:37
    phulin edited #6082
  • 18:33
    phulin synchronize #6082
  • 17:23
    JRHerlehy commented #6082
  • 17:20
    ssouders412 opened #6083
  • 16:54
    jeffwadsworth edited #6076
  • 16:49
    jeffwadsworth edited #6076
  • 16:42
    phulin commented #6082
  • 16:37
    JayDi85 commented #6082
  • 16:28
    phulin commented #6082
  • 16:26
    phulin edited #6082
  • 16:25
    jeffwadsworth closed #5925
  • 16:25

    jeffwadsworth on master

    - Fixed #5925 and related issue… (compare)

  • 16:25
    emerald000 commented #6082
  • 16:22
    phulin commented #6082
  • 16:18
    emerald000 commented #6082
  • 16:16
    phulin commented #6082
Zach H
@ZeldaZach
Move to exile and use standard replacement?
Evan Kranzler
@theelk801
I can't even find where the commander replacement happens
Oleg Agafonov
@JayDi85
Zone changes works fine. Look at CommanderReplacementEffect
ZoneChangeEvent zEvent = (ZoneChangeEvent) event;
zEvent.setToZone(Zone.COMMAND);
Evan Kranzler
@theelk801
oh, interesting
but how do we make that actually work
Oleg Agafonov
@JayDi85
You can just add command zone support in public boolean moveCards(Set<Card> cards, Zone toZone,
I don't think it different with other zones like library or outside
Maybe code from case OUTSIDE: can be copy pasted for command zone
Oleg Agafonov
@JayDi85
hmm
Real cards move in private static void placeInDestinationZone(ZoneChangeInfo info, Game game) {
 case COMMAND:
                    // There should never be more than one card here.
                    for (Card card : cards.getCards(game)) {
                        game.addCommander(new Commander(card));
                    }
                    break;
Smelling code... Try to copy-paste code from outside zone (see above) and test commanders moves (if all works -- commander can be casted with same effects and corrected extra cost -- then all fine... if not then I can research it later to fix/improve).
Evan Kranzler
@theelk801
can anyone help with updating TargetAmount? Sundering Stroke requires distributing 7 damage among 3 targets, which is currently not doable and I'm having trouble figuring it out
also Forked Lightning basically needs the same thing
Zach H
@ZeldaZach
Do you have “any number of targets” as an option
And then can restrict from there
Evan Kranzler
@theelk801
basically with the exception of the two cards I mentioned, every card that divides something X damage (or counters, or prevention, etc) among "any number of targets" isn't actually any number
Bogardan Hellkite can't target more than 5 things
and the code for handling that assumes that the limit is the amount being distributed
because it usually is
except here it isn't
but it's hard to figure out what does and doesn't need to be changed
also Vivien, Arkbow Ranger can target "up to" 2 target creatures, which is also different since distribution effects usually require at least one target
Oleg Agafonov
@JayDi85
@theelk801 it's already have maxNumberOfTargets
Oleg Agafonov
@JayDi85
You can setup it in cards and improve code in TargetAnyTargetAmount to implement support of that limit in maxNumberOfTargets
Oleg Agafonov
@JayDi85
shot_190924_060240.png
shot_190924_060317.png
shot_190924_060404.png
Just add support of maxNumberOfTargets as example above -- that's all.
Evan Kranzler
@theelk801
wow
that's it
thank you
Evan Kranzler
@theelk801
so I'm testing it, and it doesn't work
doesn't prevent you from choosing more than the maximum amount
Oleg Agafonov
@JayDi85
You must add same code in all other places like possibleTargets, canChoose, etc
canTarget, canChoose, possibleTargets
Evan Kranzler
@theelk801
alright
so just add if (getMaxNumberOfTargets() > 0 && getTargets().size() >= getMaxNumberOfTargets()) {return false;}to the boolean methods?
Oleg Agafonov
@JayDi85
nope
you can choose already choosen
if... return getTargets.contain(objectId)
Evan Kranzler
@theelk801
ah ok
do that for both boolean methods?
Oleg Agafonov
@JayDi85
yearh
hmm
Evan Kranzler
@theelk801
wait, for canChoose
don't I just return false there?
Oleg Agafonov
@JayDi85
I don't think so... if you reach max limit then you can choose between already selected, but not new
Evan Kranzler
@theelk801
do you mind implementing the changes and pushing them?