Commit Graph

141 Commits

Author SHA1 Message Date
jean.chalard
a0b1da9810 J :
* Remove an unused variable.
2009-09-08 01:32:30 +00:00
jean.chalard
e7fb9282ce J :
* Fix the last tests that didn't work, Rampage ability.
2009-09-07 16:40:03 +00:00
jean.chalard
5b473a1505 J :
* Fix almost all tests.
* This version "nearly" works.
2009-09-07 14:37:32 +00:00
wagic.the.homebrew@gmail.com
c1accf5c6e Erwan
- fix global effect cards (wrath of god) VS protection 
- Removed/updated a few debug outputs
2009-09-06 01:11:51 +00:00
jean.chalard
dd2a541c2b J :
* Fix the acting player.
* This should make most things work.
* I still witness some segfaults.
2009-09-03 17:23:03 +00:00
wagic.jeck
f220d2e9b9 Jeck - Cache and resource manager merged, streamlined.
This is pretty major, so there'll probably be something wrong with it... even though I did spend a few hours looking.
NOTES:
 * If you've Retrieved it, don't delete it--- Use resources.Release(Whatever). 
    Textures automatically release subordinate quads.
 * Most of the time, use resources.RetrieveQuad to grab a quad. Should handle everything for you.
    RetrieveQuad will load the required texture, if needed.
    Only managed resources have a resource name ("back", "simon", etc). 
    Managed resources can be retrieved with GetTexture/GetQuad/GetWhatever.
    Non managed quads lookup by position/dimensions, defaulting to the whole texture.
 * Use resources.RetrieveTexture only when you need to do something special to it. 
    Calling retrieve texture with RETRIEVE_MANAGE will permanently add a texture to the manager
    RETRIEVE_LOCK and RETRIEVE_VRAM will lock a texture. It will not leave the cache until
    Release(JTexture*) is called, or as a last resort during cache overflow.
 * Try to only store (as a class member) pointers to textures retrieved with RETRIEVE_MANAGE. 
    All others may become invalid, although locked textures do have a high degree of stability. It's
    pretty safe to store a locked texture if you're not going to load much between uses.

There's a lot going on here, so I might have missed something... but it runs through the test suite alright.

TODO: 
 * When called without any arguments, RetrieveQuad sometimes leaves a thin border around the image. 
    This can be bypassed by specifying a quad one or two pixels less than the image size. Why?
 * I've had a crash while runing the Demo mode, something to do with receiveEventMinus? 
    This hasn't exactly reproduced on a clean SVN copy, (being a hang, rather than a crash) so 
    I've probably done something to worsen the problem somehow? I'll look into it tomorrow.
 * Clean up lock/unlock system, memory usage. Streamline interface, consider phasing out calls using GetWhatever() format.
2009-09-03 09:28:16 +00:00
jean.chalard
7214248494 J :
* Some more tweaking for combat.
* This still doesn't work, but it's closer.
2009-09-03 02:16:53 +00:00
wagic.the.homebrew@gmail.com
0454fb20ec Erwan
- fixed textures cache bug
- fixed one card in TMP
2009-08-31 12:22:43 +00:00
jean.chalard
6dab048a9e J :
* Interface for damage assignment.
2009-08-31 02:00:33 +00:00
jean.chalard
2ff279fad8 J :
* Order blocker interface.
2009-08-28 13:57:12 +00:00
wagic.the.homebrew@gmail.com
0454d39f79 Erwan
-fixed GameObserver::receiveEvent
2009-08-23 10:52:10 +00:00
wagic.the.homebrew@gmail.com
846f3b2ffc Erwan
- Fixed some segfaults in Test suite
2009-08-23 10:22:54 +00:00
jean.chalard
3349f974f1 J :
* New interface.
* This breaks a lot of things. It is not feature-equivalent. It
  probably doesn't compile under windows and doesn't work on PSP.
* Damage is not resolved any more. This will have to be fixed.
* Blockers can't be ordered any more. This will have to be fixed.
* A lot of new art is included.
2009-08-22 05:59:43 +00:00
wagic.the.homebrew@gmail.com
4f76f50cdd Erwan - fizzle spells that have invalid targets 2009-08-09 11:18:05 +00:00
wagic.the.homebrew@gmail.com
8cc2fc9d52 Erwan
- The AI can now use May Abilities
2009-07-25 11:43:36 +00:00
wagic.the.homebrew@gmail.com
3e7ecb3016 Erwan
- fixed a bug (crash if a card that had an ability until end of turn would be put into the graveyard before the end of the turn)
- Added a new game Mode : Random 1 or 2 color.
2009-07-18 08:50:14 +00:00
wagic.the.homebrew@gmail.com
c8333e76b1 Erwan
- Updated Parser mechanism. Right now this doesn't change functionalities much, but should be more readable, and make it easier to code some new abilities in the future
- Fixed regenerate, broken with r532
- Death Ward now works
- I think "&&" now works with all abilities, needs to be tested...
2009-07-11 15:59:51 +00:00
wagic.the.homebrew@gmail.com
d52f06d98d Erwan
- Magic 2010 - blockers ordering
- Fixed a memory leak introduced in a previous revision (foreach)
2009-07-04 04:15:05 +00:00
wagic.the.homebrew@gmail.com
ca3c2d30ab Erwan
- Magic 2010: Combat Damages don't go on the stack anymore
- Comp rules: "goes to graveyard" effects don't go on the stack anymore
- Regenerate "fixed" (untested)
- Basic "ReplacementEffect" mechanism for damage prevention. Can be extended to other replacement effects with some limits.
- TODO: Damages don't go on the stack, the abilities that create them do.
2009-06-23 14:22:00 +00:00
wagic.the.homebrew@gmail.com
7804cbbd64 Erwan
- Send an event when Phase changes
2009-06-16 14:10:33 +00:00
wagic.the.homebrew@gmail.com
f1a3895fc6 Erwan
- Magic 2010 Rule: removed Manaburn
- Magic 2010 Rule: manapools empty at the end of each step
2009-06-14 09:21:49 +00:00
wagic.the.homebrew@gmail.com
dd56962910 Erwan
- Events are now sent to GameObserver rather than ActionLayer
2009-06-13 03:49:52 +00:00
wagic.the.homebrew@gmail.com
ec27c29c2b Erwan
-fixed bug with Sphinx Sumoner (was an interface issue, not a an issue with the card itself)
2009-06-02 13:44:02 +00:00
wagic.the.homebrew@gmail.com
b35195dddf Erwan
- Added crude possibility to search for the library (see Diabolic tutor)
2009-05-30 08:11:47 +00:00
wagic.the.homebrew@gmail.com
0e88d03c04 Erwan
- Zip file Directory cache for faster access
- Preload card images in player's hand before the game starts
2009-05-26 11:32:17 +00:00
wagic.the.homebrew@gmail.com
e9cb57dbb1 Erwan
- Added new bonus system for victories. Unlock and bonuses need to be tested :/
2009-04-11 09:43:29 +00:00
wagic.the.homebrew@gmail.com
e9190ff19f Erwan
- fix with Momir+ */* creatures
2009-04-06 12:19:18 +00:00
wagic.the.homebrew@gmail.com
89caaaadb4 Erwan
-Fixed a bug with */* creatures that don't die when they come into play as 0/0
-Fixed a bug with hymn of rebirth introduced in rev 245
2009-04-04 15:09:31 +00:00
wagic.the.homebrew@gmail.com
6582a1972a Erwan
- Added Momir Basic mode :)
2009-04-04 12:52:36 +00:00
wagic.the.homebrew
78b18435b3 Erwan
- New difficulty mode to unlock
2009-03-16 13:58:57 +00:00
wagic.the.homebrew
3b16eb5020 Erwan
- Fixed a few bugs (animate dead(RV), Goblins Deathraiders(ALA), Druid of Anima(ALA))
2009-02-15 09:22:17 +00:00
wagic.the.homebrew
6d1d5d751a Erwan
- new Ability : ALifeGiver (bottle gnomes)
- Added a few cards from Tempest
- Hybrid mana fix for hybrid mana involving uncolored mana costs (see tests/generic/hybridmana2.txt - spectral possession)
- Fixed bugs with targetting for TargetAbilities
- Fixed multiple sacrifice abilities cost (Siege gang commander, see tests)
- Fixed a small font issue
2009-02-11 09:38:20 +00:00
wagic.the.homebrew
b14e6c318e Erwan
- Updated options system
2009-01-29 13:35:19 +00:00
wagic.the.homebrew
b6a17098a4 Erwan
- Added Dr Solomat's TEMPEST expansion
- Added Sacrifice as part of the cost of activated abilities. Making it work as an extra cost for "put in play" still requires some work though. "Render" methods need to be written correctly
- Added cards with sacrifice in the existing sets. Most of them need testing...
2009-01-25 09:20:01 +00:00
wagic.the.homebrew
e389ea5062 Erwan
- Moved the "putintoplay" rule as a standard MTGAbility
- reverted bad encoding for MTGGuiPlay
2009-01-22 13:25:00 +00:00
wagic.the.homebrew
9e314720e9 Erwan
- Parser: Added possibility to add multiple abilities for one cost, using keyword && (see Ardakar wastes in 10E). Currently only works with mana and damage
- Added a dozen new cards
- Improved testing suite : new keyword "choice" to select an item in the abilities popup menu
2009-01-18 06:42:59 +00:00
jean.chalard
3bb2c431c9 J :
* Split constants file to have them in a single place.
2009-01-06 13:07:28 +00:00
jean.chalard
3e9ff2b580 J :
* Change the name of debug.h into config.h and use the new RESPATH define.
2008-12-25 16:28:03 +00:00
jean.chalard
c97dd1f260 J :
* Remove ^M's.
* Re-indent automatically.
* Remove whitespace at the end of lines.
2008-11-12 13:45:42 +00:00
wagic.the.homebrew
01d2110e8d Erwan
- Added the possibility to narrow a spell/ability target according to color,tapped status, attacker/blocker, abilities...
- Changed the games phase system to become a phaseRing. This allows to add cards that have an impact on the phases, such as stasis
- Added a few cards
- Fixed a (windows) bug in gatherer tool
- Adding stdint.h for VC++ (see wikipedia->stdint.h)
- deleting the compiled PSP lib to avoid confusion. People who work from the sourcehave to compile the lib by themselves.
2008-11-09 04:28:03 +00:00
wagic.the.homebrew
d45e3b101b 2008-11-02 09:50:16 +00:00