CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Problème score Unity

Akkro79
Akkro79
Niveau 10
13 février 2015 à 22:37:40

Bonjour,
Lorsque je ramasse un bonus mon score monte de 500 points, alors qu'il ne devrait augmenter que de 125 points, idem pour mon score qui monte de 10 lorsque je ramasse un pnj alors qu'il devrait monter de 5..
Je ne comprend pas pourquoi donc si quelqu'un aurait la solution à ce problème :)
Le script en question :

var capsuleSound : AudioClip;
var looseSound : AudioClip;
var bonusSound : AudioClip;

var looseGame : String;
var theEnd : String;

var couleurs : Transform;
var boom : Transform;
var bonusEffect : Transform;

private var score = 0;

private var porte1 : GameObject;
porte1 = GameObject.Find("porte");

function OnTriggerEnter(objetInfo : Collider)
{
if (objetInfo.gameObject.tag == "pnj")
	{
	audio.PlayOneShot(capsuleSound);
	Instantiate(couleurs, transform.position, transform.rotation);
	Destroy(objetInfo.gameObject);
	score += 5;
	scoreScript.score +=5;
	}
else if (objetInfo.gameObject.tag == "bonus")
	{
	audio.PlayOneShot(bonusSound);
	Instantiate(bonusEffect, transform.position, transform.rotation);
	Destroy(objetInfo.gameObject);
	score += 125;
	scoreScript.score += 125;
	}
else if (objetInfo.gameObject.tag == "water")
	{
	audio.PlayOneShot(looseSound);
	yield WaitForSeconds (2.0);
	Application.LoadLevel(looseGame);
	scoreScript.score = 0;
	}
else if (objetInfo.gameObject.tag == "porte" && score >=500)
	{
	Destroy(porte1);
	Instantiate(boom, transform.position, transform.rotation);
	}
	else if (objetInfo.gameObject.tag == "fin" && score >=500)
	{
	yield WaitForSeconds (2);
	Application.LoadLevel(theEnd);
	}
}

Avec mon score script :

static var score : int = 0;

function OnGUI(){
	GUI.color = Color.red;
	GUI.TextArea(Rect(10, 10, 50, 25), ' '+ score);
}

function Update(){
	if(score <=0)
	{
		score = 0;
	}
}
Akkro79
Akkro79
Niveau 10
14 février 2015 à 16:04:42

Je viens de trouver, c'est que mes deux variables (celles dans le scoreScript et dans le collisionScript) ont le même nom.
J'ai décidé de remplacer celle du scoreScript par score1 mais maintenant j'ai ce message :
Assets/data/script/collisionScript.js(34,15): BCE0034: Expressions in statements must only be executed for their side-effects.

Quel erreur ai-je fait ?

var capsuleSound : AudioClip;
var looseSound : AudioClip;
var bonusSound : AudioClip;

var looseGame : String;
var theEnd : String;

var couleurs : Transform;
var boom : Transform;
var bonusEffect : Transform;

var score = 0;
var score1 = scoreScript.score1;

private var porte1 : GameObject;
porte1 = GameObject.Find("porte");

function OnTriggerEnter(objetInfo : Collider)
{
if (objetInfo.gameObject.tag == "pnj")
	{
	audio.PlayOneShot(capsuleSound);
	Instantiate(couleurs, transform.position, transform.rotation);
	Destroy(objetInfo.gameObject);
	score += 5;
	score1 += 5;
	}
else if (objetInfo.gameObject.tag == "bonus")
	{
	audio.PlayOneShot(bonusSound);
	Instantiate(bonusEffect, transform.position, transform.rotation);
	Destroy(objetInfo.gameObject);
	score +125;
	score1 += 125;
	}
else if (objetInfo.gameObject.tag == "water")
	{
	audio.PlayOneShot(looseSound);
	yield WaitForSeconds (2.0);
	Application.LoadLevel(looseGame);
	score1 += 0;
	}
else if (objetInfo.gameObject.tag == "porte" && score >=500)
	{
	Destroy(porte1);
	Instantiate(boom, transform.position, transform.rotation);
	}
	else if (objetInfo.gameObject.tag == "fin" && score >=500)
	{
	yield WaitForSeconds (2);
	Application.LoadLevel(theEnd);
	}
}
Message édité le 14 février 2015 à 16:05:23 par Akkro79
Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Programmation
  • Création de sites web
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment