Итак, у меня есть эта часть кода, которая увеличивает счет после того, как мяч попадает в кирпич, но не увеличивается в зависимости от того, как я, по-моему, запрограммировал его. Когда он попадает в brick3, я хочу, чтобы он увеличил показатель на 10. У меня есть переменная с названием bonusBall, которая, как предполагается, умножает все, что имеет счет, на 2. bonusBall используется только тогда, когда мяч попадает в кирпич сразу после наложения другого кирпича. Поэтому, когда он попадает в кирпич2 после того, как он попадает в brick3, он должен умножить счет на 2. В этом scenerio оценка должна равняться 40, потому что она поражает brick3 (10 очков), тогда она поражает brick2 (10 очков) и потому, что она поражает brick2 right после удара кирпича 3 счет умножается на 2, что приводит нас к общей сложности 40. Моя реальная проблема заключается в том, что когда мяч сталкивается с веслом, мне нужно, чтобы значение бонусного бонуса возвращалось к 0. У меня есть оператор If для этого но он, похоже, не работает. После того, как мяч попадает на весло, счет все равно умножается на 2, когда он попадает в кирпич. Вот код:Unity 3D Как получить мой счет, чтобы увеличить его?
#pragma strict
private var score : int=0;
private var comboBall : int=0;
var guiScore : GUIText;
var blue : Texture;
var isBlue : boolean = false;
var particle3 :boolean = false;
var brickPieces : ParticleSystem;
var brickPieces2 : ParticleSystem;
function Start() {
guiScore.text="Score: 0";
}
function OnCollisionEnter(col : Collision){
if(col.collider.name == "Brick3"){
Instantiate(brickPieces,transform.position,transform.rotation);
brickPieces.Play();
particle3 = true;
Destroy(col.gameObject);
score += 10;
guiScore.text= "Score: " + score;
renderer.material.mainTexture = blue;
isBlue = true;
}
if(col.collider.name == "Brick2" && isBlue == true){
Instantiate(brickPieces2,transform.position,transform.rotation);
brickPieces2.Play();
Destroy(col.gameObject);
score += 10;
comboBall = 2;
if(comboBall == 2){
score = comboBall*score;
}
guiScore.text= "Score: " + score;
print("collided with brick");
}
if(col.collider.name == "paddle"){
comboBall = 0;
}