Exemplo n.º 1
0
    private void PrepareScript()
    {
        if (null == TargetGameObject)
        {
            TargetGameObject = GameObject.FindGameObjectWithTag(TargetTag);
            if (null == TargetGameObject)
            {
                this.enabled = false;
                return;
            }
        }

        mPlayerDirectionDispatcher = (IPlayerDirectionDispatcher)TargetGameObject.GetComponent(typeof(IPlayerDirectionDispatcher));

        if (null != mPlayerDirectionDispatcher)
        {
            mPlayerDirectionDispatcher.PlayerDirectionChanged += OnPlayerDirectionChanged;
        }

        if (null == mTransform)
        {
            mTransform = transform;
        }

        mDistanceFromTarget = DistanceFromTarget;

        mTargetOffset = Offset;

        mCentralizedPosition = GetTargetPosition();
        mTransform.position  = mCentralizedPosition;
        mTransform.LookAt(mTargetPosition);
        mTransform.Translate(mTargetOffset);
    }
Exemplo n.º 2
0
 private void OnPlayerDirectionChanged(IPlayerDirectionDispatcher sender, PlayerDirectionEventArgs e)
 {
     PlayerDirection = e.PlayerFacingRight;
 }