Commit Graph

41 Commits

Author SHA1 Message Date
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
wagic.jeck
807eea7ddb Jeck - As prior, but for sounds and music as well. Use CommonRes->ssLoadMusic / CommonRes->ssLoadSample. 2009-08-27 06:31:38 +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
258e08786d Erwan
- fixed a few cards
- removed extra phasebar
- doesnotuntap and protection from... will now work as auras
2009-08-10 13:22:22 +00:00
wagic.the.homebrew@gmail.com
76d386be06 Erwan
- fixed a bug with bottle gnomes (would give life to opponent even if you steal control)
- huge update for abilities life,draw,damage,deplete,discard in the parser. This breaks some cards (so we need to fix them) but allows more flexibility in the future. See my post on the forum
2009-07-25 14:57:27 +00:00
wagic.the.homebrew@gmail.com
2ba5fcb955 Erwan
- Added "@movedTo(...) trigger. See argothian enchantress in USG
2009-07-14 13:29:12 +00:00
wagic.the.homebrew@gmail.com
ddc4636bf6 Erwan
-fixed "lord changes controller" bug
2009-07-05 04:49:21 +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
630a239f31 Erwan
- tap/untap of a card now sends an event
2009-06-25 14:23:21 +00:00
wagic.the.homebrew@gmail.com
2e3ccae712 Erwan
-added event when drawing from the library
2009-06-18 12:54:40 +00:00
wagic.the.homebrew@gmail.com
53b1b5e9ec Erwan
- Magic 2010 - inplay becomes Battlefield. Wagic is still compatible with both, but try to use "battlefield" from now on. For example moveTo(battlefield) instead of moveTo(inPlay)
- Magic 2010 - "Removed from game" becomes "Exile". Wagic is still compatible with both, but try to use "exile" from now on. For example moveTo(exile) instead of moveTo(removedFromGame)
- Magic 2010 - "End of turn" step becomes "end" step. Wagic is still compatible with both, but try to use "end" from now on. for example: "@next end" rather than "@next endofturn" (not sure this is more clear than before, but at least it's consistent with the rules)
2009-06-17 13:11:45 +00:00
wagic.the.homebrew@gmail.com
35214a2f7e ERwan
- bug fix for zone changes
2009-06-13 05:39:18 +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
ab42e5db06 Erwan
- fixed card id collisions in Legends, Ravnica, Portal
- Changed Deck and Database structures with better design (a bit faster, hopefully a lot cleaner)
- updated Windows project file
2009-06-06 04:46:54 +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
f50d7e30d4 Erwan
- Added a few "stats" to the main menu. This might slow down loading times on the PSP (needs testing). In that case I'll move it to the options, or optimize it if needed
2009-05-19 13:45:53 +00:00
jean.chalard
e0e21fa2a3 J :
* Fix a number of warnings.
2009-04-29 12:06:28 +00:00
wagic.the.homebrew@gmail.com
fab150414b Erwan
- Added name effect for Momir
- Fixed a couple bugs with "moveTo", see test/Amugaba.txt
2009-04-11 03:59:46 +00:00
wagic.the.homebrew@gmail.com
6582a1972a Erwan
- Added Momir Basic mode :)
2009-04-04 12:52:36 +00:00
wagic.the.homebrew@gmail.com
5952b382a2 Erwan
-Fixed bug with fountain of youth
-New alternate format for decks
2009-04-02 12:50:18 +00:00
wagic.the.homebrew@gmail.com
3994006d7e Erwan
- fixed a few memory leaks
2009-03-29 10:33:42 +00:00
wagic.the.homebrew@gmail.com
2031577de4 Erwan
- fix Fastbond bug
- Attempt at fixing issues with Escape artist and Amugaba (not tested)
2009-03-25 14:44:48 +00:00
wagic.the.homebrew@gmail.com
e8d32b2c6d Erwan
- _cards.dat parsing error fixes on erroneous files
- replaced cards array with a vector for MTGGameZones
2009-03-25 13:53:19 +00:00
wagic.the.homebrew
070e24ec7a Erwan
- fixed compilation issues
- fixed bug with persuasion
2009-03-18 10:39:38 +00:00
wagic.the.homebrew
bc7c689eab Erwan
- Attempt to fix a bug in 0.5.0 with persuasion. Haven't tried to compile/test yet :/
2009-03-18 04:04:34 +00:00
wagic.the.homebrew
61463d047b Erwan
- fix a bug with nyxathid
2009-03-14 15:03:55 +00:00
wagic.the.homebrew
fa05ca5225 Erwan
- cards bugfixes
- added a few zone names for moveTo
2009-03-02 13:40:04 +00:00
wagic.the.homebrew
f87c703866 Erwan
- Added WEvent class, allows to send events to abilities
- Cards that change zones now becomes new objects (as specified in the Comprehensive rules). This should allow to fix lots of stupid bugs in the near future, but probably brings loads of new issues :(
2009-02-16 13:46:14 +00:00
wagic.the.homebrew
f7a887db2a Erwan
- Bug fixes for Kird ape(RV), Dingus Egg(RV), Ankh of Mishra(RV), Ancient Tomb(TMP), Wooded Bastion (SHM)
- Added tests in the test suite to confirm/infirm  some bug reports
2009-02-15 05:32:12 +00:00
wagic.the.homebrew
391bdaf0d8 Erwan
- missing "removedFromGame" initialization fixed (see celestial_purge test)
2009-02-07 02:43:42 +00:00
wagic.the.homebrew
b14e6c318e Erwan
- Updated options system
2009-01-29 13:35:19 +00:00
wagic.the.homebrew
e831a8e400 Erwan
- a few card updates
- back to original font for menus
2009-01-20 13:15:52 +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
bb9f09df82 J :
* Fix a warning.
2008-12-25 13:18:54 +00:00
wagic.the.homebrew
9dfc89815f Erwan
- Added Tokens (needs testing !!!)
- Added a few cards that create tokens
2008-12-16 14:20:03 +00:00
wagic.the.homebrew
790e2a2cdf Erwan
- improved the parser for "lord", now can take any kind of "target", not only creature types (so it can now be used to code abilities such as Bad moon and crusade)
- fixed typos for goblin lord, zombie master, lord of atlantis
- Added "moveTo" keyword
- added a dozen cards
2008-12-14 12:07:01 +00:00
wagic.the.homebrew
3721247bee Erwan
- It is now possible to have avatars associated to each Deck
- Added SFX
- Added Music files
- Possibility to choose your opponent
- Opponents' difficulty is measured according to their number of victories against a given deck
2008-11-24 09:24:47 +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
c72fbbd20c Erwan
- the testsuite now outputs an HTML result file with colors
- hopefully speed improvements for the game on PSP (needs testing on the actual device)
2008-11-10 14:38:30 +00:00
wagic.the.homebrew
d45e3b101b 2008-11-02 09:50:16 +00:00