Commit Graph

55 Commits

Author SHA1 Message Date
wagic.the.homebrew@gmail.com
fd8645d1a4 Erwan
- JGE updates : main accepts argv/argc. Compilation variables for MP3 and Network support
- Minor fix in Wagic (potentially fixes crashes when using activated abilities several times in onr turn. Couldn't reproduce the issue)
2010-07-11 10:56:12 +00:00
wagic.the.homebrew@gmail.com
0149512412 Erwan
- fixed bugs introduced in revision 2034 (Giant Growth)
- Extended Story mode xml: much easier to write basic thing, font selection, possibility to position answers, answers now in correct order
- moved story in the menu because it is not major for now
2010-05-06 13:47:56 +00:00
wagic.the.homebrew@gmail.com
b0e92d68a8 Erwan
-missing files (JLogger)
2010-04-26 22:47:46 +00:00
wagic.the.homebrew@gmail.com
a3cbbedd3c Erwan
- fix issue 392 (broken tests)
- Fix a bunch of memory leaks (guys please be careful!)
- Added Logging facility in JGE
- HBL Compatibility (cleaned up some code with MP3 in JGE)
- Added "winGame" ability. Currently used mostly by the story mode, but some cards could probably need it too
- Improved story mode and uncommented it from the source.
-- The current campaign is of course very basic, anybody who wants to improve it or create other ones feel free to do so
-- TODO (short term): save progress, rewards system, improve tutorial campaign
-- I'll talk a bit more about this on the forums/email after a night of sleep
2010-04-26 14:27:34 +00:00
jean.chalard
c2549af81d J :
* Make the FULLSCREEN function bindable on platforms that support it.
* Linux has F as default binding.
* Windows support is not implemented, but is there ; applications will
  just not suggest it under windows for the moment.
2010-02-28 12:31:51 +00:00
jean.chalard
4248ddd3a0 J :
* Preparation for auto-repeat-stopping code.
2010-02-25 20:00:53 +00:00
jean.chalard
79d142f968 J :
* Some cosmetic cleanup.
* Have the unix version report analog control the same way the
  windows version does.
* Move back Run() into JGE::Run(). The code for ::Run() is still
  inside main.cpp.
  - This fixes the "blinking screen problem", issue 341. I think.
  - I have no idea WHY it does, but it's better than not fixing it.
  - Run() would be better in ::Run() in main.cpp than in JGE, should
    be moved back when we know more about the problem.
2010-02-24 18:28:36 +00:00
jean.chalard
39c5a3d465 J :
* Fix u32 into JButtons.
* Add a few comments.
* Remove useless variables.
2010-02-24 17:28:17 +00:00
jean.chalard
ad933ecdf6 J :
* Change the name of a define to harmonize stuff.
2010-02-18 20:09:19 +00:00
jean.chalard
3c1377fe47 J :
* Re-add the ReadLocalKey function that I had forgotten to
  re-implement with the key bindings.
2010-02-18 07:18:21 +00:00
jean.chalard
4f0a2794d1 J :
* Remove useless, deprecated, and ill-willed files
2010-02-14 14:02:08 +00:00
jean.chalard
56ce4a14ae J :
* Create the subsystem for keybindings.
2010-02-14 13:21:12 +00:00
wagic.the.homebrew@gmail.com
3f06c9b6c9 Erwan
- put sound back on WIN32 platform (J please review)
- Added menu text for token abilities (needs testing)
2010-02-06 03:21:38 +00:00
jean.chalard
23ddb6f7e2 J :
* Add a newline
2010-02-02 10:56:45 +00:00
jean.chalard
4f0a264146 J :
* Add a method to abstract the file size.
2010-02-02 09:11:44 +00:00
jean.chalard
02e3932017 J :
* Fix linux compilation that had been broken by the last update.
2010-02-02 08:34:54 +00:00
jean.chalard
18c18822c9 J :
* This update has Wagic compile and work under Darwin 64-bits.
  - Linux 64-bits is expected to compile and work from now on, but
    was not tested. As with before, Linux 64 bits can still run
    the 32 bits version.
  - Darwin version is not using Carbon but X emulation.
  - 64-bits versions have no sound because there is no 64-bits
    version of fmod.
  - Windows 64-bits probably does not compile. Windows 64-bits can
    still run the 32 bits version.
  - Darwin 32-bits probably does not work at the moment because the
    libfmod requires another name to work on Macs, but as 64-bits
    disables it it works.
  - Other unix flavors are expected to work as long as they have
    a working OpenGL library, X11, and *either* 64-bits *or* a
    working fmod. Thus in the practice Tru64, Irix and the like
    probably work, as should FreeBSD and other BSDs in 64 bits
    versions, but 32 bits versions will search for a non-existing
    fmod. All of this is pure conjecture and none was tested.
  - All 64-bits versions have no sound.
  - The mac version does not display the particles at the moment.
    This is not critical, but the cause is unknown yet. I would
    like to know if other 64 bits unices share the same bug or if
    it is mac-specific.
* Test is needed in particular to see whether the program still
  compiles and works in Linux and PSP. Windows is probably all
  right, but compiling PSP in windows may be broken by this
  update.
2010-02-02 08:27:10 +00:00
wagic.jeck
0a863bcbad Jeck - [JGE recompile needed] Shop cleanup, Interface enhancements.
Added basic transition system that works with GameApp's phases. Currently does a fade-out between elements, which works well in some places and not-so-well in others. We'll definitely want to think about where and where not to use it... they'd work a lot better if we could spawn a thread to handle loading the next state while transitioning.

Also cleaned up the shop a bit, so it uses ReadButton() instead of GetButtonClick()-- hence the slight change to JGE. Added a tiled image for the task board, which loads conservatively (I tried 128x128, but it didn't look as good).
2010-02-01 18:27:25 +00:00
jean.chalard
e3e50c19a5 J :
* Have JGE compile on Darwin architecture.
* I'm not saying it works, just that it compiles.
* This needs testing on other macs than just mine.
2010-02-01 02:49:26 +00:00
wagic.the.homebrew@gmail.com
6e2e351239 Erwan
-fix issue 144
2010-01-07 13:56:57 +00:00
wagic.the.homebrew@gmail.com
74accec275 Erwan
- Fix issue 144 (Sound is either 0 or 100%), for PSP ONLY. The methods are now here for linux/windows, but only the music volume method will work currently, and it sets the volume globally. Patch by Yeshua with some cleanup by myself.
2009-12-12 15:10:32 +00:00
wagic.the.homebrew@gmail.com
afc08b4b6e Erwan
- fix issue 92 (purple screen). Many thanks to Yeshua and Raphael!
- Switched valloc to vram, more recent and faster.
2009-12-07 11:54:59 +00:00
wagic.the.homebrew@gmail.com
ca6f507d0a Erwan
- putting valloc.c back in the project as some persons have problem using/finding the valloc library
2009-12-06 12:38:23 +00:00
wagic.the.homebrew@gmail.com
e94bb52e35 Erwan
- adding some debugging stuff for the purple screen
2009-12-03 07:17:36 +00:00
wagic.the.homebrew@gmail.com
5eb6256df6 Erwan
-Fix issue 223 by Yeshua. Thanks :)
2009-11-29 06:25:03 +00:00
wagic.the.homebrew@gmail.com
b275b6f758 Erwan
- JGE bug fixes (network)
- increased the size of kernel ram. 2048 might bee too much though, let's see if we can go with 1024
2009-11-29 04:44:38 +00:00
wagic.the.homebrew@gmail.com
66a505969e Erwan
- fix issue 215
- added test for purple screen (this is the small white square on top of the loading screen)
2009-11-23 08:25:27 +00:00
wagic.the.homebrew@gmail.com
5b92639cca Erwan
- Translation updates
- JGE: DrawString now allows std::string objects
2009-11-01 02:52:41 +00:00
wagic.the.homebrew@gmail.com
6f159fb39c Erwan - cache fixes - Code review highly appreciated, please criticize my code!
- fix issue 65 (quads when no image  load slowly in shop/deck editor)
- Possibly fix issue 92, please let me know if it reproduces
- Fix issue 97 (Deck editor: weird behavior of deck display)
- Fix issue 39 - please verify
- Issue 56 can probably be closed as well
- Fix issue 86
2009-10-13 14:16:30 +00:00
wagic.the.homebrew@gmail.com
888edfd5b8 Erwan
-more JGE cleanup
-removed calls to BindTexture that were made out of the Render methods. Please let me know if this has side effects (and let's discuss it in that case)
-Still no luck with the purple screen bug :(
2009-10-03 08:50:44 +00:00
wagic.the.homebrew@gmail.com
924574b0a1 Erwan
- Some cleanup in JGE
2009-10-02 14:33:05 +00:00
wagic.the.homebrew@gmail.com
e7cd458b6b Erwan
-fix issue 85 (simpleMenu limitation) - this requires to recompile JGE
2009-10-01 14:06:47 +00:00
wagic.jeck
d55fc91112 Jeck - [Requires JGE rebuild] Extensive cache improvements.
* Numerous cache fixes, reduced filesystem access.
 * Cache fails very gracefully. 
 * Cache is now a templated class, with individual caches per data-type.
 * Much easier to extend.
 * Extensively debugged. Try compiling with -DDEBUG_CACHE.
 * Caches limits can be set on a per-item basis.
 * hgeParticleSystemInfo are now cached, mana particles now fall back to defaults.
 * Samples are not cached, but track filesystem misses using the cache backbone. 
 * Avatars are cached. Default baka avatar is now baka.jpg, to prevent collision with player.

A note on the retrieval types: 
  RETRIEVE_MANAGE puts a resource into a seperate, managed resource list.
    Managed resources are guarenteed valid for the lifetime of the program. 
    Retrieving a managed quad promotes the associated texture to managed. Don't do that by mistake.
    Calls to Resources.Refresh() will attempt to reload managed resources in place.

  RETRIVE_LOCK (and by extension, RETRIEVE_VRAM), returns a resource after locking it.
    A resource may have many locks, and remains in cache until they are all released. 
    If the resource is managed, it returns it unmodified.

A note on quads:
Unlike all other RetrieveWhatever() functions, the default behavior for RetrieveQuad is RETRIEVE_LOCK. Worse, Release(JQuad*) is slow, and will /always/ release one lock from the associated texture.   

There's a long and complicated explanation for this, involving support for live relinking of textures to existing quads, but basically what it means is that we only use RetrieveQuad for quads we intend to store and later Release(). If a temporary quad is needed, the preferred method is to use NEW JQuad* and SAFE_DELETE with RetrieveTexture(). RetrieveTempQuad is also provided, but is only guaranteed until the next call to the cache.

Note that RetrieveCard has none of these problems.
2009-09-14 08:28:49 +00:00
jean.chalard
44738399dc J :
* Make the SAFE_DELETE syntactically safe.
2009-09-05 11:34:51 +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
3639ac291f J :
* Make it so that we do not crash trying to play an MP3 that failed
  to load.
2009-06-11 14:47:21 +00:00
jean.chalard
c1565450e5 J :
* Add ostream op
2009-06-11 13:55:03 +00:00
wagic.laurent
31d9f87554 Applying Orine Patch - Works perfect. Great addition. 2009-06-08 22:34:54 +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
jean.chalard
215e23a975 J :
* Add some printing capability.
2009-05-23 08:33:28 +00:00
jean.chalard
10aa8e32d9 J :
* Write preliminary thread creation functions for Linux.
* Debug the Makefile
2009-05-23 04:44:44 +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
wagic.the.homebrew@gmail.com
f32f5f3793 Erwan
- Crude networking functions:
+ Basic message works on Windows
+ Compiles on PSP but doesn't work yet
+ Nothing done for Linux -> TODO!
2009-05-18 11:22:53 +00:00
wagic.the.homebrew@gmail.com
387c75e16d Erwan
-Improved JGE texture loading, improved Wagic cache
- Jge small changes in mp3 methods
2009-04-09 13:31:07 +00:00
jean.chalard
1cbf9c32e9 J :
* Fix a macro that was missing parentheses.
2009-01-18 14:12:09 +00:00
jean.chalard
45e143dd0c J :
* Clean carriage returns.
2009-01-01 23:27:32 +00:00
jean.chalard
886507c525 J :
* Restore the behavior of GetButtonClick, which had been made so that it
  would miss more clicks than it should.
2008-11-25 15:35:01 +00:00
jean.chalard
d7ea37233c J :
* Key buffer update : Add functions & clean the file
2008-11-21 14:13:01 +00:00
wagic.the.homebrew
349de34106 Erwan
- Fixed MP3 play bug on the psp. MP3 files need to have NO Id3v2 tag, or they won't play. Also, volume control is broken
- added dt to moving W's easter egg movement.
- Added fullscreen for windows version
- other stuff ?
2008-11-19 12:21:23 +00:00
wagic.the.homebrew
37220f9e24 Erwan
- fixed a few warnings with the PSP compilation
- changed definition of DWORD to unsinged int rather than unsigned long for PSP
- fixed make 3xx. the call to "which" in the makefile still needs to be corrected with a DOS compatible call
2008-11-10 11:07:33 +00:00