Commit Graph

4802 Commits

Author SHA1 Message Date
abcdefg30
2ee7e11064 Merge pull request #10488 from obrakmann/fix10451_printing_money_with_spies
Change guaranteed amount of stolen funds to spy's value
2016-01-21 21:27:48 +01:00
Oliver Brakmann
a612ca9c5f Use proper speech notification for InfiltrateForCash 2016-01-21 20:35:28 +01:00
abcdefg30
ab7907c5a1 Unhardcode the chronoshift cursor sequences 2016-01-21 17:43:41 +01:00
abcdefg30
03ed54b3fb Merge pull request #10537 from pchote/move-util
Move OpenRA.Traits.Util to Mods.Common
2016-01-21 17:13:03 +01:00
Paul Chote
0039a2bdbf Split out an ActivityUtils class. 2016-01-19 23:34:13 +00:00
Paul Chote
275be64f05 Remove Util.QuantizeFacing from support powers. 2016-01-19 23:34:13 +00:00
Matthias Mailänder
a8a1fafbc9 unhardcode ChronoShift palettes and sequences 2016-01-18 21:31:06 +01:00
Oliver Brakmann
a04223fcd2 Merge pull request #10143 from Phrohdoh/interface-reflection
Implement a utility command to check for explicit interface implementation violations.
2016-01-18 20:23:43 +01:00
Taryn Hill
25eddb9567 Explicitly implement ISelectionBar 2016-01-17 22:33:41 -06:00
RoosterDragon
8e89a6a696 Simplify names, remove unused usings, remove redundant casts. 2016-01-17 21:35:36 +00:00
Oliver Brakmann
c40b64ad02 Fix arbitrary defaults in InfiltrateForCashInfo. 2016-01-17 22:09:04 +01:00
Oliver Brakmann
ee8323373b Add trait documentation to InfiltrateForCash 2016-01-17 22:00:55 +01:00
Oliver Brakmann
5ec11fba8f Allow falling back to infiltrator's value in InfiltrateForCash 2016-01-17 22:00:55 +01:00
Oliver Brakmann
aaeb715006 Merge pull request #10246 from penev92/terrainPalettes
Allow tile templates to define their own palette
2016-01-17 21:39:28 +01:00
Pavel Penev
861d1368a4 Unhardcode internal terrain palette name from all over the codebase 2016-01-17 19:02:16 +02:00
RoosterDragon
3c930c3ef9 Introduce FrozenUnderFogUpdatedByGps and IOnGpsRefreshed.
This trait uses the new interface to register with the GpsWatcher to get notified when the GPS state changes. It needs to register as if the actor is destroyed, the GpsWatcher can no longer query actors in the world to get the trait. This is no good as the trait needs to perform actions after the death of its parent actor.

When the GPS is enabled, the trait will track ownership changes and update the frozen actor (just like if there was only a GPS dot, it would change colour) and it will also remove frozen actors if the real actor dies or is sold.
2016-01-17 00:13:06 +00:00
RoosterDragon
a232eff7fd Replace IRemoveFrozenActor with FrozenActorLayer.Remove.
The IRemoveFrozenActor interface is replaced with a Remove method on FrozenActorLayer. IRemoveFrozenActor is a performance problem for FrozenActorLayer.Tick as it incurs a large cache miss penalty in order to load and enumerate the array of these interfaces for every frozen actor. Instead, we invert control and allow traits to remove frozen actors directly which eliminates the performance penalty.
2016-01-17 00:13:06 +00:00
Matthias Mailänder
6900e4bad3 rename DemoTruck to AttackSuicides
generalize move to add Aircraft support
give it a description
don't require Explodes as it is just a soft dependency
use a regular self kill
2016-01-16 19:38:23 +01:00
teees
f46185b85f Reworked cloaking behaviour 2016-01-07 13:44:16 +01:00
Paul Chote
1959820bc8 Implement enter behaviour for Infiltrates plus other cleanups. 2015-12-30 19:53:51 +00:00
Paul Chote
f5fafb1b9d Move EnterBehaviour behaviour to Enter. 2015-12-30 19:53:06 +00:00
atlimit8
68fd5dfd58 Merge pull request #10272 from RoosterDragon/player-dict
Speed up dictionaries keyed on Player
2015-12-29 19:27:11 -06:00
Oliver Brakmann
3cd708d2bb Merge pull request #10302 from Phrohdoh/attrib-require-traits
Allow ActorReferenceAttribute to list required traits
2015-12-28 14:30:01 +01:00
Oliver Brakmann
14b6034e9d Merge pull request #10216 from pchote/remove-tags
Reimplement Primary and Fake tags using WithDecoration.
2015-12-27 19:43:57 +01:00
Taryn Hill
5b5a45b0a4 Place constraints on ActorReferences in ParatroopersPower to improve linting 2015-12-27 11:24:16 -06:00
Oliver Brakmann
5a27150587 Merge pull request #9977 from RoosterDragon/dispose-lua-values
Ensure LuaValues are disposed
2015-12-27 17:20:39 +01:00
Paul Chote
ef2f9cbafa Remove "Fake" tag. 2015-12-26 12:38:27 +00:00
RoosterDragon
3a2139de26 Add PlayerDictionary.
This custom collection allows other classes to implement a Player to value mapping, but also stores the values in an array for faster lookup by the player index in the world. For some code, this improved lookup time is important for performance.
2015-12-23 23:54:04 +00:00
atlimit8
b07cd683e8 Easier actor selection in game by actor bounds center 2015-12-23 12:09:08 -06:00
RoosterDragon
6ab6d774a7 Ensure LuaValues are disposed.
Adding in these missing calls prevents these instances from having to be finalized.
2015-12-23 17:22:51 +00:00
Oliver Brakmann
71478aa2b8 Merge pull request #9734 from RoosterDragon/auto-target-perf
Improve AutoTarget performance
2015-12-20 19:53:17 +01:00
RoosterDragon
dcf375a412 Store Targetables in Actor.
This can be used to avoid several lookups for these traits, as well as allow Actor to provide specialised methods to deal with target types efficiently. This also reduces some code duplication.
2015-12-12 20:55:17 +00:00
RoosterDragon
62a932272c Fix GPS refreshing for incorrect player.
GpsWatcher.RefreshGps was wrongly using the render player in simulation code.
2015-12-12 19:57:08 +00:00
RoosterDragon
f96d02a794 Fix GPS dot relying on frozen actor render state.
The GPS dot was not displayed if a frozen actor for it was already visible. However, this was mistakenly affecting visibility checks in the world. Now, we only avoid rendering it when the frozen actor is present, but the indicator is still regarded as visible for visilbity checks in the world.
2015-12-12 19:57:07 +00:00
RoosterDragon
87d35a75da Merge dictionaries in GpsDot.
This speeds up GpsDot.Tick as it requires only one dictionary lookup per player rather than two.
2015-12-12 19:54:23 +00:00
RoosterDragon
bfe1804bf6 Fix some spellings. 2015-11-27 16:19:59 +00:00
abcdefg30
921d3b9278 Fix the description of ReturnToOrigin in Chronoshiftable.cs 2015-11-22 21:52:23 +01:00
Matthias Mailänder
3727fccd1b Merge pull request #9982 from abcdefg30/chronodesc
Unhardcode and document things in Chronoshiftable
2015-11-22 16:05:36 +01:00
Oliver Brakmann
16de21d41c Merge pull request #10018 from pchote/fix-spy-cursor
Restore targeting cursor when mousing over a disguised enemy spy.
2015-11-21 20:57:12 +01:00
Pavel Penev
8d4d37ca46 Make GPS respect shroud 2015-11-21 01:11:40 +02:00
Pavel Penev
78e2eabd17 Remove byPlayer parameter from IFogVisibilityModifier.HasFogVisibility() 2015-11-21 01:11:38 +02:00
Pavel Penev
217c3881c6 Add IFogVisibilityModifier.IsVisible(Actor) 2015-11-21 01:11:37 +02:00
Pavel Penev
bfa23c18c0 Track GpsDot state per player
Should let us fix the issue mentioned in https://github.com/OpenRA/OpenRA/pull/10007#issuecomment-157409237
2015-11-21 01:11:36 +02:00
abcdefg30
9b2391cf0c Unhardcode and document things in Chronoshiftable 2015-11-18 21:16:57 +01:00
Paul Chote
124c0ea041 Make CanTarget modifiers a ref parameter. 2015-11-16 20:38:53 +00:00
abcdefg30
828cb5cf38 Fix a crash when using the chronoshift power
if the "chronosphere-actor" doesn't have an "active" sequence
2015-11-15 22:21:23 +01:00
Paul Chote
a9f2fc962e Merge pull request #9984 from cjshmyr/spypowerdrain
Lower Spy's InfiltrateForPowerOutage time from 30->20sec
2015-11-14 19:33:03 +00:00
Curtis Shmyr
bac98acce7 lower InfiltrateForPowerOutage time from 30->20sec 2015-11-14 01:42:13 -07:00
atlimit8
7352290c94 Move SpawnActorOnDeath to OpenRA.Mods.Common & fix spawned death actor teleportation 2015-11-05 00:55:29 -06:00
Oliver Brakmann
177d983728 Merge pull request #9759 from atlimit8/ActorsHavingTrait
Add ActorsHavingTrait<TTrait>()
2015-11-04 22:26:10 +01:00