Commit Graph

94 Commits

Author SHA1 Message Date
RoosterDragon
2e992a7310 Changed MiniYaml.NodesDict property into a method.
Method is now called ToDictionary.
- Cached a few invocations into locals which should prevent some redundant evaluation.
- Added ToDictionary overloads that take projection functions for the keys and elements, since several callsites were doing a subsequent Linq.ToDictionary call to get this.
2014-06-09 17:06:42 +01:00
Pavlos Touboulidis
531338a955 Preload sequences and fix #5382 2014-05-22 03:45:28 +03:00
Pavlos Touboulidis
ca44be7b2e Only update the loading screen from the main thread
Fixes the crash experienced by pchote. It's a hack but it's easy
to get rid of and it will have to do for now, until the messy
LoadScreen gets fixed.
2014-05-17 14:33:17 +03: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
Pavlos Touboulidis
2b3d5f1544 Better caching for Rules and Sequences
Refactored the Rules and SequenceProvider classes to be parts of ModData and
maintain a cache of the instances used in the mod.

The caching reduced the load times a lot, especially after the first load.
Some lazy loading in sequences also helped lower the startup time..

Note: The static classes were left behind to redirect the existing code's
calls.
2014-05-17 14:26:53 +03:00
Pavlos Touboulidis
603dd1d866 Style fixes 2014-04-24 13:46:06 +03:00
Pavlos Touboulidis
60732bd9bd Repurpose unused Timer.cs and add some loading perf metrics 2014-04-23 01:58:30 +03:00
Paul Chote
4935266945 Merge FileFormats dll into Game and reorganise namespaces. 2014-04-17 01:20:47 +12:00
Paul Chote
37101ba88e Isolate gameplay map state from the map cache. Fixes #4937. 2014-03-22 13:03:45 +13:00
Paul Chote
c30b18a9d6 Introduce MapCache and MapPreview for improved UI map previews. 2014-03-16 21:45:59 +13:00
Matthias Mailänder
4ce31f39c6 lint check maps, too
closes #4187
2014-03-12 19:05:55 +01:00
Paul Chote
bd334a6295 Introduce a mod/map upgrade tool. 2013-12-26 19:58:23 +13:00
Paul Chote
6406e1d052 Allow mods to define a list of compatible map sources. Fixes #4319. 2013-12-19 14:44:20 +13:00
Matthias Mailänder
5794e69d52 enforce Map.RequiresMod so we don't get suprised by breakages 2013-12-08 10:46:55 +01:00
Paul Chote
510e812c02 Bump the map format 5 -> 6.
Version 6 ensures that maps define RequiresMod.
2013-12-08 11:18:58 +13:00
Paul Chote
f5f6f1e7aa Allow maps to be saved during initialisation. 2013-12-08 10:38:35 +13:00
Paul Chote
f153516151 Introduce proper support for non-shp sprites in cursors and ShpImageWidget. 2013-12-01 09:47:48 +13:00
Paul Chote
6d6d1e230b Remove runtime mod merging. Closes #3421. 2013-11-15 09:54:42 +13:00
ScottNZ
1394c1dcee Remove some misc redundancies 2013-11-12 19:39:39 +13:00
ScottNZ
00ec1ca87a Remove unused usings 2013-11-12 19:39:33 +13:00
Matthias Mailänder
74692bde66 load maps only from MapFolders defined separately in mod.yaml 2013-10-27 09:22:10 +01:00
Matthias Mailänder
c87c4cfda2 translate ^ and ~ as FileSystem.Mount does 2013-10-27 08:02:05 +01:00
Matthias Mailänder
32851e624c specify map folders in mod.yaml
closes #3544
2013-10-27 08:02:05 +01:00
ScottNZ
6598f0382a Add support for game translation 2013-10-14 19:38:18 +13:00
Matthias Mailänder
452342f289 StyleCop clean ModData 2013-08-07 15:52:29 +02:00
Paul Chote
82faf7e929 Allow mods and maps to define voxel sequences. 2013-06-04 20:40:24 +12:00
Paul Chote
a00696ec3b Add core voxel rendering code. 2013-06-04 20:40:24 +12:00
Paul Chote
0dd8d7f7b6 Distinguish between classic and crc file hashes. Fixes #3306, #3328. 2013-05-24 21:10:41 +12:00
Matthias Mailänder
6a6776754b added .mix file support for game asset browser 2013-05-15 18:13:39 +02:00
Paul Chote
4ebe547a05 Allow SheetBuilder to generate 1/2/4 channel sheets.
This makes the SpriteFont RBGA sprite hack explicit,
and adds a DualIndexed option to be used by the voxel
renderer.
2013-05-15 20:18:41 +12:00
Curtis Shmyr
f40fbaf35e Merge pull request #3134 from chrisforbes/load-time
avoid spurious re-indexing of maps just prior to shellmap load
2013-04-20 16:58:48 -07:00
Chris Forbes
8750f04f4c avoid spurious re-indexing of maps just prior to shellmap load 2013-04-21 11:38:24 +12:00
Matthias Mailänder
3649342317 be more verbose about missing sequences and files
as requested in #3039
2013-04-20 21:56:29 +02:00
Paul Chote
82426e0e45 Move Palette from ModData to WorldRenderer. 2013-02-26 09:35:41 +13:00
Chris Forbes
d57dfd1997 tidy 2011-12-27 21:23:25 +13:00
Chris Forbes
bc6af1841b fix indents everywhere 2011-10-18 15:10:17 +13:00
Chris Forbes
f9eb62beee tidy uid->map lookup in ServerBrowser implementations 2011-09-26 08:40:40 +13:00
Chris Forbes
55036cd58c fix trailing whitespace everywhere 2011-09-26 08:40:39 +13:00
Chris Forbes
896cbaae39 clean up ModData package mounting 2011-08-21 20:26:00 +12:00
Chris Forbes
1fe5c1d60f catch map load failures 2011-08-20 14:13:52 +12:00
Chris Forbes
3d2635fca5 drop CursorSheetBuilder; use normal SheetBuilder for cursors now. 2011-07-19 21:14:11 +12:00
Chris Forbes
0e45968573 remove 'private' keyword where possible 2011-06-29 09:15:39 +12:00
Paul Chote
372d2f5426 Saner load code for cnc. Installing not yet implemented. 2011-05-21 17:26:10 +12:00
Paul Chote
3d347848f3 Remove another hardcoded widget reference and prepare for saner init code. 2011-05-21 17:25:45 +12:00
Chris Forbes
b183366d54 add ChromeMetrics for values we dont want to duplicate everywhere 2011-05-21 16:27:06 +12:00
Matthew Bowra-Dean
20458fc552 Move Platform.cs to OpenRA.FileFormats, fix #765. 2011-05-21 11:35:04 +12:00
Paul Chote
094907c1a9 Update copyright header. Normalize line endings to LF. 2011-02-13 10:38:57 +13:00
Paul Chote
c2db816837 Kill MapStub 2011-02-11 21:50:11 +13:00
Paul Chote
580b9014b3 Install map button (does not verify that maps are valid). 2011-01-27 20:50:03 +13:00