1
0
forked from 0ad/0ad
Commit Graph

205 Commits

Author SHA1 Message Date
pyrolink
10d84599e9 This was SVN commit r3507. 2006-02-13 03:32:15 +00:00
0fa0bfcb28 ConfigDB.cpp: fix vfs_load return value check
baseentity, entity: remove multiple property adds (source of
scriptablecomplex memory leak)
scriptablecomplex: add code to check for leak regression and prevent
them; add suballocator for properties, since 60k are allocated in a
short while (!) - saves time and memory

This was SVN commit r3429.
2006-01-28 22:21:54 +00:00
7838627cd2 - vfs_load now returns error code and takes FileIOBuf; that must be freed via file_buf_free. if Handle is needed, use mem_wrap.
- remove ScEd hacks and CFont et al macro rename
- fix accursed bug in VFS buffer management that was causing ReadFile to
fail without error (not allocating enough padding)
- vfs_tree: bugfix in tree_lookup
- waio: temporarily disable sector size determination (pending better
approach - need to determine if using DVD drive)

This was SVN commit r3421.
2006-01-24 08:16:29 +00:00
c4aea4eb62 Health regen fix for ranged attack.
This was SVN commit r3411.
2006-01-23 03:56:48 +00:00
a0936ede65 Fixes to the melee/ranged attack split.
This was SVN commit r3403.
2006-01-22 11:55:16 +00:00
pyrolink
c03cdd6a23 This was SVN commit r3402. 2006-01-22 11:09:13 +00:00
pyrolink
c6620bb358 Range and melee attack split up.
This was SVN commit r3396.
2006-01-22 08:53:35 +00:00
1290c3dcfd Fixed bug with pathfinding during a contact action on Linux.
This was SVN commit r3388.
2006-01-22 01:17:58 +00:00
5ac92a3302 Advance water in sync with simulation and unit animations (so it stops when the game is paused).
Other miscellaneous tidyings.

This was SVN commit r3386.
2006-01-21 23:27:42 +00:00
pyrolink
5d4ec7f4bb Health regen, run bugfix
This was SVN commit r3382.
2006-01-21 11:17:15 +00:00
c2c5e87c61 Removed references to the old attack, gather, heal and damage events (that were no longer used).
This was SVN commit r3375.
2006-01-20 21:38:58 +00:00
pyrolink
1175b5cdba Stamina bars, run order
This was SVN commit r3364.
2006-01-16 10:56:47 +00:00
pyrolink
b781c898df Fixed ugly run bug
This was SVN commit r3349.
2006-01-10 04:39:11 +00:00
pyrolink
19b33141c1 Fixed up running and notifications.
This was SVN commit r3341.
2006-01-08 08:25:11 +00:00
b889826a3d Some Linux compile fixes over the place.
Create TerrainRenderer, ShadowMap and WaterManager classes to divide
CRenderer's functions into more logical units.

This was SVN commit r3332.
2006-01-07 01:04:26 +00:00
pyrolink
2d8f45fd94 Added run order (if applicable, the unit will use the run animation and speed for movement, otherwise walk is used). If the unit's run speed is more than 0 and the target is within the run action's range, it will run instead of walk.
Notifications - called from javascript.  You request orders with a
target entity, order type, and whether the previous listeners you have
requested for this entity should be destroyed.  When the target entity
processes an order that was requested, that order is pushed onto the
queue of the requester.  This is useful for things such as follow that
require the actual order to perform the action.

This was SVN commit r3329.
2006-01-05 06:13:31 +00:00
0a3e9ec537 - Added pause game functionality.
- Removed CDamageType from the engine - damage is now handled only
within the entity script (easier to mod/modify).

This was SVN commit r3325.
2006-01-02 03:07:29 +00:00
fce3b183bb This was SVN commit r3311. 2005-12-29 09:12:54 +00:00
4a40baef33 Generic orders source commit. Also includes a fix to the animation bug where one frame of "idle" is played at the end of each cycle, and an enhancement to the entity script loading code to only load each script file once, which should save loading time and also allow script files to behave in a more logical way (e.g. no redeclaration errors when you have a constant).
This was SVN commit r3309.
2005-12-29 08:42:44 +00:00
pyrolink
2d57e13eb5 (see EntityManger.cpp log)
This was SVN commit r3304.
2005-12-29 04:58:41 +00:00
pyrolink
e968bd91ed Actual death flag and CHandle entity handle retrieval.
This was SVN commit r3303.
2005-12-29 04:57:02 +00:00
pyrolink
79ecda1ecf Commented out notifications and death flag set during kill().
This was SVN commit r3302.
2005-12-29 04:56:15 +00:00
pyrolink
69acf1c68c Commented out notifications.
This was SVN commit r3301.
2005-12-29 04:55:16 +00:00
709d1389da Removed a compile warning and changed scheduler's "tasks to cancel" set to a hash set.
This was SVN commit r3273.
2005-12-18 07:41:02 +00:00
5e0e3c32f3 Added support for cancelling a timeout or interval set using setTimeout/setInterval, which is used by the infidelity aura.
This was SVN commit r3272.
2005-12-18 07:33:16 +00:00
3ea5fa5b46 Lots of fixes for the Linux build:
- renamed sysdep/unix/ functions where necessary
- more int -> LibError conversions in the sysdep/unix/ part
- added some explicit #include statements where necessary
- moved enum LibError/ErrorReaction declarations
  (gcc doesn't support forward enum declarations)

This was SVN commit r3267.
2005-12-17 22:00:54 +00:00
45255d3f37 Added a "collision patch" system that groups entities into a grid on top of the map to make aura checking and collision detection faster.
This was SVN commit r3253.
2005-12-16 05:35:26 +00:00
2300a81070 C++ code changes for new entities (mostly referring to the right new properties or XML attributes in CEntity.cpp and CBaseEntity.cpp).
This was SVN commit r3249.
2005-12-15 21:59:48 +00:00
d939a006ae Added C++ code for auras. Some things that still need to be implemented are:
- Times on auras (a unit must be in range for X seconds for the aura to
start affecting it)
- An efficient GetInRange implementation in CEntityManager using a
quadtree or something of the sort (current one is linear in the number
of entities).

This was SVN commit r3238.
2005-12-13 08:05:30 +00:00
8cbf23f123 Fixed a bug with projectiles trying to hit non-extant entities.
This was SVN commit r3232.
2005-12-11 23:28:50 +00:00
bc23379066 Fixes to entity death and event handling, plus some updates to RmGen.
This was SVN commit r3226.
2005-12-11 02:09:11 +00:00
pyrolink
4f6dafd82a Added heal
This was SVN commit r3221.
2005-12-10 19:39:17 +00:00
bd2c1d73a3 Terrain, Interact, LOSManager, Atlas, etc: Fixed some off-by-one and off-by-FLT_EPSILON problems with objects near/off the edge of the map. Also changed some model.GetBounds().GetCentre() into model.GetTransform().GetTranslation() to fix off-by-centre-of-bounds-minus-position problems. Thus, you can no longer make units in Atlas disappear off the edge and never be seen or selected again. Also changed out-of-bounds LOS value to make them visible if they somehow escape anyway. Also fixed out-of-bounds access of terrain heightmap.
MapReader: Tidied usage of Xeromyces.
Projectile: Avoided warnings.

This was SVN commit r3212.
2005-12-09 01:08:08 +00:00
5250814397 Atlas: Fixed entities-don't-move-when-terrain-is-altered. Unbroke and fixed entity memory management. Added flatten tool. Added object movement/rotation/deletion tool - but not yet finished, since 'redo' usually crashes (for known reasons).
This was SVN commit r3207.
2005-12-08 02:50:55 +00:00
a5d1968a8c ProfileViewer: Fixed char* vs wchar_t*.
Quaternion: Removed operator- since it doesn't seem geometrically
sensible for rotation-quaternions. Added ToAxisAngle but don't actually
use it anywhere.
GameView: Changed unit-view to look slightly more correct.

This was SVN commit r3201.
2005-12-06 20:16:50 +00:00
pyrolink
74f8d8c213 Bug correction for heal action.
This was SVN commit r3193.
2005-12-06 06:41:47 +00:00
547293ee49 Atlas: Vaguely usable object placement code. Bug fixes.
This was SVN commit r3186.
2005-12-02 21:08:10 +00:00
b417951ef8 (Oops, committed inconsistent code)
This was SVN commit r3164.
2005-11-20 00:52:41 +00:00
41ae0f9a44 Various hacks to make ScEd work. Should be removed once ScEd is no longer needed.
This was SVN commit r3162.
2005-11-20 00:41:45 +00:00
81eec3aa10 fix build breakage (baad!):
EventTypes.h: was missing comma. also insert onHeal string since that
array seems to depend on index values matching the enums (would be a
very insidious error!)
entity/entityorders: fix typo - ORDER_HEAL_NOTPATHING ->
ORDER_HEAL_NOPATHING
eventhandlers: was missing semicolon

This was SVN commit r3133.
2005-11-13 23:29:56 +00:00
pyrolink
9cf709ff5a Added entity heal capabilities/
This was SVN commit r3127.
2005-11-13 06:42:12 +00:00
d51f4900d8 Don't crash when units are hanging over the edge of the map
This was SVN commit r3119.
2005-11-08 22:52:55 +00:00
d64561d18d minimap: fix issue where changes to terrain might not be noticed
losmanager: only comment out timer_accrue

This was SVN commit r3105.
2005-11-06 04:22:47 +00:00
db67607f62 Patch vertex buffers are marked as dynamic now, since they're changed every
frame for LOD (in the long run, try splitting them into dynamic and
non-dynamic parts).
Also, using TIMER_ACCRUE in an inner loop isn't such a good idea ;)

This was SVN commit r3104.
2005-11-06 04:16:19 +00:00
6668ad6e1c CTerrain, Brushes: made CalcFromPosition static and added float x,y overload
minimap, PatchRData, renderer: fix ELOSState comparison vs & and use
SAFE_DELETE
ia32: add rounding control constants (for FISTP)
premake: set /QIfist compiler setting which causes float->int casts to
go through FISTP instruction instead of _ftol2() (much faster, but
requires CPU state to have been set)
LOSManager.cpp: cache m_TilesPerSize; use MIN/MAX; use
CTerrain::CalcFromPosition; clean up GetUnitState a bit. now runs at
203ns, down from 222

This was SVN commit r3099.
2005-11-06 01:33:16 +00:00
82bdda29ef GameView: revise usage of LOS_VISIBLE - must check bit, not equality
ia32: removing misleading and outdated comment
Player: add "LOS token" - speeds up LosManager by caching a temp result
LOSMAnager: speed up by about 9%, more to come. combined 2 DWORDs into
one u16; further optimization pending. old code remains (via #ifdef
frankenstein)

This was SVN commit r3097.
2005-11-06 00:07:01 +00:00
139c48e733 Removed TickAll of entities, for performance
This was SVN commit r3095.
2005-11-05 23:10:54 +00:00
a1cddc4ac3 gameview, renderer: LoadWaterTextures is now a coroutine because it takes friggin forever (3 seconds). VFS performance is down by a factor of ten! investigating is on todo.
dyn_array.h -> allocators.h
ogl_tex: reenable performance warning
tex: comments
h_mgr: debug_printf if long filename is passed in (so we notice)
wsdl: squelch DestroyWindow warning. will look into the cause.
sysdep: slightly simplify "restrict" determination

This was SVN commit r2916.
2005-10-12 17:19:07 +00:00
3c2d38502c dyn_array: added matrix allocator for convenience. renamed to "allocators.cpp" (now contains several of them)
LOSMananager: uses matrix allocator; free them in dtor

This was SVN commit r2914.
2005-10-12 15:51:26 +00:00
1b59f4c56e Keep renderer in sync with simulation when running too slowly for the sim to keep up
This was SVN commit r2895.
2005-10-10 19:49:02 +00:00