Пример #1
0
    public virtual void OnSpawn(MatchSimulationUnit unitState, MatchSimulation matchSimulation)
    {
        InitializeChildComponents();
        transform.position = unitState.MovementState.Value.GetUnityPosition();
        transform.rotation = unitState.MovementState.Value.GetUnityRotation();

        unitState.MovementState
        .Subscribe(OnPositionRotationUpdate)
        .AddTo(this);

        healthbar.Initialize(unitState);

        matchSimulation.SimulationFrameSubject
        .Subscribe(UpdateToNextState)
        .AddTo(this);

        unitState.AbilityActivationSubject
        .Subscribe(abilityActivation => OnAbilityActivation(abilityActivation.Rotation, abilityActivation.StartFrame, abilityActivation.ActivationFrame));
    }