Enable nullability in Content.Server (#3685)

This commit is contained in:
DrSmugleaf
2021-03-16 15:50:20 +01:00
committed by GitHub
parent 90fec0ed24
commit a5ade526b7
306 changed files with 1616 additions and 1441 deletions

View File

@@ -13,7 +13,7 @@ namespace Content.Server.AI.Utility.Actions.Clothing.Gloves
{
public sealed class EquipGloves : UtilityAction
{
public IEntity Target { get; set; }
public IEntity Target { get; set; } = default!;
public override void SetupOperators(Blackboard context)
{

View File

@@ -14,7 +14,7 @@ namespace Content.Server.AI.Utility.Actions.Clothing.Gloves
{
public sealed class PickUpGloves : UtilityAction
{
public IEntity Target { get; set; }
public IEntity Target { get; set; } = default!;
public override void SetupOperators(Blackboard context)
{

View File

@@ -13,7 +13,7 @@ namespace Content.Server.AI.Utility.Actions.Clothing.Head
{
public sealed class EquipHead : UtilityAction
{
public IEntity Target { get; set; }
public IEntity Target { get; set; } = default!;
public override void SetupOperators(Blackboard context)
{

View File

@@ -14,7 +14,7 @@ namespace Content.Server.AI.Utility.Actions.Clothing.Head
{
public sealed class PickUpHead : UtilityAction
{
public IEntity Target { get; set; }
public IEntity Target { get; set; } = default!;
public override void SetupOperators(Blackboard context)
{

View File

@@ -13,7 +13,7 @@ namespace Content.Server.AI.Utility.Actions.Clothing.OuterClothing
{
public sealed class EquipOuterClothing : UtilityAction
{
public IEntity Target { get; set; }
public IEntity Target { get; set; } = default!;
public override void SetupOperators(Blackboard context)
{

View File

@@ -14,7 +14,7 @@ namespace Content.Server.AI.Utility.Actions.Clothing.OuterClothing
{
public sealed class PickUpOuterClothing : UtilityAction
{
public IEntity Target { get; set; }
public IEntity Target { get; set; } = default!;
public override void SetupOperators(Blackboard context)
{

View File

@@ -13,7 +13,7 @@ namespace Content.Server.AI.Utility.Actions.Clothing.Shoes
{
public sealed class EquipShoes : UtilityAction
{
public IEntity Target { get; set; }
public IEntity Target { get; set; } = default!;
public override void SetupOperators(Blackboard context)
{

View File

@@ -14,7 +14,7 @@ namespace Content.Server.AI.Utility.Actions.Clothing.Shoes
{
public sealed class PickUpShoes : UtilityAction
{
public IEntity Target { get; set; }
public IEntity Target { get; set; } = default!;
public override void SetupOperators(Blackboard context)
{

View File

@@ -15,7 +15,7 @@ namespace Content.Server.AI.Utility.Actions.Combat.Melee
{
public sealed class EquipMelee : UtilityAction
{
public IEntity Target { get; set; }
public IEntity Target { get; set; } = default!;
public override void SetupOperators(Blackboard context)
{

View File

@@ -21,13 +21,13 @@ namespace Content.Server.AI.Utility.Actions.Combat.Melee
{
public sealed class MeleeWeaponAttackEntity : UtilityAction
{
public IEntity Target { get; set; }
public IEntity Target { get; set; } = default!;
public override void SetupOperators(Blackboard context)
{
MoveToEntityOperator moveOperator;
var equipped = context.GetState<EquippedEntityState>().GetValue();
if (equipped != null && equipped.TryGetComponent(out MeleeWeaponComponent meleeWeaponComponent))
if (equipped != null && equipped.TryGetComponent(out MeleeWeaponComponent? meleeWeaponComponent))
{
moveOperator = new MoveToEntityOperator(Owner, Target, meleeWeaponComponent.Range - 0.01f);
}

View File

@@ -15,7 +15,7 @@ namespace Content.Server.AI.Utility.Actions.Combat.Melee
{
public sealed class PickUpMeleeWeapon : UtilityAction
{
public IEntity Target { get; set; }
public IEntity Target { get; set; } = default!;
public override void SetupOperators(Blackboard context)
{

View File

@@ -19,12 +19,12 @@ namespace Content.Server.AI.Utility.Actions.Combat.Melee
{
public sealed class UnarmedAttackEntity : UtilityAction
{
public IEntity Target { get; set; }
public IEntity Target { get; set; } = default!;
public override void SetupOperators(Blackboard context)
{
MoveToEntityOperator moveOperator;
if (Owner.TryGetComponent(out UnarmedCombatComponent unarmedCombatComponent))
if (Owner.TryGetComponent(out UnarmedCombatComponent? unarmedCombatComponent))
{
moveOperator = new MoveToEntityOperator(Owner, Target, unarmedCombatComponent.Range - 0.01f);
}

View File

@@ -10,7 +10,6 @@ using Content.Server.AI.Utility.Considerations.State;
using Content.Server.AI.WorldState;
using Content.Server.AI.WorldState.States;
using Content.Server.AI.WorldState.States.Inventory;
using Robust.Shared.GameObjects;
using Robust.Shared.IoC;
namespace Content.Server.AI.Utility.Actions.Idle
@@ -26,6 +25,16 @@ namespace Content.Server.AI.Utility.Actions.Idle
{
var lastStorage = context.GetState<LastOpenedStorageState>().GetValue();
if (lastStorage == null)
{
ActionOperators = new Queue<AiOperator>(new AiOperator[]
{
new CloseLastStorageOperator(Owner),
});
return;
}
ActionOperators = new Queue<AiOperator>(new AiOperator[]
{
new MoveToEntityOperator(Owner, lastStorage),

View File

@@ -14,7 +14,7 @@ namespace Content.Server.AI.Utility.Actions.Nutrition.Drink
{
public sealed class PickUpDrink : UtilityAction
{
public IEntity Target { get; set; }
public IEntity Target { get; set; } = default!;
public override void SetupOperators(Blackboard context)
{

View File

@@ -15,7 +15,7 @@ namespace Content.Server.AI.Utility.Actions.Nutrition.Drink
{
public sealed class UseDrinkInInventory : UtilityAction
{
public IEntity Target { get; set; }
public IEntity Target { get; set; } = default!;
public override void SetupOperators(Blackboard context)
{

View File

@@ -14,7 +14,7 @@ namespace Content.Server.AI.Utility.Actions.Nutrition.Food
{
public sealed class PickUpFood : UtilityAction
{
public IEntity Target { get; set; }
public IEntity Target { get; set; } = default!;
public override void SetupOperators(Blackboard context)
{

View File

@@ -15,7 +15,7 @@ namespace Content.Server.AI.Utility.Actions.Nutrition.Food
{
public sealed class UseFoodInInventory : UtilityAction
{
public IEntity Target { get; set; }
public IEntity Target { get; set; } = default!;
public override void SetupOperators(Blackboard context)
{

View File

@@ -59,7 +59,11 @@ namespace Content.Server.AI.Utility.Actions
protected virtual void UpdateBlackboard(Blackboard context) {}
// Needs to be able to be instantiated without args via typefactory.
public UtilityAction() {}
public UtilityAction()
{
Owner = default!;
ActionOperators = default!;
}
public virtual void Shutdown() {}