Commit Graph

1980 Commits

Author SHA1 Message Date
Oliver Brakmann
6fca67e7f6 Merge pull request #7664 from penev92/bleed_harvesterInsurance
Implement Carryall edge spawn, harvester delivery by carryall and harvester insurance for D2k
2015-03-25 20:03:00 +01:00
RoosterDragon
777a57af62 Lazily generate frozen actor renderables.
Previously actors that could be frozen under fog but were currently visible would be rendered by the frozen under fog system constantly in order to keep a copy of the renderables ready to go for the frozen counterpart when the actor became invisible. Instead, we now delay this extra rendering until the actor actually becomes invisible. This eliminates the wasted rendering to generate renderables that were never used.
2015-03-24 21:08:27 +00:00
abcdefg30
f84882ce9c Replace spaces with tabs 2015-03-23 17:27:53 +01:00
penev92
0d05fb5326 Implement FreeActorWithDelivery to enable off-map harvester delivery
Fix FreeActorInfo fields descriptions
2015-03-22 17:00:57 +02:00
Paul Chote
bcc3aefaa7 Merge pull request #7702 from abcdefg30/tscrash
Fix a crash in UpgradeActorsNear.cs
2015-03-22 13:58:05 +00:00
Paul Chote
8fd4eca2da Merge pull request #7560 from RoosterDragon/let-it-go
Speed up frozen actor updates & prevent flicker
2015-03-22 13:52:33 +00:00
abcdefg30
5d7f6081e4 Fix a crash in UpgradeActorsNear.cs 2015-03-21 22:51:25 +01:00
Oliver Brakmann
919c0fd359 Merge pull request #7638 from pchote/infantry-body
Decompose RenderInfantry into WithInfantryBody and RenderSprites.
2015-03-21 15:22:53 +01:00
Paul Chote
4ea55809ca Decompose RenderInfantry into WithInfantryBody and RenderSprites. 2015-03-21 13:04:17 +00:00
Paul Chote
fa0264a73c Fix WithDeathAnimation dependency. 2015-03-21 13:04:16 +00:00
penev92
328e329fe7 Disallow sound/radar notifications for neutral actors via a configurable field on the trait 2015-03-21 12:03:41 +02:00
penev92
1b616123ef Introduce INotifyDiscovered interface and use it to move notifications from EnemyWatcher to AnnounceOnSeen 2015-03-21 07:53:41 +02:00
abcdefg30
a249302b6b Allow the use of race variants in "StartGameNotification:" 2015-03-20 14:52:58 +01:00
RoosterDragon
c3531d6f70 Avoid duplicated frozen visibility checks.
The FrozenUnderFog.Tick method will now reuse the calculation do by the frozen actor when it had to calculate its visibility, this prevents it having to re-do the fairly expensive visibility calculation.
2015-03-19 17:30:40 +00:00
RoosterDragon
1515ac54f6 Enforce a line length limit. 2015-03-19 17:20:34 +00:00
WolfGaming
c460906ed5 Added refund tooltip. 2015-03-19 05:53:51 +00:00
Matthias Mailänder
16ff6e2112 Merge pull request #7561 from RoosterDragon/fast-map-border-shroud
Speed up map border shroud & fix viewport visible cells
2015-03-18 06:36:45 +01:00
Oliver Brakmann
e4ef1eb820 Merge pull request #7626 from Mailaender/ts-radar-dishes
Fixed Tiberian Sun radar dishes
2015-03-16 18:37:59 +01:00
reaperrr
a14bf8622f Merge pull request #7570 from Mailaender/mods-common
Moved more traits to Mods.Common
2015-03-15 19:53:13 +01:00
Matthias Mailänder
737a0e0b67 move common traits 2015-03-15 18:25:28 +01:00
Taryn Hill
fcb2141132 EmitInfantryOnSell now checks a Races string[] against the seller’s race. 2015-03-14 15:54:26 -05:00
Oliver Brakmann
863db5a42c Merge pull request #7640 from Phrohdoh/rand-dmg-sounds
SoundOnDamageTransition to use string[].
2015-03-14 12:39:20 +01:00
Taryn Hill
1e0612ddf0 Change SoundOnDamageTransition to randomly select
from a string[] instead of a single string.
2015-03-12 16:09:11 -05:00
Taryn Hill
602de0ea13 Fix NRE caused by checking the RampType of a tile in #7645. 2015-03-12 09:11:51 -05:00
Matthias Mailänder
fa4f43b750 account for initial health 2015-03-11 23:18:03 +01:00
Taryn Hill
a744900e74 Mark ramp/slope tiles as unbuildable. 2015-03-11 16:30:55 -05:00
Taryn Hill
51e470e64c Add some documentation to support powers. 2015-03-10 00:13:24 -05:00
Oliver Brakmann
190d197613 Merge pull request #7544 from delftswa2014/bugfix/sam_site_friendlyfire
Friendly fire fixes and sam sites
2015-03-08 16:16:14 +01:00
penev92
4a5b3b59ed Properly remove worms from the world 2015-03-08 15:01:40 +02:00
penev92
58ab28206f Fix multiple notifications in multiplayer bug 2015-03-08 15:01:38 +02:00
penev92
1261fd1b07 Increase NotificationInterval to 30 seconds 2015-03-08 15:01:36 +02:00
pevers
17fec82348 fixed taking over sam/pillbox/etc. to stop firing
fixed issue with powered down samsites

more optimization

very small optimization

undo changes to powerdown samsite fixes

refixed powered down sam sites

removed debug line

redid the fix in another approach by queueing a sell activity on the top of the queue. This was already present but didn't always work

fixed line I removed

prevented attack activity to be queued when actor is disabled

another style fail of me

reverse and queueactivity activities are now executed on top of the queue for a sell action
2015-03-04 18:13:33 +01:00
Taryn Hill
d6da7d54e4 Make Exit’s descs more informative. 2015-03-04 09:15:09 -06:00
Paul Chote
8c4ea20636 Merge pull request #7430 from Rydra/upstream/pf-optimized
[Discussion PR] Complete refactor of Pathfinder
2015-03-03 19:50:25 +00:00
David Jiménez
54ae572303 - Introduced Unit Testing capabilities to the PathFinder trait and algorithm.
Introduced also a small Unit test project to prove it.

- Separated caching capabilities from PathFinder class to increase cohesion and maintainability.
Refactored the pathfinding algorithm by extracting methods based on responsibilities like
calculating costs and reordering functions. These changes should provide a in average a small increase in
pathfinding performance and maintainability.

- Optimized the pathfinder algorithm to reuse calculations like the
MovementCost and heuristics.

- Introduced base classes, IPathSearch and IPriorityQueue interfaces,
and restructured code to ease readability and testability

- Renamed the PathFinder related classes to more appropriate names. Made the
traits rely on the interface IPathfinder instead of concrete PathFinder
implementation.

- Massive performance improvements

- Solved error with harvesters' Heuristic

- Updated the heuristic to ease redability and adjustability. D can be
adjusted to offer best paths by decreasing and more performance by
increasing it

- Refactored the CellLayer<CellInfo> creation in its own Singleton class

- Extracted the graph abstraction onto an IGraph interface, making the
Pathfinder agnostic to the definition of world and terrain. This
abstraction can help in the future to be able to cache graphs for similar
classes and their costs, speeding up the pathfinder and being able to feed
the A* algorithm with different types of graphs like Hierarchical graphs
2015-03-03 20:11:11 +01:00
Paul Chote
b7a98c8eb7 Document the other Transforms trait properties. 2015-03-03 18:45:45 +00:00
Paul Chote
59d06a22bf Change "Cannot deploy here" to a notification. 2015-03-03 18:45:44 +00:00
Paul Chote
7b27b803f9 Allow actors to force a specific race variant. 2015-03-03 18:45:44 +00:00
Paul Chote
d1ed1bf0fb Set actor race (and icons) based on active producer. 2015-03-03 18:45:44 +00:00
Paul Chote
44159ecdd6 Add support for race-specific actor sequences. 2015-03-02 20:46:24 +00:00
Paul Chote
00a2146299 Adjust GetImage plumbing in preparation for race-specific sequences. 2015-03-02 20:46:24 +00:00
Paul Chote
f606a1bfd7 Use a consistent set of arguments for Render* ctors. 2015-03-02 20:46:23 +00:00
Bynnar18
0abe8f9b2b Fixes issues with support powers and adds property to all IOrderGenerator classes to determine priority over selection in the left-click order scheme. 2015-03-01 14:58:19 -06:00
Bynnar18
7b46b76329 Fixed left-click orders and implemented a selection deadzone. 2015-03-01 14:58:19 -06:00
Bynnar18
36d59d6b1d Restored faulty left-click logic for now. 2015-03-01 14:58:18 -06:00
Oliver Brakmann
92101a1393 Merge pull request #7487 from abcdefg30/changealtitude
Change the plane altitude in ra
2015-02-28 19:49:39 +01:00
RoosterDragon
d3b93345b4 Fix Viewport.VisibleCells.
Reworked the visible cells calculation to ensure the visible region is actually minimal, which should reduce the amount of rendering to be done by a small amount. Previously, the region would tend to overdraw by 2-3 cells in either direction. For isometric maps, there was also a bug where it would draw far too much vertically above the top of the map.
2015-02-28 13:36:58 +00:00
RoosterDragon
803390c68e Speed up rendering map border shroud when no shroud is visible.
When the map border shroud must be rendered, but no cells at the border are visible, then we know that no shroud will be visible at all. We can bail from rendering early in this case.
2015-02-27 20:07:32 +00:00
RoosterDragon
6baa35a763 Adjust DisabledOverlay.ModifyRender to be more efficient.
When not disabled, ModifyRender doesn't actually alter the sequence, so we can just return it directly and avoid adding another layer of enumerable. If it is disabled, then the modifying enumerable has one less condition to check inside the loop.
2015-02-26 21:58:29 +00:00
David Jiménez
8659a3e71e Introduced the interfaces IActor, ICacheStorage, ILog, IMap, IWorld a
nd IMobileInfo to separate concrete implementations and abstractions
2015-02-22 23:14:12 +01:00