Добрый день! Суть вопроса такова: есть кликер
. Как только значение тапов - перменой taps станет нулем нужно чтобы к score - к очкам прибавилась 1.
Сделал такой вариант, но как только выражение taps становиться равно нулю, к переменой score бесконечно прибавляется единица:
if (taps == 0)
{
beh.score_1++;
}
Скрипт тапов:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class pop_on_touch : MonoBehaviour
{
public Vector2 scale1;
public UnityEngine.UI.Text GoldDisplay;
public uint taps = 50;
private score beh;
void Awake()
{
beh = GetComponent();
}
void Update()
{
if(Input.GetMouseButton(0))
{
transform.localScale = Vector2.Lerp(transform.localScale, scale1, 20.0f * Time.deltaTime);
}
else
{
transform.localScale = new Vector2(6, 6);
}
GoldDisplay.text = "Тапов: " + taps;
if (Input.GetMouseButtonDown(0))
{
taps -= 1;
}
if (taps == 0)
{
beh.score_1++;
}
}
}
Скрипт Очков:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class score : MonoBehaviour
{
public UnityEngine.UI.Text ScoreDisplay;
public int score_1 = 0;
void Start()
{
}
// Update is called once per frame
void Update()
{
ScoreDisplay.text = "Очков: " + score_1;
}
}