Commit Graph

18226 Commits

Author SHA1 Message Date
Pavel Penev
8f42cff550 Introduce PlugsInit 2015-09-02 16:13:23 +03:00
Pavel Penev
c4bf92870b Merge pull request #9083 from Mailaender/lint-cleanup
Cleaned up the ILint boiler plate code
2015-09-02 15:49:43 +03:00
Pavel Penev
59aded844f Merge pull request #9204 from reaperrr/bleed-rendertweaks1
Fix TD tower selection boxes and improve TS sequence offsets
2015-09-02 15:45:31 +03:00
Pavel Penev
8fbe35d156 Merge pull request #9228 from penev92/buildFix
Fix the build after a bad merge
2015-09-02 15:29:03 +03:00
Pavel Penev
a3633671a9 Fix the build after a bad merge
Merging #9187 without rebasing it on post-#9182 bleed was a bad idea.
2015-09-02 15:22:14 +03:00
Pavel Penev
ba9abc9e0a Merge pull request #9187 from RoosterDragon/field-saver-culture
Fix culture in FieldSaver for collections
2015-09-02 15:14:42 +03:00
Pavel Penev
b7192ffa14 Merge pull request #9207 from Mailaender/ctdam-animations
Added damaged, light and water animations to the Tiberian Sun hydroelectric dam
2015-09-02 15:08:49 +03:00
Pavel Penev
1679ac5a91 Merge pull request #9208 from Mailaender/kodiak-lights
Added Tiberian Sun Kodiak positional lights
2015-09-02 15:04:57 +03:00
Pavel Penev
325e974a94 Merge pull request #9209 from Mailaender/nod-lights
Added lights to the Nod Montauk and Pyramid
2015-09-02 14:58:19 +03:00
Pavel Penev
acd11d4521 Merge pull request #9212 from OpenRA/trucka
Added the unloaded truck to Tiberian Sun
2015-09-02 14:53:10 +03:00
Pavel Penev
995926b572 Merge pull request #9226 from GraionDilach/d2k-bo
Fix misc D2k BodyOrientation-regressions.
2015-09-02 14:42:44 +03:00
Pavel Penev
800b77e137 Merge pull request #9007 from reaperrr/armor-upgradable
Made Armor upgradable
2015-09-02 14:19:30 +03:00
Pavel Penev
8e2fca6f46 Merge pull request #9225 from LipkeGu/Namespace_Is_Wrong
Fix Namespace definition
2015-09-02 13:42:01 +03:00
Zimmermann Gyula
7ce1b89ba9 Fix misc D2k BodyOrientation-regressions. 2015-09-02 10:39:12 +02:00
Guido L
7181519fe4 Fix Namespace definition 2015-09-02 08:11:27 +02:00
Zimmermann Gyula
11c5144cb4 Restore AI kennel usage, limit AI harvesters and dogs. 2015-09-01 23:32:22 +02:00
Zimmermann Gyula
0a79109d01 Implement HackyAI->UnitLimits. 2015-09-01 23:32:13 +02:00
RoosterDragon
509a0e54a2 Merge pull request #9182 from penev92/bleed_dicts
Add support for Dictionary to FieldLoader and FieldSaver
2015-09-01 21:28:24 +01:00
Pavel Penev
256929073c Clean up some trait info loading code
Remove some methods that traits define to load their YAML values on their own.
2015-09-01 22:52:22 +03:00
Pavel Penev
8ddbabbfde Add Dictionary<,> support to FieldSaver 2015-09-01 22:52:20 +03:00
Pavel Penev
341b3395c8 Add Dictionary<,> support to FieldLoader 2015-09-01 22:52:18 +03:00
Pavel Penev
821e09877d Remove an assumption from FieldLoader.TryGetValueFromYaml() about the current value not having subnodes.
FieldLoader assumed the YAML that is being loaded is a simple value with no subnodes and threw an exception otherwise. This explicitly excluded the possibility of trying to load a Dictionary or another more complex object.
2015-09-01 22:52:04 +03:00
Matthias Mailänder
2df76ad962 add an overload that doesn't use string.Format 2015-09-01 20:59:14 +02:00
Matthias Mailänder
d17d68f894 Merge pull request #9221 from GraionDilach/fix-veinhole
Fix veinholes.
2015-09-01 20:38:46 +02:00
Pavel Penev
606a8c1639 Convert the Mobile Sensor Array to use DeployToUpgrade
Stop using Transforms.
2015-09-01 20:24:45 +03:00
Pavel Penev
899ea7e16d Add a description to DisableUpgrade 2015-09-01 20:19:31 +03:00
Pavel Penev
cdedfe6931 Don't get stuck in deployed mode because of an impossible move order 2015-09-01 20:19:29 +03:00
Pavel Penev
7668e0a30c Add deploy and undeploy sounds to DeployToUpgrade 2015-09-01 20:19:27 +03:00
Pavel Penev
21f9547fed Add facing to DeployToUpgrade
Make the actor turn to a desired facing before starting to deploy (and before granting the upgrade).
2015-09-01 20:19:25 +03:00
Pavel Penev
7d59aaa00c Add a deploy animation to DeployToUpgrade
Play a "deploy"/"undeploy" animation
2015-09-01 20:19:23 +03:00
Pavel Penev
3678e146cf Make WithVoxelBody upgradable 2015-09-01 20:19:21 +03:00
RoosterDragon
ac55c5bf09 Fix pathfinding using PriorityQueue incorrectly.
By providing a comparer that could change over time (as estimated costs on the graph were updated), this meant the priority queue could have its heap property invalidated and thus not maintain a correct ordering. Instead we store elements into the queue with their estimations at the time. This preserves the heap property and thus ensures the queue returns properly ordered results, although it may contain out of date estimations.

This also improves performance. The fixed comparer need not perform expensive lookups into the graph, but can instead use the readily available value. This speeds up adds and removes on the queue significantly.
2015-09-01 17:29:36 +01:00
RoosterDragon
77923a27c1 Tweak IPathSearch to avoid exposing the OpenQueue directly. 2015-09-01 17:29:36 +01:00
RoosterDragon
774992c246 Cache only unit paths in the pathfinder.
The path caching works on the assumption that the time saved from reusing a cached path outweights the cost of caching it in the first place.

For unit paths, this assumption holds. For path searchs, we spend more time caching them then we save when we get to reuse these cached paths. This is because they are reused less often, and calculating their key is more expensive in comparison.
2015-09-01 17:29:35 +01:00
Zimmermann Gyula
1410a3d405 Fix veinholes. 2015-09-01 17:14:41 +02:00
reaperrr
7f7031d5c8 Update outdated description 2015-09-01 13:52:09 +02:00
Zimmermann Gyula
4aba64cc0f Fix armors. 2015-09-01 13:52:08 +02:00
reaperrr
0f9ef4036e Merge pull request #9140 from RoosterDragon/safe-pathfinder-perf
Improve pathfinder performance
2015-09-01 13:02:29 +02:00
reaperrr
a154410307 Merge pull request #9214 from Mailaender/ts-trains
Fixed the TS mod crashing on startup and oh trains!
2015-09-01 13:00:14 +02:00
deniz1a
d065c9f202 Red Alert: Adds satellite icons to badger planes.
They drop crates, paratroopers and parabombs.
2015-09-01 10:15:37 +03:00
Matthias Mailänder
2ed240527e add train locomotive and waggons 2015-08-31 22:22:49 +02:00
Matthias Mailänder
b3bed529d2 fix 'nawall' does not define a quantized body orientation 2015-08-31 22:14:17 +02:00
RoosterDragon
0739fc80a3 Cache the speed modifiers enumerable, not just the traits, in Mobile. 2015-08-31 20:45:34 +01:00
RoosterDragon
d9dd96ca35 Speed up Map.ContainsAllProjectedCellsCovering on flat maps.
This method gets called often via Contains calls. We can significantly speed up the method for flat maps since we know the projection and it is trivial to perform. This avoids an expensive projection lookup.
2015-08-31 20:45:32 +01:00
RoosterDragon
76303e9699 In PathGraph.GetConnections, return a List of neighbors directly, rather than a LinkedList typed an IEnumerable.
The caller can enumerate the list more efficiently without the IEnumerable indirection, and the reduced memory allocation is marginally faster than allocating a linked list and several nodes.
2015-08-31 20:45:31 +01:00
RoosterDragon
7d44eb953e Reduce size of GraphConnection for allocation efficiency. 2015-08-31 20:45:29 +01:00
RoosterDragon
be59d045ce Only enumerate crushable traits once in MobileInfo.IsBlockedBy. 2015-08-31 20:45:25 +01:00
RoosterDragon
dab53f403d Provide a hand-written enumerator for ActorMap.GetUnitsAt(CPos). 2015-08-31 20:43:19 +01:00
RoosterDragon
18478646d4 Avoid multiple ToMPos calls in ActorMap. 2015-08-31 20:43:18 +01:00
RoosterDragon
ac1658c9ce Refactor movement cost method to avoid repeated terrain information lookups.
As the world tileset is fixed, the pathfinder can look up the terrain information for that tileset on creation. This is implemented by the WorldMovementInfo struct. When calculating node costs, this allows the pathfinder to avoid having to repeat this expensive dictionary lookup on every node.
2015-08-31 20:43:18 +01:00