public void Init( KinimaticMotorController motorController, CameraController cameraController, HauntController hauntController, KeyBindingsController keyBindings, BarrierController barrierController, ActionLockController actionLockController ) { var body = GetComponentInChildren <Rigidbody>(); this.actionLockController = actionLockController; directionInput = new InputDirectionController(keyBindings); motor = motorController.GetMotor(motorConfig, body, directionInput); motorAnimator = new MotorAnimator(directionInput, GetComponentInChildren <Animator>(), walkStateName, idleStateName); cameraController.Follow(transform); haunter = new Haunter() { root = transform }; hauntController?.AddHaunter(haunter); interactKey = keyBindings.GetKey(KeyAction.Interact); dimmer = new ProximityDimmer() { root = transform, radius = dimRadius }; builder = new BarrierBuilder() { root = transform }; barrierController?.SetBuilder(builder); }
public void SetBuilder(BarrierBuilder builder) { this.builder = builder; builder.OnBuildRequest += HandleBuildRequest; }