public Ship(IMove moveImplementation, IRotation rotationImplementation, IShoot shootImplementation, Transform transform, ITransformRegistry transformRegistry, Stat health, ShipMarkUp shipGameObjectMarkUp) { _moveImplementation = moveImplementation; _rotationImplementation = rotationImplementation; shooter = shootImplementation; GameTransform = transform; TransformRegistryBind = transformRegistry; TransformRegistryBind.RegisterTransform(this, GameTransform); StatHolder = new StatHolder(); healthStat = health; healthStat.CurrentChanged += ProcessHealthChange; StatHolder.AddStat(StatType.Health, healthStat); colliderListener = shipGameObjectMarkUp.ColliderListener; colliderListener.EnterCollider += ProcessCollisions; }
private void Initialize() { playerLoopProcessor = new PlayerLoopProcessor(); transformRegistry = new TransformRegistry(); InitializePlayer(); }