// even if we don't check for obstructions, we may still need to check the range.
var xform = Transform(user);
- if (xform.MapID != coords.GetMapId(EntityManager))
+ if (xform.MapID != _transformSystem.GetMapId(coords))
return false;
if (range <= 0)
return true;
-
- return coords.InRange(EntityManager, _transformSystem, Transform(user).Coordinates, range);
+ return _transformSystem.InRange(coords, xform.Coordinates, range);
}
return _interactionSystem.InRangeUnobstructed(user, coords, range: range);
-using System.Linq;
using Content.Shared.Alert;
-using Content.Shared.Body.Part;
-using Content.Shared.Body.Systems;
using Content.Shared.CombatMode.Pacification;
using Content.Shared.Damage.Components;
using Content.Shared.Damage.Systems;
[Dependency] private readonly MovementSpeedModifierSystem _speedModifier = default!;
[Dependency] protected readonly SharedAppearanceSystem Appearance = default!;
[Dependency] private readonly SharedAudioSystem _audio = default!;
- [Dependency] private readonly SharedBodySystem _body = default!;
[Dependency] protected readonly SharedContainerSystem Container = default!;
[Dependency] private readonly SharedDoAfterSystem _doAfter = default!;
[Dependency] private readonly SharedHandsSystem _hands = default!;
[Dependency] private readonly IPrototypeManager _proto = default!;
[Dependency] private readonly ISerializationManager _serManager = default!;
[Dependency] private readonly MarkingManager _markingManager = default!;
+ [Dependency] private readonly GrammarSystem _grammarSystem = default!;
[ValidatePrototypeId<SpeciesPrototype>]
public const string DefaultSpecies = "Human";
targetHumanoid.MarkingSet = new(sourceHumanoid.MarkingSet);
targetHumanoid.Gender = sourceHumanoid.Gender;
+
if (TryComp<GrammarComponent>(target, out var grammar))
- grammar.Gender = sourceHumanoid.Gender;
+ _grammarSystem.SetGender((target, grammar), sourceHumanoid.Gender);
Dirty(target, targetHumanoid);
}
humanoid.Gender = profile.Gender;
if (TryComp<GrammarComponent>(uid, out var grammar))
{
- grammar.Gender = profile.Gender;
+ _grammarSystem.SetGender((uid, grammar), profile.Gender);
}
humanoid.Age = profile.Age;
if (Deleted(target))
return false;
- if (!_containerSystem.TryGetContainingContainer((target, null, null), out var container))
+ if (!_containerSystem.TryGetContainingContainer(target, out var container))
return false;
var wearer = container.Owner;
var userVelocity = _physics.GetMapLinearVelocity(ev.Performer);
// If applicable, this ensures the projectile is parented to grid on spawn, instead of the map.
- var fromMap = fromCoords.ToMap(EntityManager, _transform);
+ var fromMap = _transform.ToMapCoordinates(fromCoords);
var spawnCoords = _mapManager.TryFindGridAt(fromMap, out var gridUid, out _)
- ? fromCoords.WithEntityId(gridUid, EntityManager)
+ ? _transform.WithEntityId(fromCoords, gridUid)
: new(_mapManager.GetMapEntityId(fromMap.MapId), fromMap.Position);
var ent = Spawn(ev.Prototype, spawnCoords);
- var direction = toCoords.ToMapPos(EntityManager, _transform) -
- spawnCoords.ToMapPos(EntityManager, _transform);
+ var direction = _transform.ToMapCoordinates(toCoords).Position -
+ _transform.ToMapCoordinates(spawnCoords).Position;
_gunSystem.ShootProjectile(ent, direction, userVelocity, ev.Performer, ev.Performer);
}
// End Projectile Spells
// Just checks if any grids inside of a buffer range at the target position.
_grids.Clear();
- var mapCoordinates = coordinates.ToMap(EntityManager, XformSystem);
+ var mapCoordinates = XformSystem.ToMapCoordinates(coordinates);
var ourPos = Maps.GetGridPosition((shuttleUid, shuttlePhysics, shuttleXform));
// Move the entity and dirty it (we use the map ID from the entity so noone can try to be funny and move the item to another map)
var transform = EntityManager.GetComponent<TransformComponent>(moved);
Transforms.SetParent(moved, transform, _mapMan.GetMapEntityId(transform.MapID));
- Transforms.SetLocalPositionNoLerp(transform, msg.Coordinates.Position);
+ Transforms.SetLocalPositionNoLerp(moved, msg.Coordinates.Position, transform);
}
private void OnDraggingPlayerChanged(TabletopDraggingPlayerChangedEvent msg, EntitySessionEventArgs args)
-using System.Linq;
+using System.Linq;
using Content.Shared.Ghost;
using Content.Shared.Movement.Pulling.Components;
using Content.Shared.Movement.Pulling.Systems;