Commit Graph

1151 Commits

Author SHA1 Message Date
omegablast2002@yahoo.com
18cd8b5082 added limiting of x to a color to fix Consume Spirit from being able to use any color..
{x:black}
{x:color}

creating a snapshot of a card instance in garbage for stored cards, the issue with previous version was it was using base model value instead of what the storedcard was actually at the time it was in battlefield. example, animal boneyard test was coming up 1 toughness short becuase the creature storedcard pointed to was sent to graveyard for the sacrifice. 

changed myStored TargetChooser to use storedSourceCard instead, as this is supposed to point to the actual card and not a snapshot.
2012-04-07 05:16:55 +00:00
omegablast2002@yahoo.com
864727b208 added HINT:castpriority(blah,blah,blah,blah,ect)
this is a method to set the order in which ai decides to play cards, you can for example tell ai to look for 2 instants, before trying to find a creature.
be sure to list all main types of the deck otherwise ai will pass on stuff
this is the current
const char* types[] = {"planeswalker","creature", "enchantment", "artifact", "sorcery", "instant"};

so be sure you include them if the decks need them.
other the above example would be coded
HINT:castpriority(instant,instant,creature,planeswalker,enchantment,artifact,sorcery)

as you can see this deck will now look for and play if possible, 2 instants before any of the other types.
this will really help with decks which rely on cards like dark ritual to produce mana to cast creature, simply by listing instant before creature. if the deck had dark rituals, in the above example, and it had them in hand, it would then cast dark ritual, dark ritual, then one of the remaining types. this is actually tested not just assumed.
2012-04-06 23:10:11 +00:00
omegablast2002@yahoo.com
eabbbe3f77 passing the storedcard for use by instants and sorceries with extracost in thier manacost, also fixed a parsing oversight with stored values parsing, "-" would throw off the value of s string parsed for stored by 1, returning 0 for these....this is corrected now. 2012-04-05 11:24:57 +00:00
omegablast2002@yahoo.com
0b1327bf01 fixed a couple memleaks, also added human player targeting for blocking. 2012-04-02 16:48:33 +00:00
omegablast2002@yahoo.com
b705158e13 added "blockable" targetchooser, a targetchooser which shows the cards considered "blockable" by source.
corrected an error in ability$! parsing that prevents transforms to use it in newability[

added "block" keyword. and ability.
2012-04-02 13:32:50 +00:00
omegablast2002@yahoo.com
4dfacaa409 untap target as cost. 2012-04-01 17:39:41 +00:00
omegablast2002@yahoo.com
8a53df8ca5 fixed wall of reverence and refactored adynamic ability a bit. 2012-03-27 13:57:09 +00:00
omegablast2002@yahoo.com
30b379e1da fixed Issue 819, changed the parsing of and(()) to and!()!, i no longer share the storedstring of transformer, so you can ability$!transforms(( now.... 2012-03-26 13:51:44 +00:00
omegablast2002@yahoo.com
c5128b35e0 fix for sorins destroy andability, actually a fix for and(( in general..have to hide the and(( string from the parser till we need it. 2012-03-26 11:48:22 +00:00
omegablast2002@yahoo.com
2a17b9c11b added a targetchooser for dummycards source and a method for retrieving card->storedCards variables for docs card package. 2012-03-22 21:50:50 +00:00
wagic.the.homebrew
a581d1bba3 - Fixed some scaling issues with SimpleMenu
- Fixed the animation for the menu fonts when selecting an item in the menu. mTargetScale and mScale in SimpleButton are here for a reason, people! 
-- Note: I'm not sure I actually like the "zoom on currently selected item" thing, not sure it brings much.
-- we should definitely consider a hi resolution font because now it really doesn't look good, when it is scaled that much

Why is the subtypes menu using a different font from all other simpleMenus ?
2012-03-21 14:44:23 +00:00
wagic.the.homebrew
3ba22cd615 Changes to Deck Editor:
- Removed one "stats" button as well as the "menu" button. The goal is to let the screen "breathe" and show cards as much as possible.
-- Removing the "menu" button is also in line with all other screens of the game, where that button never appears.
- With the same goal, the "XXX of XXX cards" text is now displayed only when scrolling
2012-03-21 14:41:38 +00:00
Xawotihs@gmail.com
cb8af6d6c0 - modified gameOver to be protected and defined two new operations to do the same thing (didWin and setLoser)
- removed ACTION_LOGGING_TESTING code
- Fixed AIvsAI games multithreaded games
- Activated undo when testsuite is enable
- Defined an initial player comparison operator
- Fixed multi-threaded modification to subtypes
- Fixed gameTurn cleanup for gameObserver reuse
2012-03-20 23:10:05 +00:00
techdragon.nguyen@gmail.com
865bc7e494 resolved scrolling issue (Issue 801) in filters list. it's a little verbose, but it seems to work. need to see if we can't refactor CheckUserInput to reduce the amount of code duplication. The logic for SimpleMenu is slightly different from the base method. perhaps we should override CheckUserInput to take in two parameters instead of one. 2012-03-20 23:07:21 +00:00
omegablast2002@yahoo.com
18c0868d88 readjusted some of the values for simplemenu, deckmenu still requires "princess fingertips", but the others have their spacing back and font size back. 2012-03-20 16:27:14 +00:00
omegablast2002@yahoo.com
48e5608803 added a new method to use countershroud to create a globel shroud by targetchooser...auto=countershroud(-1/-1)creature|mybattlefield...like this.... 2012-03-20 12:21:03 +00:00
techdragon.nguyen@gmail.com
57627849a0 modified font size of text in menus.
Adjusted the spacing between menu items on all menus. They were a little too far apart once I modified the font size.
fixed Hollowhenge Spirit
2012-03-20 08:35:38 +00:00
Xawotihs@gmail.com
37856c7742 Removed compilation warnings 2012-03-19 19:54:17 +00:00
omegablast2002@yahoo.com
9564250179 added targetedplayer as a who for most abilities and token reciever..
adjusted the way cardsacrificed events were sent

added a ability which is a way to tell a targeted player, yourself, or opponent to do a set of abilities.
ability$! EFFECT _ EFFECT !$ WHO 
the idea here is that the abilities are being added to the targeted players game...so 
target(player) ability$!target(<2>*|myhand) reject!$ targetedplayer

this line tells the player to discard 2 cards...

you can also use it without targeting by using WHO words..
controller, owner, targetcontroller, opponent, targetedplayer

this ability defualts to opponent.

cards coming soon...
2012-03-18 15:57:35 +00:00
techdragon.nguyen@gmail.com
33a86f4c44 updated Version number to 0181 2012-03-16 16:50:12 +00:00
omegablast2002@yahoo.com
a497ef49c8 added support for doubling cube, recoded the curses to follow the rules better, with the exception of 1 which can not quite be supported
Curse of Oblivion moved back to unsupported.
added support for targeting a zone by targeting a player...
any time you have targeted a player, you can access items in thier zones by using 
targetedpersonsZONE
targetedpersonsbattlefield for example...
added "targetedplayer" as a targetchooser and who.
added "mycurses" targetchooser.
added "targetedcurses" word variable.
2012-03-15 06:18:08 +00:00
omegablast2002@yahoo.com
9c1fcacd1f psp comp fix. 2012-03-14 10:52:14 +00:00
omegablast2002@yahoo.com
0210ecf28c ok this is the last commit but i had massive issues after chopping it all up, hopefully it doesn't hilight everything that was already commited...if it does i apologize my own patch started giving me conflicts....
im like 7 tries into commiting this part....
2012-03-13 17:54:24 +00:00
omegablast2002@yahoo.com
b20b75df33 this patch focuses on giving wagic a more defined turn structure. 2012-03-13 16:48:48 +00:00
omegablast2002@yahoo.com
39e8bd1f30 in this commit i added a creature subtype specific vector, added a couple variables for new abilities, and a sort for the creature variable to avoid the long lag out everytime we play a card or ability that needs this vector. 2012-03-13 16:32:26 +00:00
omegablast2002@yahoo.com
97bd418aac in this commit, if we move a card from the library to the library then we were intending on placing that card on top of the library.
taught ai when not to play a planeswalker, told ai to look for planeswalkers as a card type to play.
fixed a crash related to tokens and cardgui..tokens dont have models....
made a 1 line change to deckveiwer that makes it usable on touch devices and improves the overall look and feel of deckveiwer....
2012-03-13 16:20:19 +00:00
omegablast2002@yahoo.com
eb8c0c54f1 in this commit suspend now states the amount of turns in the menutext....
made changes to some of the simple menu items, made the simple menu not draw massive horizontal and vertical poles, that look was extremely dated.
2012-03-13 16:12:00 +00:00
omegablast2002@yahoo.com
0a357e7eb0 first part of a series of commits, this one adds "and((" support to the various card removel abilities, tweaks targetedplayer targetchooser, and adds the following number word variables...
counter{}
so you can get a count of a certain counter on a card
the next consist of parts using the same targetchooser method as type:
power:
toughness:
convertedcost:
followed by ---
highest:
lowest:
followed by targetchooser
blah:mybattlefield
so if i want highest converted cost of creatures i control..
convertedcost:highest:creature:mybattlefield

also added an internal ability to reuse and display flying text with a string passed to it.
2012-03-13 15:35:43 +00:00
techdragon.nguyen@gmail.com
336462eecb reverted accidental change to CARDS_DIPSLAYED 2012-03-01 10:31:35 +00:00
techdragon.nguyen@gmail.com
6124280f24 added a prefernces screen to handle media card selection on Android devices. Contains actual fix for 4297.
Added a place marker to allow volume change during app.  Right now it's either loud or off.  There isn't a way to allow the volume to gradually go up and odwn based on the values set in settings.
2012-03-01 03:24:34 +00:00
techdragon.nguyen@gmail.com
8468505f1e fixed deck name display for when "Random" player deck is chosen. 2012-02-20 07:32:14 +00:00
rodrigodemoura@gmail.com
45b4272c5e Include the Phyrexian mana display. Include more features in modrules.xml: Now is possible to change font color, Size. Include icon tag. Is possible select position to show the icon, size and where the image is stored
<item name="icon">
 <position x="0" y="25"/>
 <iconposition x="1" y="2"/> 
 <filename>menuicons.png</filename> 
 <sizeicon>5<sizeicon>
</item>
Issue: 663
2012-02-13 15:28:55 +00:00
Xawotihs@gmail.com
bd1afebbea Hid Subtypes behind MTGAllCards and added a mutex to be able to use both singleton from several threads. 2012-02-12 22:20:05 +00:00
Xawotihs@gmail.com
c38c52c6ad Refactored audio sample playback 2012-02-11 18:20:08 +00:00
techdragon.nguyen@gmail.com
85848cfe41 resolution to issue 794. Non-classic games crashed at the completion of the game. 2012-02-06 09:07:37 +00:00
techdragon.nguyen@gmail.com
5c3baedf83 moved Wagic Version macros into a new header file so that iOS can use it.
updated iOS port to use wagic versioning macros.
2012-02-05 11:16:43 +00:00
techdragon.nguyen@gmail.com
5c293e2fbb added new method to JSoundSystem to pause music. Previously, "pause" meant kill the music and "resume" effectively restarted the music. iOS will now pause and resume appropriately
modified pc and android impls to ensure new calls are made.  These still have the same effective outcome (kill and start) until the equivalent is coded on these platforms to pause and resume the music.  
fixed bug with iOS sound effects not playing.  Forgot to assign the key to the associated music sample
2012-02-05 08:21:06 +00:00
wagic.the.homebrew
b0532b8059 - Bump version number to 0.18
- Fix issue introduced in 0.17 with Immortal task
2012-02-04 14:28:07 +00:00
omegablast2002@yahoo.com
99ab44a20e added moverandom(tc) from(zone) to(zone) ability...example
moverandom(creature[green]) from(mygraveyard) to(opponentbattlefield)
example card

[card]
name=Tariel, Reckoner of Souls
auto={t}:moverandom(creature) from(opponentgraveyard) to(mybattlefield)
mana={4}{W}{B}{R}
abilities=Flying,vigilance
type=Legendary Creature
subtype=Angel
power=4
toughness=7
text=Flying, vigilance {T}: Choose a creature card at random from target opponent's graveyard. Put that card onto the battlefield under your control.
[/card]
2012-02-02 03:52:20 +00:00
techdragon.nguyen@gmail.com
228fe23e49 removed calls to ManaCost::init() as all but two are actually necessary.
moved init() from ManaCost to a private call
changed ManaPool method init() to Empty() to better represent what it does.  
renamed ManaCost::reinit to resetCosts() as reinit sounds like your are returning the ManaCost object back to initial state which is not what happens.  Only the cost related members are reset, the bool isMulti is left alone
2012-02-02 01:10:11 +00:00
omegablast2002@yahoo.com
0d223b5561 reworked some logic that was changed in last commit. 2012-02-01 12:44:11 +00:00
techdragon.nguyen@gmail.com
ac992675da This removes the compilation error introduced with r4237. I needed this in place to make an iOS build. 2012-02-01 04:17:30 +00:00
techdragon.nguyen@gmail.com
2f408664ad last fix for buttons only fixed the PC/SDL mouse impl. This fixes the iOS/Android platforms. iOS/Android platforms both issue a JGE_BTN_OK keypress on single tap in which the mouse version does not. that version issues the OK keypress in sync with the mouse click. 2012-02-01 00:38:02 +00:00
omegablast2002@yahoo.com
a248cb7423 added abilities=poisonshroud
"you can not get poison counters"
2012-01-31 19:41:43 +00:00
omegablast2002@yahoo.com
81c90f0440 added this( keyword variable{ word variable } ) support
auto=this(variable{lifetotal} <10) 1/1
auto=this(variable{opponentpoisoncount} >1) infect

basically allows you to compare against a word variable.
2012-01-31 19:17:51 +00:00
omegablast2002@yahoo.com
e6775c0c1a added playerpoisoncount and opponentpoisoncount word variables...this was the easiest way to add support for the remaining cards which cared about poison counters. 2012-01-31 18:18:56 +00:00
omegablast2002@yahoo.com
fbebcd681e added a new aihint #HINT:dontattackwith(targetchooser)
which tells the ai not to use the targetible cards as attackers, this can be card names, and CD modes.

modified the way ai handles multikicker. it will not be casting 1/1 joragas anymore :D

made WParsedInt ignore "+" signs....

added a new affinity ability...autohand=affinity(creature[vampire]|mygraveyard) ....
this is essentially affinity for creatures in your grave.

added supkeyword to clone clone addtype(zombie)....it adds the type listed to the cards types on clone...

reparse PT bonus on resolve.

reworked bushido, it should now work correctly...aside from that it now excepts word variables...fumiko is now bushido(type:creature[attacking]:battlefield/type:creature[attacking]:battlefield)

added a keyword to access acontrolsteal..the keyword is "steal"
auto=ueot steal target(creature) 

reworked persist to handle undying..added the new counter handling rules intruduced by wotc in ISD


added a vector cardsAbilities to mtgcardinstance...this keeps the abilities added to the game for a card to use stored where we can easly alter or remove them.

added an automatic increase to geteff return if the ability is a putinplay ability.

finished coding support for flip and double sided cards, though viewing the "other side" is still not possible yet.
the ability follows the mtg rules.
the ability syntax is flip(card name)...a card can flip into any other card by name...even flip into itself.

added a "canPay() call for Ninja cost...to prevent it from coming up in a menu unless you're in blockers....

added 3 new restriction types that work very similar to type(
thisturn(tc)~morethan~2
lastturn(tc)~lessthan~thisturn(tc)
compare(wordvarible)~equalto~compare(wordvarible)

these are pretty self explanitory.

moved "&&" ability parsing below "this(" allowing "this(" to grant abilities now which contain &&...enclave egologist bug is fixed by this.

fixed an issue with combatspirit link for some reason the way i was doing the bool was not always working.

took care of the todo for AProtectionFrom...you can now give a protection from(blah) in a instant or ueot ability.

added altho very limited right now a "targetedplayer" tc word. i hope to increase this with time.

as always my sidekick doc already has some cards coded for this and test will follow the addition of the cards.
2012-01-31 14:07:40 +00:00
Xawotihs@gmail.com
4762ffea87 - Fixed compilation warning in GameStateShop.cpp
- Added a call to input reset after each update in the Qt frontends to avoid strange auto-keypress
- Removed tutorial display in AI vs AI (test AI mode)
- Commit Qt project with latest buttons files
- Added a small isHuman method to the Player class
2012-01-30 21:16:33 +00:00
techdragon.nguyen@gmail.com
c42ba32ae7 added new buttons for shop for New Cards and displaying the card list. 2012-01-30 18:02:26 +00:00
techdragon.nguyen@gmail.com
b44f3088c2 refined button placement
added SDL_CONFIG to list of conditions in which ot enable touch buttons
2012-01-30 09:23:56 +00:00