Commit Graph

1830 Commits

Author SHA1 Message Date
techdragon.nguyen@gmail.com a36d886dd5 Added first draft of an interactive button. Needs to handle addition of images a little better
refined detailed info window for stats display
removed PSP button for Touch interfaces (currently only iOS and Android) on deck selection screens
to not break the core engine and reduce some more complex code, I created a new vector in the JController object. mButtons.  This vector will contain all the valid buttons for a given screen.  The appropriate Add/Remove methods have been updated to account for this new vector.
2012-01-25 18:35:24 +00:00
Xawotihs@gmail.com 350b28d81f Fixed compilation warning 2012-01-23 19:37:36 +00:00
techdragon.nguyen@gmail.com 519cd3bd69 refactored DeckMenuItem to be a derived class of SimpleMenuItem. Not sure why I had made them distinct.
TODO: review DeckMenu and SimpleMenu to see if it would be better to have them derive from a base class rather than be distinct.
2012-01-23 08:39:18 +00:00
Xawotihs 12a431ff8c - Merged QWidget and QML Qt frontends, just define QT_WIDGET to select the QWidget one
- Coded a resource package download GUI based on QWidget
- Removed compilation warning on unused variable
- Updated Maemo desktop file to start directly the binary
- Updated .pro file
- Updated version macros to be able to compose the resource package file
- Updated QML interface for Android
- Updated QML interface to not contain the name of the resource package
- Updated the file downloader class to be able to get the resource package hash from the google code server
- Updated the file downloaded class to verify the resource package hash from the remote server at each startup to be able to perform automatic update
- Defined several JGE operation as static to clean up the wagic wrapper
2012-01-15 18:50:38 +00:00
Xawotihs a480cf2e66 Extracted Wagic versioning information so that they can be used outside of GameStateMenu.cpp 2012-01-14 12:18:16 +00:00
wagic.the.homebrew 87a332e3f1 - temporarily remove undo feature
- bump up version number to 0.17.1 in PSP/Windows/android
2012-01-14 08:42:03 +00:00
omegablast2002@yahoo.com c145881eeb fix for "x" and alternative cost types. 2012-01-13 14:53:51 +00:00
techdragon.nguyen@gmail.com 00fbbae668 reverted change for r4189, as it broke functionality in codebase 2012-01-13 08:34:53 +00:00
omegablast2002@yahoo.com 993612eee2 added hexproof abilities= word to point to opponentshroud, both words are now usable. 2012-01-12 14:52:00 +00:00
Xawotihs cb7f3b070f Fixed a problem when running the multithreaded testsuite with sound. 2012-01-11 20:13:24 +00:00
omegablast2002@yahoo.com f388414f3f if we have no target we are milling the sources controller in mill cost. 2012-01-11 17:20:55 +00:00
techdragon.nguyen@gmail.com bb2536512a fixed a memleak in AdWhirlConfig.m
added a TODO about a compiler warning I received that was not flagged in the code.
2012-01-10 20:21:57 +00:00
techdragon.nguyen@gmail.com adc3e4b689 final change for 0.17 to sync up with other platforms. focused targeted touch of ui objects to deck menus. 2012-01-10 19:53:10 +00:00
Xawotihs b4c33cb3e1 Finally got issue 777
I was wrong, the recursion was not due to weird call order of WGuiList and WGuiMenu at all. It was due to two different problems:
1) there is some code in WGuiMenu to handle keys previously held. I guess it's to be able to go through the options very quickly on PSP.
2) Each PSP generated keys stays held if the corresponding code for release is not called...

=> Each time we generate some PSP keys press from gesture in the core or in a frontend, we absolutely need to generate the release code corresponding or the core might think that some keys are still held ... That's precisely what was not done by the code handling swipe in filters =).
2012-01-09 23:35:50 +00:00
Xawotihs 8517a4c9e8 Partial fix for issue 777.
Basically options are fixed on all the platforms (you can create and
select a profile for example). Regarding the filters, it works perfectly
with QML on desktop. For SDL on Android and QML on Meego, it causes
either annoying blinking letting you do what you want or some kind of
blinking deadlock. I think there is some recursion happening in the GUI
items and to be sorted.
2012-01-08 23:35:19 +00:00
techdragon.nguyen@gmail.com e79597d82c corrected x offset of selectable area of the menu items. For Simple Menus, clicking on the row from that point to 200px is the selectable area. 2012-01-08 16:38:52 +00:00
techdragon.nguyen@gmail.com 440b3b00d9 applied logic used for deck selection to popup menus as well 2012-01-08 15:32:28 +00:00
Xawotihs f9e56608dc Fixed random, cancel, random bug 2012-01-08 15:15:56 +00:00
techdragon.nguyen@gmail.com 1cef5d690b made DeckMenuItem a subclass of SimpleMenuItem
moved code to check on click position into base class from DeckMenuItem
TODO: apply same logic for standard menus
2012-01-08 14:55:22 +00:00
Xawotihs 9727a98e6a Fixed end of game when test AI is defined 2012-01-08 01:11:24 +00:00
Xawotihs a0019a13d0 Fixed an uppercase path potential problem 2012-01-07 21:00:37 +00:00
techdragon.nguyen@gmail.com 436f95dfec fixed some click issues found with iOS port. 2012-01-07 16:35:39 +00:00
Xawotihs a28c90dacf Fixed problem introduced in r4165 preventing any platform except iOS to
select a deck.
2012-01-07 10:22:39 +00:00
techdragon.nguyen@gmail.com 6d5342c02b fixed a memory leaks in app delegate
* adjusted the touch sensitivity of the iOS port for deck menu selection.  Decks were being selected even though the selection was touched.  It was highlighted but as soon as you let go it would instantly select (OK button) select the selected deck.  This isn't a problem on Android as the SDL already handles this as far as I can tell.  I limited this to only iOS so I don't accidentally mess up the other ports.
2012-01-06 19:13:43 +00:00
techdragon.nguyen@gmail.com 1bd8c860c5 preliminary native touch interface for interrupting spell. Touch the icons for each action 2012-01-05 12:05:17 +00:00
techdragon.nguyen@gmail.com b03449cbf6 Implemented directional controls on Filters so that you can now navigate the Filters menu on Touch interfaces for the Deck Editor and Shop screens. It's not the best implementation but it at least works across all platforms. swipe will now move the highlighted cursor to the correct direction.
in release builds, test suite will now be disabled
2012-01-03 17:53:51 +00:00
techdragon.nguyen@gmail.com 6adffc12f0 Issue 565: This fixes the issue with the MENU not popping up ingame. The bug was caused when user canceled out of a deck selection screen to either go back to the Player Deck Selection or Main Menu. The buffer was not cleared properly. added call to reset buffer in GameStateDuel to follow pattern used in GameStateDeckViewer. 2012-01-03 14:05:43 +00:00
techdragon.nguyen@gmail.com 086cefd75c removed key bindings tab for IOS 2012-01-03 12:49:51 +00:00
omegablast2002@yahoo.com 460be7854a tweaked an ai change i made, found some lands (ie:cloudpost) are not considered either good or "dontknow" so they fall into lottery chance, all land that isn't considered good should fall under "dontknow" not lottery.... 2011-12-31 14:31:39 +00:00
techdragon.nguyen@gmail.com 2882724638 fixed compiler warnings found on Windows build 2011-12-31 14:31:35 +00:00
techdragon.nguyen@gmail.com dfa007cecb implemented platform independant clickable OK button on gui combat window when selecting blocker order. removed iOS specific coding. 2011-12-31 08:21:00 +00:00
techdragon.nguyen@gmail.com c88ed95c95 enabled touch code for handling choosign blockers on touch interface.
TODO:  Please have somebody test on non-Touch device.  I don't have one anymore.  If it breaks it let me know and I'll make it a compile time option.  Seems to work with 2 and 3 blockers.  I couldn't get the game to get 4 blockers on the screen, but I think it should work the same.  This should be cross platform and not iOS specific
2011-12-30 23:42:13 +00:00
techdragon.nguyen@gmail.com e102d3f369 enabled OK button on GuiCombat screen when choosing defenders/attackers. iOS solution only currently. To implement in Android, we need to create a mask/invisible button above the OK button coordinates and add a listener to activate when a user touches the appropriate area. Not ideal, but it works for now.
TODO:  translate functionality into core of engine.
2011-12-30 16:04:21 +00:00
omegablast2002@yahoo.com be33659081 fix for cumulative upcost, extra cost were not being multiplied
[card]
name=Phyrexian Soulgorger
auto=cumulativeupcost[{S(creature|myBattlefield)}] sacrifice
text=Cumulative upkeep - Sacrifice a creature. (At the beginning of your upkeep, put an age counter on this permanent, then sacrifice it unless you pay its upkeep cost for each age counter on it.)
mana={3}
type=Snow Artifact Creature
subtype=Construct
power=8
toughness=8
[/card]
was only charging you 1 sacrifice per upkeep.

added thisTargetComparison, this(cantargetcard(targetchooser))...its a thisdescriptor that compares if the card can be targeted by a target chooser...
2011-12-29 19:55:45 +00:00
wagic.the.homebrew 591f0e0d30 - fix for issue 772
- fixed some issues in zstream that prevented to use "getline" in zipped streams 
- added a "pooled buffers" system to keep a cache of file descriptors. This is potentially dangerous though, but shaves several seconds of loading time on the PSP. If problems arise on other platforms I'll make it a compilation parameter
- gracefully fail when calling manacost information on a not properly initialized mana cost
2011-12-28 16:14:08 +00:00
omegablast2002@yahoo.com 53b1c4a742 2 major bug fixes and 1 minor fix
first somehow accidentally line 3616 mtgability.cpp removefromgame was adding an observer instead of removing it, this explains "abilities sometimes acting strangely or not being removed"...I'm surprised it didn't create memleaks or extremely visible side-effects...
2nd fixed a bug where triggered abilities would share a menu with activated abilities of a card when ever you had enough mana floating to pay an activated ability before the trigger resolved.

adjust the way ai calculates if it should use cards like wrath of god, though it is still open to using it at a random chance, i noticed that the method we use might not be the best.
an ability with an eff of 1 for example actually has a 10% chance of being choosen....
lets say rng rolls 3402
when you % this it simply takes the 2 last numbers making this roll 2...meaning that unless we assign no "random chance to do blah" the actual chance of ai using a stupid ability is 10%...I'm leaving that logic how it is tho I "unfactored"(?) it to make it easier to track the numbers, also added a debug trace to help see how often we hit "lottery chance" ...
fixed a minor crash from multiability trying to fetch menutext when no abilities existed in the vector anymore.

this patch introduces a new subkeyword for "may " which is syntax pay(manacost)
auto=may pay({w}) untap
this is to allow the card group that was coded using the activated ability loophole i described at the start. it works the same way as it did with the loophole only it is actually something we want to happen instead of a flaw in the engine...you float the mana same as before and when the may line is triggered it will check if payment can be made with exist mana if so then it displays the menutext for the ability, if that ability is choosen it then charges you the mana directly before activation. 

this patch also include flip( ability, tho not intended originally for this version, I had previously had it finished and was polishing it right before I noticed the bugs above. since this keyword is not intended to add cards for this version, I wont go into massive details about it at this time.
2011-12-25 01:01:20 +00:00
techdragon.nguyen@gmail.com e308d9cd47 fixed compilation error for android builds as referenced in forums. http://wololo.net/forum/viewtopic.php?f=16&t=3366 2011-12-20 00:00:00 +00:00
jean.chalard d93fdb2d4a Fix the Linux build. 2011-12-18 09:40:35 +00:00
techdragon.nguyen@gmail.com 04f6366619 changing pragma mark directives to use cross platform comment "//MARK: "
#pragma mark is specific to XCode
2011-12-17 15:56:47 +00:00
techdragon.nguyen@gmail.com 4b137e0b6b added numeric support for iOS. Numbers were being ignored earlier 2011-12-15 17:51:29 +00:00
techdragon.nguyen@gmail.com a6b2a43188 fixed compile error. sorry, missed this one on last check in 2011-12-15 11:26:26 +00:00
techdragon.nguyen@gmail.com dc7d52c48c added new signature for SendCommand in JGE that takes in a command string and a parameter
added native keyboard handling in iOS
TODO: add same feature for Android tablets/phones
2011-12-15 11:11:08 +00:00
wagic.the.homebrew 2e3331a0c0 - Speed improvements to the filesystem (partial fix for issue 767)
- minor speed improvement in the shop (removed a locked texture loading that wasn't necessary)
2011-12-13 15:14:47 +00:00
wagic.the.homebrew 54a2f949b7 - Fix case sensitivity issue for some card sounds
- added null checks for "shadow" textures
2011-12-12 13:10:33 +00:00
wagic.the.homebrew c9fd53808f - fix compilation issue on psp
- attempt at reducing loading times on the PSP: I merged a few graphics files together, removed some unused calls from the initialization functions, and moved some other ones to have a more lazy approach. The PSP version remains fairly slow in some parts (especially loading, but also entering the shop, or starting a new game), so I will try to reduce file access as much as possible in the days to come. Not a release blocker IMO though, but I4d sure love if it were faster.
- uppercased "Track1.mp3" to be in line with the actual filename. Most likely this had been broken forever on case-sensitive OSes
- I removed costly calls from the textscroller. I believe it wasn't very useful in its previous state. Now it's only "advertising" for unlockable stuff, which I think is ok (and allows to refresh it every time the menu is loaded)
- As a counterpart, added a "% complete" progress bar in the menu, something I wanted to add a while ago.
2011-12-11 13:48:24 +00:00
omegablast2002@yahoo.com a3e101eb9c fix for issue 769, random modes including momir do not have meta data. 2011-12-10 12:56:36 +00:00
wagic.the.homebrew 2030d34643 Fix for issue 766 ("cancel" on opponent deck selection goes to the deckeditor) 2011-12-10 01:05:59 +00:00
techdragon.nguyen@gmail.com fe78345ef7 first draft of ad code for iOS. Not adding admob/adwhirl/adSesnse libs to this commit. You will need to download them to get the port to build under XCode 2011-12-08 20:50:36 +00:00
wagic.the.homebrew 69a0323c86 - Added cache for the count of AI decks, to reduce file access especially on victory screen. This fixes some massive lags on the PSP when winning a game
- bumped version number to 0.17
- removed some dead code in utils.h
2011-12-07 14:34:59 +00:00
Xawotihs 3514476812 - Created a GamePhase type to ease debug.
- Modified the testsuite and gameobserver to be able to replay all the testcases based on the actions logged during the first pass. This allows to test the action logging and replay used during undo. It's only activated in multithreaded mode and it does not work on Momir tests.
-  Modified choice logging and replay to use menuId instead of ability index, as, for some obscur reasons related to Lord, those ability indexes may change.
- Fixed bug in nextphase logging wrongly generating click actions
- Added a "stack" zone to the click ability logging to be able to replay properly interrupt
- Fixed a wonderful bug mixing card names with zone names in the actions execution engine
- Added a "combatok" action logging/execution
- Added a "clone" virtual method to MTGCardInstance and Token to be able to clone correctly the right object type. Used that in MTGGameZones::removeCard
2011-11-29 21:50:16 +00:00