Skip to content

Instantly share code, notes, and snippets.

@DeoEsor
Created September 1, 2023 20:51
Show Gist options
  • Save DeoEsor/de84e8f75782d3ca9bdf64b5e714b252 to your computer and use it in GitHub Desktop.
Save DeoEsor/de84e8f75782d3ca9bdf64b5e714b252 to your computer and use it in GitHub Desktop.
ХУЯК ЕБАК И В ПРОД
float horizontalInput = Input.GetAxis("Horizontal");
float verticalInput = Input.GetAxis("Vertical");
Debug.Log(horizontalInput + " " + verticalInput);
//****************************
// HP MANAGEMENT SEGMENET
if(xp<15) //кто блять HP назвал xp
UIManager.GetInstance().UIDamaged();
//****************************
if (Input.GetKey(KeyCode.Space)) // спринт при нажатии на пробел
{
speed = sprintSpeed;
}
else speed = maxSpeed;
//спринт переделать, хрень
float rotation;
if (horizontalInput < 0) //флипает спрайт при инпуте
sprt.flipY = true;
else if (horizontalInput > 0)
sprt.flipY = false;
if (verticalInput != 0f || horizontalInput != 0f)
{
rotation = Mathf.Atan2(verticalInput, horizontalInput) * Mathf.Rad2Deg;
transform.localEulerAngles = new Vector3(0, 0, rotation);
}
else if (verticalInput == 0f && horizontalInput == 0f)
{
int Yrot = sprt.flipY switch //в зависимости от того, перевёрнут или нет спрайт нужно крутить для Idle в разные стороны
{
true => 180,
false => 0,
};
if (Yrot == 180)
{
lt.gameObject.transform.Rotate(0, 180, 0);
}
else
lt.gameObject.transform.Rotate(0, 0, 0);
transform.localEulerAngles = new Vector3(0, 0, Yrot); //Рот ебал два дня эту функцию писать
}
Vector2 movement = new Vector2(horizontalInput, verticalInput).normalized;
if (movement == Vector2.zero) pAnimator.SetBool("IsMoving", false);
else pAnimator.SetBool("IsMoving", true);
pMovement.MovePosition(pMovement.position + movement * speed * Time.fixedDeltaTime); // добавила скорость
@DeoEsor
Copy link
Author

DeoEsor commented Sep 1, 2023

float horizontalInput = Input.GetAxis("Horizontal"); float verticalInput = Input.GetAxis("Vertical"); Debug.Log(horizontalInput + " " + verticalInput);
Крч так никто не делает уже давно сейчас все сидят на Input System (первая ссылка тупо, cама погуглишь) https://www.youtube.com/watch?v=SWyXvGXzciA
2.
Debug.Log как правило оборачивают в # if UNITY_ENGINE директиву
3.

if(xp<15) //кто блять HP назвал xp UIManager.GetInstance().UIDamaged();
Именно.
а про синглтоп ну прикольно но в норм компаниях не юзается DI/IoC все дела
UIDamaged() ну прикольно, но либо нейминг поправить из серии мол хочу чисто эффект и тогда UITriggerPlayerDamaged
ну к примеру
либо передавать урон мол че UI то выводить?

4.//спринт переделать, хрень Именно
5.

if (verticalInput != 0f || horizontalInput != 0f)
{
    rotation = Mathf.Atan2(verticalInput, horizontalInput) * Mathf.Rad2Deg;
    transform.localEulerAngles = new Vector3(0, 0, rotation);

}

бля пиздец сложно в двух словах "Уровни абстракции не соблюдаются"
6.
`
int Yrot = sprt.flipY switch //в зависимости от того, перевёрнут или нет спрайт нужно крутить для Idle в разные стороны
{
true => 180,
false => 0,

};
` 
switch expression - прикольно
Дохуя ифоф в целом

else pAnimator.SetBool("IsMoving", true); тож фигня

@DeoEsor
Copy link
Author

DeoEsor commented Sep 1, 2023

Ну а вообще
Ну декомпозировать тут все к хуям надо
Update должны быть маленькие

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment