protected override void InvokeAction() { SmoothTransition smoothTransition = gameObject.AddComponent <SmoothTransition>(); Vector3 startPos = gameObject.transform.localPosition; if (closed) { smoothTransition.SetupParameters(startPos, gameObject.transform.localPosition + slideVector, openingSlideSpeed); } else { smoothTransition.SetupParameters(startPos, gameObject.transform.localPosition - slideVector, closingSlideSpeed); } closed = !closed; }
protected override void InvokeAction() { SmoothTransition smoothTransition = gameObject.AddComponent <SmoothTransition>(); Vector3 startPos = transform.localPosition; Vector3 endPos = transform.localPosition + slideVector; smoothTransition.SetupParameters(startPos, endPos, slideSpeed); slideVector *= -1; }
protected override void InvokeAction() { GameObject player = GameObject.FindGameObjectWithTag("Player"); // If there is already SmoothTransition on player - remove it. // It happenes when player is already moving from one footprint to another if (player.GetComponent <SmoothTransition>()) { Destroy(player.GetComponent <SmoothTransition>()); } SmoothTransition smoothTransition = player.AddComponent <SmoothTransition>(); Vector3 startPos = player.transform.position; Vector3 endPos = new Vector3(transform.position.x, player.transform.position.y, transform.position.z); smoothTransition.SetupParameters(startPos, endPos, walkSpeed); }