Commit Graph

173 Commits

Author SHA1 Message Date
huwpascoe
a660bb95b5 Actor properties consistency improved 2014-11-21 02:44:05 +00:00
Matthias Mailänder
bad8f70210 Merge pull request #6921 from reaperrr/common-traits01
Moved various traits to Mods.Common
2014-11-15 09:41:36 +01:00
Paul Chote
563efd678a Revert "DevEnableTech now displays from all factions"
This reverts commit 5d5f302d07.
2014-11-15 09:20:04 +13:00
reaperrr
0cbcae93a9 Move Valued, CustomSellValue and CustomBuildTimeValue to Common 2014-11-14 01:01:46 +01:00
reaperrr
477f5aac94 Move Power and PowerdownIndicator effect to Mods.Common 2014-11-06 18:43:00 +01:00
huwpascoe
56551c29c4 Fixed ProductionQueue freezing Transform 2014-11-02 20:34:44 +00:00
huwpascoe
5d5f302d07 DevEnableTech now displays from all factions 2014-10-19 20:28:29 +01:00
Oliver Brakmann
c0da807ee7 Add production support to the new Lua API 2014-10-18 18:19:03 +02:00
Taryn Hill
dc9b97c695 Merge pull request #6675 from Mailaender/ts-harvester-attack-notifier
Fixed Tiberian Sun harvester under attack notification not playing.
2014-10-08 10:41:48 -05:00
steelphase
3c60794e2e Mods.Common Effects
Moved over more effects to Mods.Common
2014-10-06 01:57:10 -04:00
Matthias Mailänder
6a8345b3d0 document traits with generic names 2014-10-05 17:58:43 +02:00
Matthias Mailänder
25c89698fd document HarvesterAttack- and BaseAttackNotifier 2014-10-05 08:59:29 +02:00
steelphase
2f87a62ee8 Mods.Common Widgets
Moved over Widgets that don't require a bunch of things to move.
2014-10-01 09:48:41 -04:00
abcdefg30
7d72f81c5d fix broken objectives fine-tuning 2014-09-29 16:14:42 +02:00
Oliver Brakmann
97ce246a27 Prevent already failed objectives from being marked as completed
The same change was not and must not be done in the reverse case. It
should be and is possible to mark an already completed objective as
failed.

Consider a case where a player is supposed to capture, but not destroy,
a building.  He captures it, the objective is complete.  However, later
in the game that building gets destroyed. In this case, the objective
should be changed to failed.
2014-09-18 18:32:52 +02:00
ScottNZ
b70395e27c Refactor more power and infiltration stuff. Create new power sabotage ability for spies in ra and ts. 2014-08-27 18:45:09 +12:00
abcdefg30
a3928bfcf0 Fixed displaying false stats 2014-08-23 18:04:24 +02:00
Oliver Brakmann
1e7f04105d Fix OnObjective(Completed|Failed) not being called for secondary objectives 2014-08-23 16:21:39 +02:00
Oliver Brakmann
56466e312f Ensure that all combatants have a defined WinState at the end of the game 2014-08-23 16:21:39 +02:00
Oliver Brakmann
d673520d82 Remove inconsistencies w.r.t the Surrender order
* Surrendering is now possible even in maps that do not use
  ConquestVictoryConditions.
* The Surrender button is greyed out instead of hidden when it cannot be
  used.
2014-08-08 13:35:50 +02:00
Oliver Brakmann
8cec848a0f Add a mission objectives GUI panel 2014-08-08 13:35:49 +02:00
Oliver Brakmann
6e3000ab0e Make Conquest- and StrategicVictoryConditions use objectives backend
Note: 3rd party KotH maps will need to be modified to work correctly
with this change.  Previously, StrategicVictoryConditions was a
supplement to ConquestVictoryConditions.  After this change, each works
by itself.  So KotH maps will need to remove the ConquestVictoryConditions
trait from the player definitions, or both victory conditions will have
to be satisfied to win the game.
2014-08-07 16:56:17 +02:00
Oliver Brakmann
a3bf3e7403 Add support for mission objectives
Objectives can be either primary or secondary objectives. Primary ones
influence the outcome of the game.  If all primary objectives are
completed the game is won, and lost when any of them fails.

Objectives can be added at any stage during the game, allowing to react
dynamically to game events.

The objectives backend only contains the information about the
objectives themselves. It does not check if objectives are completed or
failed.  Instead, the state of objectives must be manually marked. The
backend, however, does check whether the game is won or lost.
2014-08-07 16:56:17 +02:00
Paul Chote
bf5da145b0 Introduce IUpgradable and purchasable unit upgrades. 2014-08-07 20:40:47 +12:00
WolfGaming
d44a5226f5 Fixes Maps not being able to force tech levels 2014-07-29 22:08:36 +00:00
ScottNZ
88ea7f1c7e Take BuiltAt overrides into account when calculating speedup - prevent kennels contributing to rifle infantry speedup for example 2014-07-27 14:33:55 +12:00
Paul Chote
c164ec8c8c Add Buildable.BuildAtProduction.
This allows actors to be restricted to specific production structures.
2014-07-24 20:45:28 +12:00
Matthias Mailänder
1071a94d1d document traits 2014-07-20 14:50:37 +02:00
WolfGaming
7b10da6bde Adds the RequiresPrerequisites field into ProvidesCustomPrerequisite and all the logic behind it. 2014-07-18 06:11:03 +00:00
Squiggles211
006f7b888a Restored production queue current item checks
Fixes regression #5948 where you could freely build any building by
canceling the production before deploying by restoring the currentItem
checks in the PlaceBuilding order to ensure that the production is still
valid.
2014-07-13 14:06:30 -05:00
Matthias Mailänder
394d635dae new trait WithMakeAnimation 2014-07-06 08:24:08 +02:00
Pavlos Touboulidis
daed053a57 Fix and optimize FindTilesInCircle 2014-07-03 18:11:28 +03:00
Paul Chote
7b52fa52b6 Replace CPos.CenterPosition -> Map.CenterOfCell. 2014-06-27 23:30:40 +12:00
Paul Chote
a9635e8c4a Refund the *old* player when a production structure is captured. 2014-06-26 23:14:14 +12:00
Paul Chote
4db2cf6b2b Propagate race to produced actors. 2014-06-26 23:14:14 +12:00
Paul Chote
4b2663015b Fix CanBuild not checking DeveloperMode.AllTech. 2014-06-26 23:14:14 +12:00
Paul Chote
749a947d3f Avoid repeated queries of DeveloperMode. 2014-06-26 23:14:14 +12:00
Paul Chote
ca082e3cec Allow ProductionQueue to filter by race. 2014-06-26 23:14:13 +12:00
Paul Chote
d9e0559c7a Remove some long-dead code. 2014-06-26 23:14:13 +12:00
Paul Chote
66d9629520 Fix remaining tech tree issues. 2014-06-26 23:14:12 +12:00
Paul Chote
7b3a0ebeb5 Tidy production traits. 2014-06-26 23:14:10 +12:00
Paul Chote
6536f92b12 Allow custom prerequisites to be restricted by race. 2014-06-26 23:12:23 +12:00
Paul Chote
a5cc68efee Allow production ownership test to be disabled. 2014-06-26 23:12:23 +12:00
Paul Chote
c5089db19c Allow actors to exist in multiple building queues. 2014-06-26 23:12:22 +12:00
RoosterDragon
8a60880cf1 Tackle the last of the low hanging fruit for memory allocations in the main game loop.
- Avoid calling string.Split twice in SprintFont.Measure.
- Change ActorsInBox method of ActorMap and ScreenMap to avoid allocating and intermediate list. As a bonus this allows the sequence to be lazily consumed. Also avoid LINQ in these methods.
- In FrozenUnderFog.TickRender, the method exits early if no players are visible so the attempt at lazy generation was not needed.
- Unwrap a LINQ Any call in ClassicProductionQueue.Tick.
- Merge some successive Where calls in ProximityCapturable into single predicates.
2014-06-22 17:29:45 +01:00
RoosterDragon
22abf9b4c4 Remove and sort usings. 2014-06-18 21:43:35 +01:00
Paul Chote
1db1a1b324 Fix a typo in ITechTreeElement. 2014-06-15 22:49:52 +12:00
ScottNZ
90894aa03e Use var everywhere 2014-06-15 22:17:34 +12:00
ScottNZ
dbffce81a6 Remove unused usings 2014-06-15 22:16:40 +12:00
Matthias Mailänder
dac12839fd Merge pull request #5630 from pavlos256/map-helpers
Move map helpers from WorldUtils to Map
2014-06-14 11:49:19 +02:00