Commit Graph

68 Commits

Author SHA1 Message Date
RoosterDragon
0c8bdff5be Formatting fixes.
Spaces to tabs, indents, etc.
2014-05-26 18:10:59 +01:00
RoosterDragon
b733465f33 General uncontroversial cleanup:
- Made private methods static where possible (runtime can elide checking the object for null).
- Declared attribute classes as sealed (allows reflection on attributes to complete faster).
- Moved some static cctor's into field initializers (static cctor's are slower than static field initializers).
- Made classes static if they contained only static methods (can't create instances of useless objects).
- Use inferable Exts.Lazy and not new Lazy<T>().
- Added required STAThread attribute to CrashDialog.
- Removed unused parameters in private methods.
- Added Serializable attribute to exceptions.
- Added parameter name in calls to ArgumentNullException.
- Use of as operator instead of is + cast.
- Changed (x as Foo).Bar anti-pattern into ((Foo)x).Bar. Results in sensible cast exceptions on error rather than null dereferences.
- Removed unused method in NullShader.
2014-05-23 15:50:54 +01:00
Matthias Mailänder
187362e80e rename OpenRA.Support.Random aka XRandom to MersenneTwister 2014-05-18 21:53:21 +02:00
Pavlos Touboulidis
6eabc6adf5 Remove one line of forgotten commented-out code 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
4935266945 Merge FileFormats dll into Game and reorganise namespaces. 2014-04-17 01:20:47 +12:00
reaperrr
55c1a93bf5 Follow-up on #4415. Fixed/precised some descriptions. 2014-01-04 14:31:29 +01:00
reaperrr
16fd5559e9 Un-hardcoded several radiuses and production-related count for units hanging around base 2014-01-04 01:19:03 +01:00
reaperrr
98f7995d00 Un-hardcoded excess power factor and excess power minimum 2014-01-04 01:16:00 +01:00
ScottNZ
aa5ea1a3ce Fix bots not deploying their mcv as a result of the DeployTransform change 2013-11-30 09:59:22 +13:00
Matthias Mailänder
da235d7aee .IsDead() includes the .Destroyed check 2013-11-17 23:32:32 +01:00
ScottNZ
3f117d751b Fix HackyAI confusing an empty sequence for null 2013-11-12 20:27:36 +13:00
ScottNZ
74e2baeb48 Fix a few spelling errors 2013-11-12 19:39:41 +13:00
ScottNZ
1394c1dcee Remove some misc redundancies 2013-11-12 19:39:39 +13:00
ScottNZ
8197f29606 Rename type parameter "ValueType" to "T" in HackyAI.cs 2013-11-12 19:39:39 +13:00
ScottNZ
7c5f3cc0f1 Replace some Where-FirstOrDefault chains with a single call to FirstOrDefault 2013-11-12 17:21:31 +13:00
Paul Chote
d272715c50 Revert "Filter AI targets based on what it can actually attack. Fixes #3763."
This reverts commit 4791f93d77.
2013-09-08 16:57:29 +12:00
buddytex
403e374b61 Removed default param usage. 2013-09-05 16:07:34 -05:00
Paul Chote
4791f93d77 Filter AI targets based on what it can actually attack. Fixes #3763. 2013-09-02 19:39:06 +12:00
Matthias Mailänder
1a33608b73 CleanSquads from units that got stolen 2013-08-29 22:26:34 +02:00
Paul Chote
7bcdf7d74b Merge CalculateFuzzy and CanAttack. 2013-08-29 20:14:37 +12:00
Paul Chote
233ba81976 Change Squad.IsEmpty -> IsValid. 2013-08-29 20:14:36 +12:00
Paul Chote
e667ed8f1a Make a bit more sense of FindAndDeployMcv. 2013-08-29 20:14:34 +12:00
Paul Chote
e30cd96500 Initial HackyAI cleanup pass. 2013-08-29 20:14:34 +12:00
Paul Chote
de8c736ca4 Split HackyAI into a more manageable set of files. 2013-08-29 20:14:33 +12:00
Paul Chote
6e13cb7f3b Unacquire invalid AI targets. 2013-08-22 19:32:25 +12:00
Matthias Mailänder
1279b23f62 check null because Nullable object must have a value
fixes #3642
2013-08-09 22:06:28 +02:00
Paul Chote
048bed0a5e Rename ITeleportable -> IPositionable. 2013-07-21 17:35:41 +12:00
Paul Chote
ecc119cb29 Combine IHasLocation -> IOccupySpace, IMove -> ITeleportable. 2013-07-21 17:33:32 +12:00
Paul Chote
200fde77b1 Remove unnecessary IHasLocation checks in HackyAI.
Existing checks for ITargetable / Building / etc
make these redundant.
2013-07-21 17:31:00 +12:00
Paul Chote
800acdbdf2 Rename FindUnitsInCircle -> FindActorsInCircle. 2013-07-20 15:34:27 +12:00
Paul Chote
c1a0836640 Convert HackyAI to world coords. 2013-07-20 15:34:26 +12:00
Nico
d3e760659a fix #3569 , and possible many other bugs... if the place is not close to the base, instead of returning the error, continue to see if there is another place to build 2013-07-14 23:31:09 -03:00
Nico
01f72f4f44 Revert "allow the AI to base-walk without restrictions"
This reverts commit d08d3d6e23.
2013-07-14 23:14:09 -03:00
Paul Chote
935b829532 Tidy TargetableUnit and subclasses. 2013-07-10 19:22:11 +12:00
Paul Chote
9eaeeffae9 CenterLocation.ToCPos() -> CenterPosition.ToCPos(). 2013-07-08 21:52:26 +12:00
Matthias Mailänder
d08d3d6e23 allow the AI to base-walk without restrictions
fixes #2899
2013-04-21 16:36:25 +02:00
Paul Chote
0167bbfbaa Move weapon/turret definitions out of AttackBase.
Weapons are now defined with the Armament trait
and turret parameters live in Turreted.
This has the side effect of allowing any number
and distribution of weapons and turrets.
2013-03-24 11:58:45 +13:00
Matthias Mailänder
36e820308f AI support power activation needs to go through order manager
fixes a desync whenever it will do so only on the host

+island map AI which will only build navy / air force to test
it and have a suitable bot for those map types (fixes pathfinder
eating up all CPU because it can't reach you with ground units)
2013-03-14 10:48:36 +01:00
Vladimir Komarov
b1afeb4408 fix comparing with null 2013-03-06 11:49:45 +01:00
Matthias Mailänder
f6d4b860ee husks are invalid targets 2013-03-06 11:49:45 +01:00
Matthias Mailänder
0e1229e8d1 fix air 2013-03-06 11:49:45 +01:00
Matthias Mailänder
d785430db5 fix refinery production 2013-03-06 11:49:45 +01:00
Matthias Mailänder
59d0cff410 rename lists in HackyAI.cs and fix function 2013-03-06 11:49:40 +01:00
Matthias Mailänder
e0b7242f1b adding new ai functional 2013-03-06 11:17:02 +01:00
Chris Forbes
6403c5e6af Fixed #2651: Units not in world should not be added to the attack force
Otherwise, a pillbox's e1 passenger is counted as part of the attack
force and ends up jamming HackyAI's attack logic until it is destroyed.
2013-02-05 07:09:05 +13:00
Chris Forbes
8dfd02e69e fix HackyAI's husk fetish 2012-10-13 13:45:35 +13:00
Chris Forbes
c8b1c1b999 tidy slightly in idle harv handler 2012-10-13 13:42:34 +13:00
Chris Forbes
bbab5237d1 get rid of crazy wasted work in HackyAI 2012-10-13 12:55:51 +13:00
Scott_NZ
5612a57842 and some more 2012-08-16 21:47:20 +12:00