Thoughts on Creating Specific New Cards
Force of Will:
- Start by creating the card for 3UU
- Add the cost reduction code (like affinity) to reduce its cost by 3UU.
- Add code to the 'can this be played' event to check for either 3UU available or a blue card in hand.
- The hand-checking code from brainstorm could be modified to check color instead of type, so check for a blue card.
- When the spell is played, give the user a dialog box if both choices are available, or just force one payment if only 1 is available.
- Again use the brainstorm code to force the user to choose a blue card and RFG it. (and lose 1 life)
- Chain on counterspell. Done.
Hybrid:
- set mana cost to the actual cost, but use white mana as the hybrid symbol.
This one's a little complicated so I'm going to write pseudocode. I envision that we would write a proc that would handle EVERY hybrid card's mana cost with no additional coding.
generalSection (i.e. no event) *hybridColor1 = color of card 1, determined by static color of card (see invasion apprentices) *hybridColor2 = color of card 2 *hybridManaTotal = white mana required if( costReductionEvent){ cost = colorLessCost } if( canBePlayedEvent){ for i = 0..hybridMana{ isManaAvailable(colorless cost and i of hybridColor1 and hybridMana-i of hybridColor2) if yes, spell can be played. } otherwise spell cannot be played } if( playingSpellPayingCosts ){ hybridText = use an if..else to set this based on static color. There should be only 10 choices, unless you also include cards like spectral procession. Even then, there are 15 choices (sorry reaper king) for i = 0..hybridMana{ if isManaAvailable(hybridColor1) and isManaAvailable(hybridColor2) createDialog simple 2-part dialog using hybridText if( 0 ) is chosen, charge hybridColor1 if( 1 ) is chosen, charge hybridColor2 } else if isManaAvailable(hybridColor1) charge hybridColor1 else if isManaAvailable(hybridColor2) charge hybridColor2 } } }
Then chain on the regular spell.
Equipment
Equipment are basically enchant creatures that have an activated ability to change creatures. So...
- Update the manalink/magic stuff to turn the card into an artifact, and enable the 'activated ability' flag.
- In the code....
- Take an enchant creature (say Flight) and change the code that attaches to a creature when it comes into play. (change 6C to 6D)
- Update the 74 (can ability be played) section. It can only be played as a sorcery. It should only be active if you have a creature.
- I don't know any code for 'can only be played as a sorcery', but we at least have the code for 'during your main phase'.
- Add any additional equip costs, such as mana. If you do, make sure to update 6D to charge those costs.
- Add a line in 6D that says if the target is dead, don't unequip the current creature. (I haven't tried this)
- Done.
