Files
Ultimate-Fishing-Simulator-…/Assets/Scripts/Assembly-CSharp/ECM2/Examples/Ladders/CharacterInput.cs
2026-03-04 09:37:33 +08:00

59 lines
1.3 KiB
C#

using UnityEngine;
namespace ECM2.Examples.Ladders
{
public class CharacterInput : MonoBehaviour
{
private Character _character;
private LadderClimbAbility _ladderClimbAbility;
private void Awake()
{
_character = GetComponent<Character>();
_ladderClimbAbility = GetComponent<LadderClimbAbility>();
}
private void Update()
{
Vector2 vector = new Vector2
{
x = Input.GetAxisRaw("Horizontal"),
y = Input.GetAxisRaw("Vertical")
};
Vector3 vector2 = Vector3.zero;
vector2 += Vector3.right * vector.x;
vector2 += Vector3.forward * vector.y;
if ((bool)_character.camera)
{
vector2 = vector2.relativeTo(_character.cameraTransform);
}
_character.SetMovementDirection(vector2);
if (Input.GetKeyDown(KeyCode.LeftControl) || Input.GetKeyDown(KeyCode.C))
{
_character.Crouch();
}
else if (Input.GetKeyUp(KeyCode.LeftControl) || Input.GetKeyUp(KeyCode.C))
{
_character.UnCrouch();
}
if (Input.GetButtonDown("Jump"))
{
_character.Jump();
}
else if (Input.GetButtonUp("Jump"))
{
_character.StopJumping();
}
if (Input.GetKeyDown(KeyCode.E))
{
_ladderClimbAbility.Climb();
}
else if (Input.GetKeyUp(KeyCode.E))
{
_ladderClimbAbility.StopClimbing();
}
}
}
}