Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 16:12
    Azaph opened #6039
  • Nov 11 23:29

    theelk801 on master

    updated Pioneer ban list (compare)

  • Nov 11 18:09
    jthemphill closed #6036
  • Nov 11 18:08
    jthemphill commented #6036
  • Nov 11 11:52
    JayDi85 commented #6036
  • Nov 11 11:20
    JayDi85 commented #6036
  • Nov 11 05:20
    ssouders412 opened #6038
  • Nov 11 03:29
    ssouders412 commented #5923
  • Nov 10 13:42
    cipherz opened #6037
  • Nov 10 05:54
    jthemphill commented #6036
  • Nov 10 00:25
    JayDi85 commented #6036
  • Nov 10 00:24
    JayDi85 commented #6036
  • Nov 10 00:19
    JayDi85 commented #6036
  • Nov 09 22:33
    jthemphill edited #6036
  • Nov 09 22:32
    jthemphill edited #6036
  • Nov 09 22:32
    jthemphill opened #6036
  • Nov 08 23:31
    propri commented #6035
  • Nov 08 18:39
    beardstorm commented #6002
  • Nov 08 18:15
    propri opened #6035
  • Nov 08 18:10
    propri opened #6034
ingmargoudt
@ingmargoudt

also, I am interested in this:

  @Deprecated
    void discard(int amount, Ability source, Game game);

    Card discardOne(boolean random, Ability source, Game game);

    Cards discard(int amount, boolean random, Ability source, Game game);

    boolean discard(Card card, Ability source, Game game);

The top method is deprecated and internally calls the 3rd method. The 4th method discards a particular card. So since the top method is deprecated , should we remove it and replace all instances with discard(int amount, boolean random, Ability source, Game game); ? And what about discardOne(random...) ?

Oleg Agafonov
@JayDi85
If void discard( uses by few cards then you can remove it, but if it uses in many cards then save it (there are many simplified methods with less params to call for more easy devs).
Evan Kranzler
@theelk801
probably gonna need some help implementing adventure cards, I have an outline of what I've got in mind on the tracking thread #5961
Zach H
@ZeldaZach
I’ll give it a gander tomorrow
I’d reckon it’s similar to aftermath tho
Evan Kranzler
@theelk801
aftermath is way simpler, it's just a split card with an ability that says "cast this only from your graveyard"
this has a whole bunch of extra rules baggage
Evan Kranzler
@theelk801
the important thing is that we can probably implement them in a way where we can add each card even if the overall implementation doesn't work
Evan Kranzler
@theelk801
would anyone be able to help with fixing Leadership Vacuum? it turns out that the engine doesn't support moving cards to the command zone and I'm not sure how to make it work as zone changes are very complicated and confusing
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