Commit Graph

343 Commits

Author SHA1 Message Date
Paul Chote
58b39616f6 Merge pull request #6193 from obrakmann/fix6045
Fix breakage of --upgrade-map in OpenRA.Utility
2014-08-09 12:52:15 +12:00
Oliver Brakmann
c9ee475ca9 Added upgrade rules 2014-08-08 13:35:50 +02:00
Paul Chote
1a4f476ffa Replace CloakCrateAction with upgrades. 2014-08-07 20:44:30 +12:00
Paul Chote
de775e2f56 Reimplement unit levels using IUpgradable. 2014-08-07 20:44:28 +12:00
Oliver Brakmann
229f17ab85 Fix breakage of --upgrade-map in OpenRA.Utility
Closes #6045
2014-08-06 13:39:28 +02:00
Taryn Hill
c3c5cd04cc Write trait requirements in documentation. 2014-08-03 21:37:37 -05:00
Chris Forbes
c482e97060 Merge pull request #6152 from Mailaender/money-crate
Added money crates to be spawned by destroyed supply trucks
2014-08-04 10:39:29 +12:00
Taryn Hill
b6fd757672 Merge pull request #6030 from UberWaffe/CustomWarheads
Custom Warheads refactor
2014-08-03 10:35:36 -05:00
UberWaffe
c972b39687 Custom Warheads refactor
Changes included:

Warhead code split out of weapon code and refactored.
Warhead functionality now split into several classes, each handling one effect/impact.

Additional custom warheads can now be defined and called via yaml.
Custom warheads inherit the abstract class Warhead,
which provides target check functions.

Custom warheads have to define their own impact functions,
and can also define their own replacement for check
functions.
2014-08-03 17:10:44 +02:00
Matthias Mailänder
98106e2ff7 ContainsCrate is redundant to LeavesHusk 2014-08-03 16:30:45 +02:00
ScottNZ
692e3a9c88 Move Power out of Building and into its own trait
Conflicts:
	mods/ts/rules/structures.yaml
2014-08-03 18:53:51 +12:00
Paul Chote
a7fc41b87e Merge pull request #5943 from pavlos256/fieldloader
Fieldloader and non-public fields
2014-07-24 20:29:25 +12:00
UberWaffe
2b73fa027b Fixes as per comments. (+1 squashed commits)
Squashed commits:

[c3abf4b] Fixes as per comments. (+1 squashed commits)

Squashed commits:

[a289d17] Regression and UpgradeRules fix for #5921.
2014-07-23 16:47:15 +02:00
Matthias Mailänder
7d0f4a261f don't break apart when using empty IReadOnlyDictionary 2014-07-20 14:50:38 +02:00
Pavlos Touboulidis
e9dd0b0fab Make FieldLoader/FieldSaver able to work with private fields
* Unify the FieldLoader-related attributes (Ignore, LoadUsing,
FieldFromYamlKey) into a new 'Serialize' attribute. Keep the
previous attributes as shortcuts/aliases to the new attribute.

* Add 'YamlName' field to the new 'Serialize' attribute to allow
yaml names different from the field names. Example:
    [Serialize(YamlName = "Width")]
    private int widthExpression = "0";

* The FieldLoader will treat private fields like public now and
will try to load their values. The FieldSaver gets an optional
parameter specifying whether to save private fields by default.
The 'Serialize' attribute can be used to fine-tune individual
fields.

* Updated the traits documentation exporter to write the yaml
name if it has been overriden.
2014-07-12 04:33:36 +03:00
Matthias Mailänder
91a076728d generalize into SpawnActorPower
closes #5724
2014-07-07 15:27:54 +02:00
Paul Chote
ab26d4b0ad Overhaul ParatroopersPower:
- Adds support for multiple drop planes.
- Adds support a beacon and camera.
- Prevents the plane from circling if it can’t unload.
2014-07-08 00:30:38 +12:00
Paul Chote
59bea931a5 Use AirstrikePower for spy planes. 2014-07-07 17:40:51 +12:00
Matthias Mailänder
394d635dae new trait WithMakeAnimation 2014-07-06 08:24:08 +02:00
Matthias Mailänder
ef01fb289b make the parachute animation optional
instead of hard-coding default sprite sequences
2014-07-05 09:13:52 +02:00
Matthias Mailänder
ff1be8daea merge ParachuteAttachment and Parachutable 2014-07-05 09:13:52 +02:00
Matthias Mailänder
40cd491bff Merge pull request #5778 from pchote/isometric
Add support for diamond cell grids
2014-07-01 16:59:22 +02:00
Matthias Mailänder
7cd259d2b8 add a missing space for multi line property documentation 2014-07-01 09:12:13 +02:00
Paul Chote
a30c8b53a7 Add support for diamond cell grids. 2014-06-30 23:44:23 +12:00
Paul Chote
281423c8f4 Merge pull request #5766 from RoosterDragon/read-only-frames
Make sprite frames read-only lists.
2014-06-28 21:54:30 +12:00
RoosterDragon
7030d8b2b6 Changed HardwarePalette.ApplyModifiers to be more efficient.
- Add separate ImmutablePalette and MutablePalette classes since the distinction is extremely important to HardwarePalette.
- Keep a cache of palettes in HardwarePalette to avoid reallocation them every time ApplyModifiers is called.
- Palettes that are not allowed to be modified are copied to the buffer once when added, rather than every time ApplyModifiers is called.
- The AdjustPalette method now takes a read-only dictionary to prevent the dictionary being messed with.
- Added a constant for the palette size to remove its usage as a magic number in several areas.
- The ColorPreviewManagerWidget is annoying in that it needs to actually permanently update a palette after it has been added. To allow this, HardwarePalette now allows a palette to be replaced after initialization. The WorldRenderer therefore now also updates the PaletteReference it created earlier with the new palette to prevent stale data being used elsewhere.
2014-06-28 01:11:48 +01:00
RoosterDragon
19072775d4 Changes ISpriteSource.Frames to be of type IReadOnlyList<ISpriteFrame>.
- Updated implementations to return a ReadOnlyList around an array (to reduce wasted memory from exposing lists or lazy enumerators around lists).
- Protect non-public ISpriteFrame classes by making them inner classes to prevent casting.
- Added an AsReadOnly extension method for lists.
2014-06-27 23:38:34 +01:00
Paul Chote
997216aef0 Use CellLayer for terrain. 2014-06-27 22:07:02 +12:00
Paul Chote
ad730a44c3 Use CellLayer for resources. 2014-06-27 22:07:02 +12:00
Chris Forbes
87ff787f26 Merge pull request #5721 from RoosterDragon/stylecop-small-projects
Run StyleCop on the smaller projects.
2014-06-23 19:09:04 +12:00
RoosterDragon
38617dc0a9 Run StyleCop on the smaller projects.
Also add a copy of the rules to the CrashDialog and Irc projects.
2014-06-23 00:03:37 +01:00
Paul Chote
7cf2a32a2a Revert "export health, cost and damage per section into a CSV file"
This reverts commit 8249012e4b.

Conflicts:
	OpenRA.Utility/Command.cs
2014-06-23 09:31:40 +12:00
RoosterDragon
e0d8d8cf80 Clean up project settings.
- Create single platform config named x86 and have all projects target x86.
- Remove Release config (broken anyway).
- For the Debug config, ensure TRACE and DEBUG constants are set and unsafe code is allowed for all projects (same as the makefile).
- Warn level 4 and optimizations off were removed from the config automatically by VS (it assumes these values by default, and these match the makefile).
- The CrashDialog project can reuse the icon from the Game project as long as the path is set correctly.
- Fix TS project so it builds (I know it's going but its annoying that the project must be unloaded).
2014-06-20 19:29:54 +01:00
Paul Chote
c8c05ea19c Merge pull request #5451 from Mailaender/csv-dps
Added CSV rule export to OpenRA.Utility.exe
2014-06-21 01:18:12 +12:00
Matthias Mailänder
3e627d2eba rename ore to the more generic name resources everywhere 2014-06-20 11:11:31 +02:00
RoosterDragon
22abf9b4c4 Remove and sort usings. 2014-06-18 21:43:35 +01:00
Matthias Mailänder
1d276e4186 add a pure data export for non-spreadsheet applications 2014-06-15 20:13:14 +02:00
Matthias Mailänder
6d2dfabb41 factor in burst delay 2014-06-15 20:12:47 +02:00
Matthias Mailänder
e0ba2046b5 add weapon name 2014-06-15 20:12:24 +02:00
Matthias Mailänder
de005c284c add armor types and move calculation into spreadsheet 2014-06-15 20:11:41 +02:00
Matthias Mailänder
8249012e4b export health, cost and damage per section into a CSV file
closes #3855
2014-06-15 20:10:51 +02: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
Paul Chote
e0c59511fb Merge pull request #5152 from Mailaender/auto-l10n
Automated translation string extraction
2014-06-12 10:31:07 +12:00
RoosterDragon
a598a01108 Fixed IDisposable implementation and usage.
- Implement IDisposable interface correctly, with sealed classes where possible for simplicity.
- Add using statement around undisposed local variables.
2014-06-10 11:23:55 +01:00
Matthias Mailänder
69d86cfcf2 add automated language string extraction to utility 2014-06-10 09:24:28 +02:00
RoosterDragon
0ea3509ee4 Added MinBy, MaxBy, MinByOrDefault and MaxByOrDefault methods and replaced calls of the style OrderBy[Descending]().First[OrDefault]() which is not as performant. 2014-05-23 08:23:42 +01:00
Matthias Mailänder
09fb435d45 automatic rule upgrade 2014-05-18 08:12:22 +02:00
Pavlos Touboulidis
750fc4e02c Merge ModRuleset and MapRuleset into Ruleset 2014-05-17 14:33:16 +03:00
Pavlos Touboulidis
63ec6d60e7 Refactoring to remove static Rules & SequenceProvider 2014-05-17 14:32:03 +03:00