Commit Graph

261 Commits

Author SHA1 Message Date
Oliver Brakmann
6274f2a47e Merge pull request #8768 from matija-hustic/attackbase_refactor
Some work on Attack*
2015-10-08 21:56:22 +02:00
Matija Hustić
d94c645046 First step in the attack mechanism's refactor.
Enabled firing multiple armaments at a target simultaneously.
Each armament defines own cursor for targeting.
The force attack modifier influences armament choice for target.
Autotargeting modified to handle firing multiple armaments simultaneously.
As a consequence, healers (medics) no longer require separate Heal
activity and AttackMedic and AutoHeal traits.
2015-10-06 01:46:55 +02:00
Paul Chote
b43f9bc524 Add ProduceActorsPower trait. 2015-10-05 22:05:01 +01:00
reaperrr
b722aa6721 Rename WithRotor to WithSpriteRotorOverlay 2015-10-04 20:22:46 +02:00
reaperrr
2ae0694385 Merge pull request #9054 from penev92/bleed_aircraft
Merge Plane and Helicopter traits
2015-10-03 01:52:30 +02:00
Huw Pascoe
cfd179b0c6 Added warhead visualization to combat debug overlay. 2015-10-02 02:48:21 +01:00
Pavel Penev
c33371226c Merge pull request #9435 from ABrandau/bleed
Create disable movement trait
2015-10-02 04:30:22 +03:00
Pavel Penev
0ee38de4bb Rename HeliReturn
Rename HeliReturn to HeliReturnToBase to keep somewhat with the convention established for Plane- against Heli- oriented traits.
2015-10-01 20:15:50 +03:00
Pavel Penev
8a44366667 Merge Plane and Helicopter into Aircraft 2015-10-01 20:15:41 +03:00
Pavel Penev
4e3d6bde4f Split AircraftMoveOrderTargeter to its own file 2015-10-01 20:09:12 +03:00
RoosterDragon
1b1e4f1dd2 Merge pull request #9174 from reaperrr/radius-explode
Customizable impact victim scan radius
2015-09-30 20:28:17 +01:00
Nolt
7994d08702 Create #9435 DisableMovementOnUpgrade, rename DisableUpgrade to DisableOnUpgrade and Fixed not showing the blocked move cursor when movement is disabled. 2015-09-28 21:32:00 -03:00
RoosterDragon
d70eea5adc Refactor occupied cells visibility checks.
Provide some common extension methods to reduce code duplication, and also use loops instead of LINQ to reduce allocations and provide a minor speedup.
2015-09-26 21:12:05 +01:00
reaperrr
4c41f8f656 Lint check for SpreadDamageWarhead victim scan radius bonus 2015-09-26 17:46:28 +02:00
RoosterDragon
285a3eab2e Merge pull request #8760 from atlimit8/RangeMultiplier
Added [I]RangeMultiplier & made UpgradeMultiplierTraitInfo implement ITraitInfo
2015-09-26 16:24:17 +01:00
atlimit8
74a9dc6793 Added IRangeMultiplier 2015-09-24 16:37:43 -05:00
reaperrr
5b5164211e Rename WithMuzzleFlash to WithMuzzleOverlay 2015-09-24 20:23:31 +02:00
Paul Chote
3fec4c2032 Merge pull request #9298 from atlimit8/AffectsShroud
Create abstract class AffectsShroud[Info] with RevealsShroud core logic also used by CreatesShroud
2015-09-19 18:46:23 +01:00
RoosterDragon
519be4374c Fixed pooling of layers used for pathfinding.
The previous implementation:
- Was failing to dispose of pooled layers.
- Was using a finalizer to allow undisposed layers to be reused.

This means all pooled layers are kept alive indefinitely until the map changes. If the finalizer is slow for any reason then the pathfiinder will allocate new layers when the pool runs out. Since these new layers are eventually stuffed back into the pool when the finalizer does run, this can theoretically leak unbounded memory until the pool goes out of scope. In practice it would leak tens of megabytes.

The new implementation ensures layers are disposed and pooled correctly to allow proper memory reuse. It also introduces some safeguards against memory leaks:
- A cap is set on the number of pooled layers. If more concurrent layers are needed than this, then the excess layers will not be pooled but instead be allowed to be garbage collected.
- No finalizer. An implementation that fails to call dispose simply allows the layer to be garbage collected instead.
2015-09-16 21:25:46 +01:00
abcdefg30
f78aea4f90 Merge pull request #8636 from Mailaender/irc
Added the in-game IRC client again
2015-09-13 17:14:36 +02:00
Matthias Mailänder
dae3b62d2a add a simple in-game IRC client 2015-09-09 20:56:05 +02:00
atlimit8
3e211232a3 Create abstract class AffectsShroud[Info] with RevealsShroud core logic also used by CreatesShroud 2015-09-08 17:24:49 -05:00
reaperrr
c272e790e5 Remove RenderSimple
All traits inheriting from it have been removed, and WithSpriteBody can
now take its place.
2015-09-09 00:16:21 +02:00
RoosterDragon
662077a47e Merge pull request #9103 from reaperrr/water-rot
Refactored WaterPaletteRotation into RotationPaletteEffect
2015-09-06 20:19:09 +01:00
TheRaffy
1fc2158f2e Added a WeatherOverlay 2015-09-06 20:25:29 +02:00
reaperrr
96c7d4345e Renamed WaterPaletteRotation to RotationPaletteEffect 2015-09-06 19:25:12 +02:00
Paul Chote
a11ffa5135 Remove the bitrotted actor stats command. 2015-09-05 18:01:32 +01:00
reaperrr
e74c0d6c13 Merge pull request #9141 from RoosterDragon/pathfinder-perf
Improve pathfinder performance (paths may change)
2015-09-05 16:49:51 +02:00
atlimit8
6986cd9f0e Remove TargetableAircraft 2015-09-02 23:19:00 -05:00
atlimit8
23d0424437 Add ITargetablePositions seperating it from ITargetable 2015-09-02 23:14:40 -05:00
Pavel Penev
2042fccefd Merge pull request #9189 from reaperrr/bye-rendersimple3
Remove RenderBuilding
2015-09-02 19:21:01 +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
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
Matthias Mailänder
f60080e0ac Merge pull request #9186 from LavenderMoon/bleed
Combine Shrapnel into Bullet
2015-08-30 18:40:26 +02:00
reaperrr
9da56f51e2 Remove RenderBuilding 2015-08-30 15:44:59 +02:00
Matthias Mailänder
0b8d7708ef add more lint interfaces to reduce boiler plate 2015-08-30 13:12:25 +02:00
Lavender Moon
81e5b7866b Combine Shrapnel into Bullet 2015-08-30 06:37:38 -04:00
reaperrr
bf51e0600d RenderBuildingWall -> WithWallSpriteBody 2015-08-30 00:22:53 +02:00
reaperrr
21186c10b6 RenderBuildingTurreted -> WithTurretedSpriteBody 2015-08-30 00:22:52 +02:00
reaperrr
69d062495c RenderBuildingSilo -> WithSiloAnimation 2015-08-29 23:33:18 +02:00
reaperrr
2df318cd3e RenderBuildingCharge -> WithChargeAnimation 2015-08-29 23:33:17 +02:00
Matthias Mailänder
9c1eeafa08 Merge pull request #9004 from reaperrr/quanbo
Introduce QuantizeFacingsFromSequence
2015-08-28 22:46:29 +02:00
Matthias Mailänder
5c2849a08f add a simple projectile with random sequences for debris effects 2015-08-24 21:05:37 +02:00
reaperrr
006e66a3c3 Refactored IQuantizeBodyOrientation implementation
Moved BodyOrientation and related interfaces from Game to Mods.Common.
Introduced QuantizeFacingsFromSequence trait.
With*Body render traits no longer implement IQuantizeBodyOrientation
themselves.
2015-08-24 00:48:56 +02:00
Matthias Mailänder
118782a85e check palette references 2015-08-17 21:36:45 +02:00
Taryn Hill
2f452d88b3 Rename EffectsGlobal to LightingGlobal
Remove ChangeLighting in favor of individual channels
Change RA's fort-lonestar to use Lighting instead of Effect
2015-08-02 10:03:39 -05:00
Paul Chote
9b3ef9e7f7 Move MusicPlaylist to Mods.Common. 2015-08-01 22:56:07 +01:00
Matthias Mailänder
baa798d831 autogenerate and install a UNIX man page 2015-08-01 11:56:43 +02:00
reaperrr
89f3718aa7 Move Armor trait to Mods.Common 2015-07-27 21:12:03 +02:00
deniz1a
5546298866 Merges LeaveMapLogic into GameInfoLogic.
Opens options menu when game ends.

Closes settings or music window before opening options menu.

Moves game end video playback logic from GameInfoLogic to
LoadIngamePlayerOrObserverUILogic.

Improves menu buttons.

Stop video from playing on fatal lua script error
2015-07-25 18:56:24 +03:00