Commit Graph

2397 Commits

Author SHA1 Message Date
techdragon.nguyen@gmail.com 5c86fb1c92 remove unused file. Seems like it should have been removed a long time ago. like it was a misnamed file but left around and ignored 2011-08-25 00:35:08 +00:00
wagic.the.homebrew 0bc6352d62 - Fix a bug with story mode not able to find (unzipped) campaigns 2011-08-22 12:33:39 +00:00
wagic.the.homebrew cb0f2b373f - Fix a bug where JFileSystem would return duplicate results in function scanfolder (can lead to "card id collision" in the previous builds) 2011-08-21 12:53:57 +00:00
wagic.the.homebrew 87d60cd79e - Improper GetfileInstance calls were preventing from correctly initializing the JGEFileSystem (Todo: init earlier, prevent from calling GetfileInstance if not initialized ?)
- fixed a problem with the test suite
2011-08-21 10:04:38 +00:00
wagic.the.homebrew e27cf56fa2 - Support for Zip Filesystem. It is now possible to zip the entire Res folder ("store" method preferred, zip so that the root of the zip has ai, player, etc...) in one single file for read only. Write access is done in another folder (hardcoded to be User/ for now, can be updated depending on platforms, etc...
-- zipFS has several limitations...
--- in a general way, seekg doesn't work... so getting a file's size needs to be done through JFileSystem.
--- getLine on files open with zipFS doesn't work so great. Not sure if it is a normal issue because files are open in binary or not... JFileSystem therefore offers a "readIntoString" function that needs to be used instead of the usual "getline" technique. However getLine can then be used on a stream connected to the string.

-- tested on Windows and PSP, I also made sure android still works, but haven't tested zip support on Android.
-- I tried to maintain backwards compatibility, but this might break on some platforms, if I broke some platforms and you can't find a way to fix them, please contact me and we'll figure something out
-- This removes wagic::ifstream. I didn't reimplement the securities that were involved in this, apologies for that. Might be useful to reimplement such securities in JFileSystem
-- I haven't tested options/profiles in a deep way, it is possible I broke that.
2011-08-21 09:04:59 +00:00
Xawotihs fc592a4ed7 Fixed difficulty settings bug introduced in r3247 2011-08-15 17:32:45 +00:00
Xawotihs 2c34a88ff0 Reuse swipe code of Android with Qt, associate "swipe left" to "other cards" in the shop. 2011-08-14 18:13:28 +00:00
Xawotihs c188b4d104 Fixed "Werror" related compilation problems on Linux and Meego. 2011-08-14 18:09:02 +00:00
Xawotihs f1b44d5330 Trophies icon usable by click/touch 2011-08-12 23:00:31 +00:00
Xawotihs 5414cd940e Defined usage of double buttons input for PSP only, it caused some annoying exit with touch inputs 2011-08-11 21:56:27 +00:00
Xawotihs 4dd8eaadad Touch events are now handled before key events 2011-08-07 19:48:01 +00:00
wagic.the.homebrew 765b6b0412 - Moved Cast Restriction variables "out" of CardPrimitives (replaced with a pointer). This frees 64bytes off of CardPrimitives on Windows, I assume something similar on the PSP, which gives a result of more than 500kB freed
- fix for issue 716 (text not rendered in some cases) 
Test suite passes
2011-08-07 05:05:28 +00:00
wagic.the.homebrew 9f3a42d0c6 - removed "image_name" variable from MTGCard. this should free roughly 200kB with the current amount of MTGCard objects we have. (Which counterbalances the "roughly 150kB in Introduced in CardP Primitives recently :( ) 2011-08-07 04:01:56 +00:00
Xawotihs eac5a35b43 Cleaned up my phasebar code and merged it into the overall item selection code 2011-08-04 05:57:10 +00:00
omegablast2002@yahoo.com 5cd779094d changed it to 1.4f 2011-08-03 14:56:12 +00:00
omegablast2002@yahoo.com 07662b08f6 fixed a warning tried as error in MTGGamePhase... 2011-08-03 12:25:09 +00:00
Xawotihs 56c68e799c Fixed compilation problem on VC2010 2011-08-02 21:48:05 +00:00
Xawotihs 097c40149d Phase bar is now clickable/touchable and animated. 2011-08-01 21:26:12 +00:00
wagic.the.homebrew 78efba08b1 - fix for counters slowness on psp 2011-07-30 14:29:12 +00:00
wagic.the.homebrew 794be140ce - graphical representation of counters. see graphics/counters/quest.jpg for an example
- rewrote some code dealing with text formatting for a card when rendering in text mode. I could swear my code has been reverted. If somebody has good reason to believe we should re-process the string formatting on every frame, please let me now. I believe my change can help rendering speed of text mode a lot.
- counters change to vector instead of array
2011-07-29 17:43:45 +00:00
wagic.the.homebrew 9631171ad1 Cleanup of some Trigger code 2011-07-28 13:51:42 +00:00
wagic.the.homebrew ef5e011e23 - Removed "isClone" flag. This flag was error prone. The "core" classes now have decent copy constructors, and ideally long term we should create copy constructors for the abilities that have additional pointers in them.
-- The test suite passes but this is a big change. I might have introduced some memory leaks or bugs. I might have fixed some bugs, too
2011-07-27 14:31:27 +00:00
omegablast2002@yahoo.com 8bb53ff12f added incrementing of "damageCount" the variable that tracks the damage dealt to a player, to "infect" damaging...this is a rules correction, a creature with "infect" still "deals damage"...it just does it differently.
this fixes an issue with infect creatures not triggering "bloodthirst" ...all other cases this was working correctly, bloodthirst however checks the damageCount.....
2011-07-26 16:56:01 +00:00
omegablast2002@yahoo.com 11473e0fb5 added "while" tag to this's i added it to lords a while ago to fix a similar issue where the lords were taking on the "oneshot" variable of their abilities in cases where you really didn't want them too...
its basically an over ride....
2011-07-26 16:39:12 +00:00
omegablast2002@yahoo.com 72d91769d7 safe-ing up some of the getEff checks...i think the rare "trample" crash was actually caused by a check against a "player" as getnextopponent().... 2011-07-23 11:42:59 +00:00
omegablast2002@yahoo.com 444d13b457 added an "ifnot|if then" ability, with the option to turn on kicker payment menu choice, it created issue with the cards which were using the "kicker" workaround to show that a card was cast...
the ability checks against any of the current cast restriction checks and is written in the following syntax
example phaige the untouchable is 
auto=ifnot casted(this) then wingame opponent
if|ifnot condiation then ability
this can also be used in && abilities such as this card
pulse of the grid
auto=draw:2 && target(*|myhand) reject && if type(*|opponenthand)~morethan~type(*|myhand) then moveto(myhand) all(this)

this adds a few cards in its current state, though the aim for this ability was removing the use of "kicker" workaround for cards like the divinity creatures.
i plan to extend this to support such effects as "if spentmana({b}{u}) then effect....and other conditional checks currently not possible even with workarounds.

I'm committing these now since im working on abilities for kiaos mod and don't want to have a 20 page changelog.

also added missing text to binding grasp, it was thought that it was bugged becuase it simply "ended" its effect....however this is a confusion since the effect was ending due to upcost not being paid, however the card text did not reflect that it had a upcost....
2011-07-23 10:36:03 +00:00
omegablast2002@yahoo.com bd1c31b6f9 moved the parsing of cast restriction into abilityfactory and out of mtgability...this is so new abilities can take adventage of these checks through the use of AbilityFactory af. 2011-07-23 09:03:33 +00:00
omegablast2002@yahoo.com e8b8079ef6 fixed a bug where you could equip opponents creatures with your equipment, it is quite possible that we have *always* been able too but no one has actually tried. anyways "myBattlefield" does not compare to "mybattlefield"...
i seriously think we devs should consider making all ability coding required lowercase. not card names and text, but coding such as targetchoosers "thisForEach(creature[Black;White]|myBattlefield) moveto(myGraveYard) ...<---this is not uniform...and leads to people using such coding in the source ....i think i suggested this once and was instantly shot down...however, this is the 2nd instance where a bug has arose from the comparing of capitalized vs lower case..becuase we all assume that every line is going to be dropped to lower case as the game reads them.....
2011-07-20 17:17:52 +00:00
Xawotihs 9dccc885d6 Updated the Qt project to work on Desktop/Maemo/Meego/Symbian. Removed all dependencies except Qt and OpenGl. 2011-07-17 18:18:17 +00:00
Xawotihs c2879b0b6e Fixed a selection problem sometimes hapenning on the hand zone in touch/mouse mode and removed dead code. 2011-07-14 21:21:24 +00:00
wagic.the.homebrew 8c79e0644c Fix memory leak in ATransforms ability
- Blame is on me for the bad design behind the "isClone" flag, I need to get rid of that flag in the long term.
2011-07-14 13:49:46 +00:00
omegablast2002@yahoo.com a8837e95c6 fixed a heap corruption caused in atransformer was a mistake in the code.
also, if ai is adding counters and we're greater then or equal to the max amount that counter ability allows, eff = o.
2011-07-13 18:39:51 +00:00
wagic.the.homebrew fe98b3ca68 Removing the feature that loads the "big" card instead of the thumbnail when the thumbnail does not exist. Too many people using incorrect HQ packages are complaining about performance issues, so this will make the problem go away, and force people creating those packages to make them correctly 2011-07-13 12:58:21 +00:00
wagic.the.homebrew 9827e3f915 - Attempt at "fixing" issue 705: loading card frames (used for text mode) in 16bits instead of 32 2011-07-11 15:09:39 +00:00
wagic.the.homebrew 9d9db7198e Additional tweak for issue 693: reduce the size of some background images. I think the visual result is still ok. The images go from 480x272 to 450x255, and end up taking twice as less space in ram (512x256 instead of 512x512).
This helps a lot in the deck selection menus (duel and deck editor).
That, added to my previous fix, fixes issue 693 for me.
In general, we should try to avoid 512x512 32bits textures on the PSP. That happens with a 480x272 png image. One solution is to convert the file to a jpeg, and load it in 551 mode whenever possible. Another solution is what I did: use a 450x255 image instead. The best is of course to cumulate both, which divides the size in Ram by 4 on the PSP.
I'm ok with distributing lower res graphics on the psp, and higher res on other platforms, if that helps. Main culprits are 480x272 images (when there's too many of them)
2011-07-11 14:34:12 +00:00
omegablast2002@yahoo.com ff1a1dde86 updated a piece i forgot for type( restriction. this fixes feast for blood. 2011-07-11 12:59:44 +00:00
wagic.the.homebrew 3148a25f3a - Manual cache cleanup in the menu to help a bit with issue 693. This is unfortunately not enough, we are dealing with ram fragmentation problems here :( 2011-07-10 13:51:39 +00:00
wagic.the.homebrew bf4e0d8908 - minor tweaks:
-- Res is the default folder in Res.txt, in case it exists, to avoid confusion when debugging
-- added sign_prx in the makefile, harmless if you have the default build.mak, but signs the app for you if you have the correct files
-- uninitialized variable warning fixed in Rules.cpp
2011-07-10 07:55:08 +00:00
wagic.the.homebrew 4a6529ea55 - Reverting r3744. This fixes issue 707
-- I will open a new issue for the problem that r3744 was fixing
2011-07-10 04:36:55 +00:00
wagic.the.homebrew e84ad44e47 - Extended TutorialMessages into a message system that shows up every time a new game is started.
-- instead of tutorial(my message), use message(my message) for such messages. 
-- Counting on people to use it, now that it's here ;)
2011-07-10 01:55:20 +00:00
omegablast2002@yahoo.com e5dfb81fb9 added the missing types into types filtering.
http://code.google.com/p/wagic/issues/detail?id=706
these types were converted into part of the "types" enum and are no longer considered a subtype in the engine.
as they appear before Subtypes::LAST_TYPE they are to return "" as their subtype search result.
i figured there was no harm in including them in the types list filtering as they were moved from subtypes becuase they were some of the most frequently used subtypes.
2011-07-09 20:33:07 +00:00
Xawotihs 991bacbec5 Fixed issue 679. Filters now work with mouse and touch. 2011-07-09 10:51:49 +00:00
wagic.the.homebrew 8546f3dff8 Fix for issue 700 (Basic Lands randomly stop working) 2011-07-09 09:25:31 +00:00
wrenczes@gmail.com d23a826fef Fixed the back image card drawing offset. There's probably a better way to fix this, but it stems from the fact that cards (and the large back.jpg image handling) have their hotspots set to the center of the card coords, but for whatever reason, the code that draws the thumbnail version of the back image doesn't. Rather than try to fix the coords in all the places where we draw the back thumb image, I refined the quad sharing code so that there's one quad for temp cards, and another for actual back image drawing. 2011-07-09 04:30:18 +00:00
Xawotihs 979840dd4e Fixed issue 676 (was not related to mouse support at all) 2011-07-08 21:26:21 +00:00
omegablast2002@yahoo.com 700ee1a7db reinstated target coloring, added text display for stonehewer and hermit mode unlock. 2011-07-08 19:39:47 +00:00
omegablast2002@yahoo.com 665f533ac8 fixed a bug where altercost would cause extracost payments like PMana to lose their source, because the source for the cost is set after the card is placed in hand, and altercost resets the cost of cards to the new cost. 2011-07-08 17:43:19 +00:00
omegablast2002@yahoo.com dbbf5e4cb6 added the support to fix avatar of might...you can now do
otherrestriction=type(creature|mybattlefield)~lessthan~type(creature|opponentbattlefield)-3

which means, if the statement above is true you can play the card....if you subtract 3 from the amount the opponent has in creatures, and you are still less then the opponent...then that means he has atleast 4 more creatures than you do.

so right after the type(blah) you can add +number or -number...and it will modify the amount to compare.
2011-07-08 10:47:28 +00:00
omegablast2002@yahoo.com f88178f2cf refactored the typemin: cast restriction, there was a reported bug with it and while debugging it screamed refactor.
so i converted it from string comparisons and counting the battlefield..into targetchoosers with declarable operator.
simplified the code from the mess it was before into something alot easier to card code with.

example before:
mytypemin:less type(land),opponenttypemin:* type(land)
becomes
type(land|mybattlefield)~lessthan~type(land|opponentbattlefield)

the new syntax is:
type(targetchooser)~operator~number
type(targetchooser)~operator~type(targetchooser)
the operator are:
morethan
lessthan
equalto
2011-07-07 11:39:06 +00:00
wrenczes@gmail.com 463a64521f Switched another case of the psp icons to (explicitly) use the managed cache. 2011-07-07 08:26:01 +00:00