У меня есть 2 скрипта которые связаны между собой.Вот первый,который отвечает в основном за функцию flip
using UnityEngine;
public class HeroController : MonoBehaviour
{
public static Animator anim;
public static float moveInput = 0;
private bool facingRight = true;
public float speedMain = 0;
Rigidbody2D rb;
void Start()
{
anim = GetComponent();
rb = GetComponent();
moveInput = 0;
}
void FixedUpdate()
{
rb.velocity = new Vector2(moveInput * speedMain, rb.velocity.y);
if (moveInput > 0 || moveInput < 0)
{
anim.SetInteger("Anim", 2);
}
else
{
anim.SetBool("run", false);
}
if (facingRight == false && moveInput > 0)
{
gameObject.GetComponent().flipX = false;
Flip();
}
else if (facingRight == true && moveInput < 0)
{
gameObject.GetComponent().flipX = true;
Flip();
}
}
public void Flip()
{
facingRight = !facingRight;
}
}
А вот второй который отвечает уже за движение через джойстик:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class cherocntrlbtn : MonoBehaviour
{
public Joystick joystick;
Rigidbody2D rb;
Vector3 position;
private void Update()
{
if (joystick.Horizontal > 0.1f)
{
HeroController.moveInput = 1;
}
else if (joystick.Horizontal < -0.1f)
{
HeroController.moveInput = -1;
}
else
{
HeroController.moveInput = 0;
}
}
}
Вот.И я почему-то не могу дописать мой код чтобы перс прыгал если сместить джойстик вверх.помогите пожалуйста.
Если вдруг у вас тоже написана игра с джойстиком,отправьте пожалуйста свой скрипт.
Вопрос задан
более трёх лет назад
167 просмотров