public void SetTarget(Entity target) { if (Target != null) { return; } Target = target; _moveComp = Target.GetComponent <HexMovementComp>(); movementGroup.SetActive(_moveComp != null); if (_moveComp != null) { _moveComp.MovementChanged += OnMovementChanged; OnMovementChanged(); } _vitalityComp = Target.GetComponent <VitalityComp>(); vitalityGroup.SetActive(_vitalityComp != null); if (_vitalityComp != null) { _vitalityComp.HealthChanged += OnHealthChanged; OnHealthChanged(); } _weaponComp = Target.GetComponent <WeaponComp>(); weaponGroup.SetActive(false); if (_weaponComp != null) { _weaponComp.StatusChanged += OnWeaponStatusChanged; UpdateWeapon(); } nameText.text = Target.name; }
public EntityMovementInputState(InputStateMachine context, Entity entity) : base(context) { Entity = entity; _moveComp = entity.GetComponent <HexMovementComp>(); _gm = _locator.GetService <IGameManager>(); _map = _locator.GetService <IHexMap>(); _navField = _map.GetNav(new HexNavSettings(_moveComp.Position, _moveComp.jumpHeight)); }