Commit Graph

356 Commits

Author SHA1 Message Date
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
Paul Chote
8ac9477cd9 Add UISpriteRenderable for screen-space decorations. 2014-07-25 21:14:39 +12:00
Paul Chote
1beff77c6a Split selectable rendering into *Renderables. 2014-07-25 21:14:39 +12:00
Paul Chote
029da5116b Move VoxelRenderable into Mods.RA. 2014-07-22 16:43:39 +12:00
Paul Chote
4589e93180 Move TextRenderable into Mods.RA. 2014-07-22 16:43:39 +12:00
Paul Chote
1cb6026c38 Move ContrailRenderable into Mods.RA. 2014-07-22 16:43:39 +12:00
Paul Chote
6005262992 Move BeamRenderable into Mods.RA. 2014-07-22 16:43:39 +12:00
Paul Chote
51abbad5ff Move RenderSprites and RenderSimple into Mods.RA. 2014-07-22 16:43:39 +12:00
Matthias Mailänder
5cdf0e6a67 generalize MoveFlash as parametrized SpriteEffect 2014-07-07 15:23:14 +02:00
Matthias Mailänder
cf6f32fb96 split Sound.cs in smaller chunks 2014-07-05 08:35:38 +02:00
Matthias Mailänder
8cce30d472 sort into sub-folders Input and Graphics 2014-07-05 08:35:32 +02:00
Matthias Mailänder
0feb5a7bdc check for building influence when growing resources
closes #5556
2014-07-04 09:22:14 +02:00
Paul Chote
52ab8f3ca1 Add CellRegion and CellLayer classes to simplify map overlays. 2014-06-27 19:20:46 +12:00
RoosterDragon
927b0499da Produce debug output for OpenRA.Game. 2014-06-22 16:38:05 +01: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
Pavlos Touboulidis
db53f8e648 Add developer shortcut to reload chrome files
Hitting Ctrl+Shift+C will re-initialize the chrome provider,
reloading all chrome files instantly. Useful when changing the
UI.

Note: A new "RootWidget" was created to trap top-level (global)
shortcuts instead of putting everything in Widget.
2014-06-13 11:31:09 +03:00
Pavlos Touboulidis
e083b392ba Add IReadOnlyList 2014-05-31 18:37:03 +03:00
ScottNZ
40e9fb93d6 Revert project file changes by RoosterDragon which would cause the TD mod to fail to load for some reason on Windows (de7a837d94, #5403).
VS will also generate a warning if it tries to source an icon from somewhere not in the project directory, so added it to the CrashDialog folder.
2014-05-26 00:07:30 +12:00
RoosterDragon
de7a837d94 Unify settings for solution and project setups.
Create a single solution platform named x86.
Ensure both Debug and Release configs build to the root for all projects.
Ensure all Release configs generate pdbs.
2014-05-23 08:16:09 +01:00
Pavlos Touboulidis
de0a5ebd43 Improve replay metadata and the replay browser
List of changes:

* Better and more filters with new layout, for both mods.

* Rename/Delete/Detele all functionality.

* Simplified ReplayMetadata class considerably by introducing a new
GameInformation data object. The new GameInformation class contains
more information than previously available so the new solution is not
compatible with old replays, meaning it can't read old replays.

* Better and cleaner game information gathering in order to be written
at the end of the replay file.

* Revert changes to ReplayConnection, no longer necessary.

* Better exception message on missing sprites and fonts.

* New "SpawnOccupant" class that holds all the information needed by the
MapPreviewWidget to visualize a spawn point. It was using Session.Client
before and it was necessary to separate it to be able to show information
not available at lobby time.

* Fix keyboard focus UI bug when closing a window would not remove focus.
2014-05-22 21:54:14 +03:00
Pavlos Touboulidis
98a05b61b3 Add metadata block to replays
The replay files are just streams all network communication so to
get any info out of them it is necessary to play back the stream
until the wanted information is reached.

This introduces a new metadata block placed at the end of the
replay files and logic to read the new block, or fall back to
playing back the stream for older files.

The replay browser is also updated to use the metadata information
instead of reading the replay stream directly.
2014-05-22 21:54:14 +03:00
Matthias Mailänder
187362e80e rename OpenRA.Support.Random aka XRandom to MersenneTwister 2014-05-18 21:53:21 +02:00
Pavlos Touboulidis
10b8093d5a Rename ModInformation to ModMetadata 2014-05-17 14:33:16 +03:00
Pavlos Touboulidis
894db95d58 Move Ruleset.cs from Map/ to GameRules/ 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
Paul Chote
ac99afaaec Merge pull request #5248 from Mailaender/sdl2-opentk
Ported Tao.OpenAL/OpenGL to SDL2/OpenTK
2014-05-09 20:24:40 +12:00
Paul Chote
a6e79bb732 Merge pull request #5155 from Mailaender/ts-tiberium
Added Tiberium crystals and refinery to Tiberian Sun
2014-05-07 18:30:27 +12:00
Matthias Mailänder
fdf108a879 port Tao.OpenAl to OpenTK.Audio.OpenAL 2014-05-06 07:13:43 +02:00
Paul Chote
3965535f3f Remove Windows.Forms dependencies from game and utility. Fixes #4348. 2014-05-04 09:37:25 +12:00
Paul Chote
fe6831a095 Move winforms crash dialog into an external helper. 2014-05-04 09:37:25 +12:00
Matthias Mailänder
8b3f15155e remappable resource types 2014-05-03 09:02:19 +02:00
Paul Chote
d73af0190f Add a new native-lua implementation. 2014-05-02 22:18:34 +12:00
Pavlos Touboulidis
45944a053c Replace (and remove) custom Set<T> with HashSet<T> 2014-04-27 00:01:33 +03:00
Pavlos Touboulidis
c28faffa45 Remove custom Stopwatch wrapper
Remove the redirection (that doesn't offer any new functionality)
and replace it with the familiar System.Diagnostics.Stopwatch.
2014-04-26 23:58:18 +03:00
Pavlos Touboulidis
275f6683c6 Remove unused and obsolete Cached.cs
This was similar to Lazy<T>
2014-04-26 23:28:23 +03:00
Pavlos Touboulidis
60732bd9bd Repurpose unused Timer.cs and add some loading perf metrics 2014-04-23 01:58:30 +03:00
Matthias Mailänder
5d6b26b971 fixed Reference is expected Line 89 position 6 2014-04-18 09:36:22 +02:00
Matthias Mailänder
9099e987d3 update to GeoIP2 and parse the database only once
closes #4227
2014-04-18 07:48:13 +02:00
Paul Chote
4935266945 Merge FileFormats dll into Game and reorganise namespaces. 2014-04-17 01:20:47 +12:00
Matthias Mailänder
67cd0645a4 update to .NET 4.0 2014-04-09 20:20:26 +12:00
Paul Chote
de4898badf Add RGBASpriteWidget. 2014-04-03 07:15:03 +13:00
Paul Chote
143d3aa083 Replace ShpImageWidget -> SpriteSequenceWidget. 2014-04-02 19:24:07 +13:00
Paul Chote
1ea48b0167 Add a lighter-weight SpriteWidget to eventually replace ShpWidget. 2014-04-01 22:16:10 +13:00
Paul Chote
2106393122 Simplify the server browser code. 2014-03-16 21:46:00 +13:00
Paul Chote
4c4783262f Simplify the replay browser code. 2014-03-16 21:45:59 +13:00
Paul Chote
c30b18a9d6 Introduce MapCache and MapPreview for improved UI map previews. 2014-03-16 21:45:59 +13:00
Paul Chote
0a4423a9b8 Rename Waypoint -> Immobile and move it into Mods.RA. 2014-03-13 00:59:35 +13:00
Paul Chote
a7d6f717c4 Overhaul ingame timer displays. Fixes #3062. 2014-03-12 17:19:06 +13:00
Paul Chote
7a034a6609 Move CPos and CVec into FileFormats. 2013-12-26 19:45:13 +13:00
Paul Chote
4e814a8c2e Move ShroudRenderer into a trait. 2013-12-11 19:22:55 +13:00