Commit Graph

2234 Commits (35f31a7c1d402c6f0a4c2711b147374b96f146ec)

Author SHA1 Message Date
Nicolas Hake 35f31a7c1d win32: Manually generate manifest to indicate Win7 compatibility
Telling Windows that we support Windows 7 means it will stop catching
unhandled exceptions that occur in a callback from kernel mode, and
allow our own crash handler to catch then.
2013-11-10 19:22:26 +01:00
Tobias Zwick ddf8b181a1 sound system now clears its sound instances in the main game loop while in the startup gui (#818) 2013-11-11 00:56:40 +07:00
Sven Eberhardt 395f4c94b0 Reset gamma ramps after game (#842) 2013-11-09 17:11:29 +01:00
Martin Plicht 60bafd6b3b Change remaining #ifdef USE_GL blocks into #ifndef USE_CONSOLE blocks (this makes Linux version work again) 2013-11-09 00:20:14 +01:00
Nicolas Hake f0550c45b4 GetResStr: Match lines nongreedily (#993)
With greedy matching enabled, . (dot) would also match newlines.
2013-11-08 01:11:16 +01:00
Tobias Zwick 8da7c6b20f add internationalization for responses from the masterserver/league server 2013-11-06 13:35:27 +07:00
Martin Plicht a599974a9b mac: Use OSX Mavericks occlusionState API to test whether window is visible and needs drawing or not (should still work on Mountain Lion due to runtime check for API availability) 2013-11-03 11:44:20 +01:00
Martin Plicht 59742510d9 linux/mac: Fix compilation after D3D removal 2013-11-03 11:44:20 +01:00
Tim Blume 240193ad5a Remove remains of Direct3D support
Direct3D hasn't worked for more than a year now, and there don't seem to
be any efforts to revive it. Remove it and concentrate on better OpenGL
support.
2013-11-02 21:39:34 +01:00
Nicolas Hake 1204d7d2d9 C4Aul: Fix broken reload from incorrect par count
When reloading a function, C4AulParse didn't reset the parameter count.
This resulted in the function's ParCount to eventually increase above
C4AUL_MAX_Par, at which point parameter type checking would access
invalid memory.
2013-11-02 13:40:33 +01:00
Nicolas Hake 003f897cbe C4AulFunc: Improve const correctness 2013-11-02 13:40:33 +01:00
Nicolas Hake 82b15553a1 C4AppGTK: Avoid SEGV on quit during initialization
When C4AbstractApp is destroyed, it will try to reset the current
video mode. This includes switching off the fullscreen flag of the
render window. When no render window has been created yet, for
example during the application initialization phase, this led to a
null pointer dereference due to a missing check.
2013-10-31 23:27:52 +01:00
Nicolas Hake 8d8f0396b6 Move system string table to C4LangStringTable
libc4script requires the system string table, but doesn't require the
full-fledged C4Language. Move the table to C4LangStringTable to reduce
dependencies.
2013-10-29 21:36:38 +01:00
Nicolas Hake 4ebf67754c Move C4ComponentHost::LoadEx to C4Language
To make C4ComponentHost more reusable, move C4Language dependencies out
of the class.
LoadEx isn't really suited to reside in C4Language, but it's better to
have it there, since all C4Language consumers also use C4ComponentHost;
the reverse isn't true.
2013-10-29 21:32:21 +01:00
Nicolas Hake 924e0538fc Fallback to Boost.Regex if <regex> is broken
A large number of g++ versions ship a <regex> that declares all of the
required functions, but don't actually implement them, making using them
result in a linker error.

Fallback to Boost.Regex if the host C++11 <regex> implementation is
broken; the interface is the same anyway, only differing in the
containing namespace.

Unfortunately, Boost.Regex is not a header-only library, but this is not
a big deal because all major Linux distributions ship it, and Visual
Studio implements <regex> since 2010 (the oldest version we still
support).
2013-10-29 16:59:38 +01:00
Nicolas Hake e753bf8168 Replace ResTable with a proper dictionary
ResTable (the main system string table) was a home-grown hashmap that
did not cope with collisions at all. Since we already have a proper
dictionary in C4LangStringTable, use that instead.
2013-10-19 19:28:54 +02:00
Nicolas Hake 3e29dbea57 Dynamic particles: skip calculations and rendering when headless
Particles are not required for synchronicity in network play, so we can
skip all calculations concerning them in headless mode.
2013-10-18 22:30:03 +02:00
Nicolas Hake 02f425d30b C4FontLoader: minimize footprint when headless
There's no need to do font loading and layouting when we're not going to
render it anyway.
2013-10-18 22:30:03 +02:00
Nicolas Hake c55888f7c3 CStdFont: Encapsulate iLineHgt 2013-10-18 22:30:02 +02:00
Nicolas Hake 7ffa636540 C4Object: Don't do any drawing calcs when headless
There's no point in calculating render positions or audio source
locations when we're not rendering any audio or graphics. Skip it when
headless to save CPU cycles.
2013-10-18 22:30:01 +02:00
Martin Plicht b6a01b62aa Fix mape compilation failure due to C4AulDebug changes 2013-10-17 01:23:33 +02:00
Martin Plicht 608f23ece6 debugger: C4AulDebug: Do not call Execute on each DebugStep call 2013-10-16 13:43:02 +02:00
Martin Plicht 788ffdd93c C4ScriptStandalone: Fix compilation (C4AulDebug changes) 2013-10-14 07:21:34 +02:00
Martin Plicht 0fd9ebc2ed debugger: Ignore active breakpoints when no peer connected 2013-10-14 07:12:44 +02:00
Martin Plicht a1cf73634c mac: Flip y coordinate of definition dragging location 2013-10-13 23:07:56 +02:00
Martin Plicht 91f8d32d69 debugger: Make it work again (some issues remaining, setting breakpoints on included scripts is questionable and listener socket setup sometimes hangs..) 2013-10-13 23:03:25 +02:00
Martin Plicht d164a2d50a C4Value: Implement some crude infinite recursion guard which happens solely inside C4Value::operator== 2013-10-13 11:55:01 +02:00
Maikel de Vries 12f677f96e Fixed MAPALGO_Lines, added MAPALGO_Rotate constant, fixed documentation 2013-10-13 10:28:13 +02:00
Sven Eberhardt bd103481e8 Fix crash when ATTACHed object detaches in Enter/Exit call. 2013-10-12 23:36:42 +02:00
Sven Eberhardt 8cf8ad00e5 Added MAPALGO_Lines.
This might make life easier for people who transition from Landscape.txt.

For new maps, lines should probably better be drawn using MAPALGO_Poly in a loop. This gives you more control over individual line widths, angles, etc.
2013-10-12 19:28:22 +02:00
Martin Plicht b89d505457 dynamic particles: Fix last commit
Remove explicit inherited destructor call
	Thread stopping in C4DynamicParticleSystem destructor seems more sensible
2013-10-12 00:34:21 +02:00
Martin Plicht 3f356031b8 dynamic particles: CalculationThread destructor calls DynamicParticles.CalculateNextStep() to make the thread code waiting on the internal event object come to an end 2013-10-12 00:12:30 +02:00
David Dormagen 23a3abe01e CreateParticleEx: added "amount" parameter
fixed some minor documentation errors (mainly links)
2013-10-10 17:19:20 +02:00
David Dormagen 7ffa7e2ed9 dynamic particles: fixed incorrect copying of union 2013-10-09 01:49:10 +02:00
David Dormagen fc3aaab835 dynamic particles: more code cleanup and fixes 2013-10-09 01:29:12 +02:00
David Dormagen f5ad59382d dynamic particles: some code cleanups 2013-10-08 00:08:15 +02:00
David Dormagen dc574ff76b dynamic particles: use event based waiting in favor of Sleep() 2013-10-07 23:37:01 +02:00
David Dormagen 21c387fbd2 dynamic particles: PV_KeyFrames all other values for smoothing than "0" are currently not functional 2013-10-07 20:56:57 +02:00
David Dormagen 82f68db9a8 dynamic particles: removed the size-parameter of CreateParticleEx 2013-10-07 20:56:57 +02:00
David Dormagen 01bf846eb2 dynamic particles: changed nested value providers to use member pointers instead of direct pointers; not allow size of 0 2013-10-07 20:56:56 +02:00
David Dormagen beaa394b1d dynamic particles: value provider functions can now be nested 2013-10-07 20:56:56 +02:00
David Dormagen 9ea484f027 dynamic particles: fixed wrong particle color for constant colors 2013-10-07 20:56:55 +02:00
David Dormagen 564b722720 dynamic particles: fixed calculation of collision vertex and allow CollisionVertex=0 2013-10-07 20:56:54 +02:00
David Dormagen 0282ca0bd7 dynamic particles: fixed default value of Stretch 2013-10-07 20:56:53 +02:00
David Dormagen 1cb2296a37 dynamic particles: added on collision functions PC_Die and PC_Bounce 2013-10-07 20:56:53 +02:00
David Dormagen 85e0d9788a dynamic particles: added property CollisionVertex 2013-10-07 20:56:52 +02:00
David Dormagen 9753b48f7e dynamic particles: now respect particles' aspect ratio; added PV_Speed, added property Stretch 2013-10-07 20:56:51 +02:00
David Dormagen 2e2c40db07 dynamic particles: added phase property; added parameters to PV_Step; objects now draw their particles correctly; fixed PV_Random 2013-10-07 20:56:51 +02:00
David Dormagen ba41d77e0b dynamic particles: added BlitMode property (supports additive and 0) 2013-10-07 20:56:50 +02:00
David Dormagen e43b9d4fee dynamic particles: added rotation property
added PV_Step and PV_Direction
2013-10-07 20:56:50 +02:00