Problem is Insta shoot OnClick button
OnClick BurgerButton
- Jelly.Button ( DisableJump)
- Burger.Button(EnableShoot)
Any ideas?
public class JellyJump : MonoBehaviour
{
public Player player;
public Trajectory trajectory;
private JellyButton jellyButton;
private BurgerButton burgerButton;
private MeatButton meatButton;
Camera cam;
public float jumpForce = 4f;
bool isDragging = false;
Vector2 startPoint;
Vector2 endPoint;
Vector2 direction;
Vector2 force;
float distance;
void Start()
{
cam = Camera.main;
player.DesactivatePlayerRb();
jellyButton = GameObject.Find("ButtonJelly").GetComponent<JellyButton>();
burgerButton = GameObject.Find("ButtonBurger").GetComponent<BurgerButton>();
meatButton = GameObject.Find("ButtonMeat").GetComponent<MeatButton>();
}
void Update()
{
if (jellyButton.isJellyActivate | burgerButton.isBurgerActivate | meatButton.isMeatActivate)
{
if (Input.GetMouseButtonDown(0))
{
isDragging = true;
OnDragStart();
}
if (Input.GetMouseButtonUp(0))
{
isDragging = false;
OnDragEnd();
}
if (isDragging)
{
OnDrag();
}
}
}
//-Drah(тянем)-------------------------------------
void OnDragStart()
{
player.DesactivatePlayerRb();
startPoint = cam.ScreenToWorldPoint(Input.mousePosition);
trajectory.Show();
}
void OnDrag()
{
endPoint = cam.ScreenToWorldPoint(Input.mousePosition);
distance = Vector2.Distance(startPoint, endPoint);
direction = (startPoint - endPoint).normalized;
force = direction * distance * jumpForce;
trajectory.UpdateDots(player.Pos, force);
}
void OnDragEnd()
{
if (jellyButton.isJellyActivate)
{
//прыгаем
player.ActivatePlayerRb();
player.Jump(force);
}
if (burgerButton.isBurgerActivate && player.hasPowerup)
{
player.ShootBurger(force);
}
if (meatButton.isMeatActivate && player.hasPowerup)
{
player.ShootMeat(force);
}
trajectory.Hide();
}
[code=CSharp]public class JellyButton : MonoBehaviour
{
public Player player;
public bool isJellyActivate = false;
public void EnableJump()
{
isJellyActivate = true;
player.burgerIndicator.gameObject.SetActive(false);
player.meatIndicator.gameObject.SetActive(false);
}
public void DisableJump()
{
isJellyActivate = false;
}
}
}
}[/code]
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class BurgerButton : MonoBehaviour
{
public Player player;
public bool isBurgerActivate = false;
public void EnableShoot()
{
isBurgerActivate = true;
player.burgerIndicator.gameObject.SetActive(true);
player.meatIndicator.gameObject.SetActive(false);
}
public void DisableShoot()
{
isBurgerActivate = false;
}
}