Tobias Zwick
db6a31cc7a
add localized error for each player that could not be loaded ( #693 )
2013-12-18 12:47:08 +07:00
David Dormagen
078899d0a0
added safety check for when calling CreateParticleAtBone without object context
2013-12-17 22:32:02 +01:00
David Dormagen
a10c9316ef
renamed DynamicParticles* to Particles* and CreateParticleEx to CreateParticle
2013-12-17 22:32:01 +01:00
David Dormagen
02f54ba1eb
removed the legacy particle system from the engine and docs
2013-12-17 22:32:01 +01:00
Tobias Zwick
325053410f
rename script callback UpdateTransferZone to OnSynchronized ( #220 )
2013-12-17 23:16:11 +07:00
Tobias Zwick
3587c34e39
fix documentation ( #848 )
2013-12-17 22:20:26 +07:00
David Dormagen
e42450ef5b
different optimizations to particle creation
...
This patch might speed up particle creation by around 25%. See crucible review https://crucible.openclonk.org/cru/ENGINE-15
2013-12-16 17:34:15 +01:00
Armin Burgmeier
2cf11a1d6a
Pre-compute Z values before face ordering ( #984 )
...
Pre-computed floating point numbers can be safely used in the comparison
function, whereas recomputation every time the sort function is called might
lead to a crash when the computed number is slightly differently every time,
because the sort function would return different results for the same faces.
2013-12-16 11:55:29 +01:00
Armin Burgmeier
eddbbe3857
Make sure we never create mesh instances with 0 faces
2013-12-16 08:13:59 +01:00
Sven Eberhardt
09b46130a1
Fix mape build
2013-12-15 15:59:26 +01:00
Sven Eberhardt
25ddb14dca
Rework prop list renumbering on section load (again).
...
Turns out changing prop list numbers while they are still indexed by number in the hash map was a bad idea. Existing prop lists are now de-numbered, pushed to an external shelve and re-numbered when added after section load.
2013-12-15 15:46:18 +01:00
Sven Eberhardt
1cca6fd1ad
Rework section load again.
...
Now clears numbers of all existing proplists and renumbers them after loading. Fixes some assertions and duplicate numbers during loading.
2013-12-15 14:06:21 +01:00
Sven Eberhardt
4af3203840
Fix runtime error if arrow is removed in ProjectileHit.
2013-12-14 22:02:53 +01:00
Sven Eberhardt
29d1b4846a
Fix scenario sections
...
Inactive objects got removed and calling section load from global effects caused a crash.
2013-12-14 18:16:39 +01:00
Sven Eberhardt
a9a2470ace
Fix accelerator hotkeys.
...
They were broken since keys aren't passed as VK-codes but as scancodes now. Tested under Windows only.
2013-12-14 12:24:07 +01:00
Sven Eberhardt
8d1fbd1401
Fix engine internal smoke.
...
Smoke() used to create a Smoke particle directly, but the particle definitions changed. Now it just calls the global script function to create smoke.
2013-12-14 12:09:31 +01:00
Tobias Zwick
dd3de2f0c9
Merge branch 'issue-251'
2013-12-09 21:45:54 +07:00
Tobias Zwick
33f99bd361
buildfix for linux
2013-12-09 21:21:41 +07:00
Tobias Zwick
a3c641b6fc
fix error on negative timeouts in the scheduler for linux
2013-12-09 00:50:02 +07:00
Tobias Zwick
74087e2fc2
remove superfluous IsScheduledExecution
...
use C4TimeMilliseconds::PositiveInfinity instead to denote that the next tick should not be executed.
2013-12-09 00:50:01 +07:00
Tobias Zwick
b97d250aef
adapt C4TimeMilliseconds usage in C4AppGTKImpl to the infinity-usage
2013-12-09 00:49:59 +07:00
Tobias Zwick
5bcd762206
C4TimeMilliseconds returns a StdCopyStrBuf to avoid memory errors
2013-12-09 00:49:58 +07:00
Tobias Zwick
e9eea97864
make rest of the code not use C4TimeMilliseconds-pointers but instead use the infinity field.
2013-12-09 00:49:57 +07:00
Nicolas Hake
71dbd5bcfb
Use std::numeric_limits<> instead of INT32_MIN/INT32_MAX
...
We're implementing parts of <stdint.h> ourselves for old compilers, and
these macros aren't part of our compatibility interface.
Additionally, [C99 §7.18.2] (unfortunately, MSVC ignores this):
"226) C++ implementations should define these macros only when
__STDC_LIMIT_MACROS is defined before <stdint.h> is included.", which it
wasn't, so it wasn't portable in the first place.
2013-12-08 14:13:15 +01:00
Tobias Zwick
b73eabd4fd
add infinity-field to C4TimeMilliseconds, add linker error (*cough*)
2013-12-08 19:11:28 +07:00
Tobias Zwick
bdc895655d
add AsString method to C4TimeMilliseconds
2013-12-08 16:28:58 +07:00
Tobias Zwick
f5592a49e6
build fix
2013-12-08 04:05:56 +07:00
Tobias Zwick
4f416c3147
replace global function GetTime() with class function C4TimeMilliseconds::Now()
2013-12-07 21:28:06 +07:00
Tobias Zwick
fe2a400c02
replace global function GetTime() with class function C4TimeMilliseconds::Now()
2013-12-07 21:27:01 +07:00
Tobias Zwick
3c4ba7f494
do not lazy-initialize C4GUI::tLastChange time
2013-12-07 14:04:35 +07:00
Tobias Zwick
44f1887003
split up Plants library into crop (harvestable), tree (choppable) and plant (plant reproduction)
...
This should make the plants not overloaded with functionality so that odd stuff like #904 can happen. I think the plants need more cleanup still.
2013-12-05 11:23:22 +07:00
Tobias Zwick
95c3b0b75a
fix scrollbar drawing and remove code duplication ( #1004 )
2013-12-05 10:40:17 +07:00
Tobias Zwick
a54eed6b9b
add name to One Million Particles so it can be found from ingame gui
2013-12-05 10:39:45 +07:00
Tobias Zwick
9ffad10d51
add note to documentation of FinishCommand ( #390 )
2013-12-05 10:39:26 +07:00
Julius Michaelis
ebff82641c
Linux build fix for Newton
2013-12-04 19:19:33 +01:00
Tobias Zwick
554deb5273
fix zoom is reset on resizing the viewport ( #881 )
2013-12-04 23:36:27 +07:00
Tobias Zwick
57fb0b48ca
fix: on response from masterserver, also check if CSID reply is empty ( #703 )
2013-12-04 20:59:53 +07:00
Tobias Zwick
3e5268ab19
buildfix for linux (missed out on a Linux-specific StdSchedulerProc)
2013-12-04 20:47:12 +07:00
Tobias Zwick
94c618d153
add new type C4TimeMilliseconds for time measurements to solve problems when GetTime() overflows ( #251 )
...
The new type C4TimeMilliseconds behaves for the most part like a uint32_t but is overflow-proof in comparisons.
In some places, a 0-value (or uint_max) of the variable storing the time had the special meaning "not set yet". This has been resolved by having it as a pointer to C4TimeMilliseconds with NULL meaning that it has not been set yet.
2013-12-04 19:35:07 +07:00
Tobias Zwick
c03effd104
fix possible bug: pPeer->GetTimeOut() already includes GetTime() + some offset, adding GetTime() another time here is wrong.
2013-12-04 14:35:17 +07:00
Tobias Zwick
a8a8322dfb
use %u to format unsigned ints (times)
2013-12-04 12:51:46 +07:00
Tobias Zwick
7de660ba79
fix possible bug: respect iMaxTime parameter in C4NetIOUDP::Execute
2013-12-04 12:46:07 +07:00
Tobias Zwick
6116b0079c
fix link to Map scripts in documentation index
2013-12-03 12:49:47 +07:00
David Dormagen
c57929508a
dynamic particles: possibly fixed a theoretical crash when creating particles
...
(race condition between initializing the particle and executing the particle calculation/removing the particle)
2013-12-02 20:05:45 +01:00
David Dormagen
0a69450d12
dynamic particles: log missing-glPRI-warning only to log file and not player-visible output
...
The warning is nothing that should bother the average player (mainly because they possibly can't do anything against it anyway). However, it might turn out to be useful for debugging purposes.
2013-12-02 19:39:29 +01:00
David Dormagen
3c34857c0f
added particle test scenario that spawns a million particles (and heavy effects afterwards)
...
The honorable goal of the particle system should be that this scenario always runs fluently. Even though optimizing the drawing will not be possible after a certain point, the particle system should scale down the drawing automatically to allow for a fluent game.
2013-12-01 23:50:54 +01:00
Sven Eberhardt
f75424ef6c
Fix network
2013-12-01 18:14:20 +01:00
Sven Eberhardt
6407c7cd2b
Some more fixes for time_t change.
...
Some format strings had to be adjusted and clients always had ping timeout on join. Let's hope this fixes it.
2013-12-01 16:34:47 +01:00
Nicolas Hake
c3f021cc5b
dodocs: Fix another incorrect closing tag
2013-12-01 16:18:34 +01:00
Nicolas Hake
78139a9107
docs: Fix incorrect closing tag
2013-12-01 15:21:35 +01:00