Erreur BCE0019 JS

Pour les scripts écrits en Javascript (UnityScript). :!: Obsolète :!:
Règles du forum
Merci de respecter la NOMENCLATURE suivante pour vos TITRES de messages :

Commencez par le niveau de vos scripts
DB = Débutant
MY = Moyen
CF = Confirmé

Puis le domaine d'application
-RS = Réseau
-AL = Algorithmie

Exemple :

[DB-RS] Mouvement perso multijoueur
ColChope
Messages : 121
Inscription : 20 Juin 2014 19:13

Re: Erreur BCE0019 JS

Message par ColChope » 10 Fév 2015 21:48

Code : Tout sélectionner

Je suppose qu'il faut que tu lances un timer pour connaitre le temps écoulé. C'est ce qu'il faut faire apparaître dans ta fonction.
D'accord, mais ce que je ne comprend pas, c'est dans ce cas, à quoi sert le script Timer.js, si je dois coder le timer dans StartTimer ?
Moi ce que j’imaginais, c'est que quand on passe le trigger, le script StartTimer est activé et "active à son tour" le script Timer, où alors lance le timer à partir du code qui est dans Timer.js.

Code : Tout sélectionner

Je me rends compte que tes connaissances en prog sont plus de la débrouille qu'autre chose.
Oui exactement, je ne prends pas le temps d'apprendre la programmation en js, soit parce que je ne l'ai tout simplement pas, soit parce que, en suivant des tutos, je me décourage assez vite en voyant qu'ils m'apprennent des choses qui n'ont aucun rapport avec Unity, c'est à dire les bases. Mais je sais que je dois connaître les bases avant d'apprendre le langage qui est plus spécifiquement dédié à Unity...

Et bien, tout simplement, je cherche à faire un timer. En gros, on passe dans un portail de départ, qui est mon premier trigger qui est relié au script StartTimer. Là, un "compteur" se lance en haut à gauche de l'écran, et ne s'arrête que quand on a passé le portail de fin, qui est relié au script StopTimer, et qui doit aussi afficher sur le HUD le temps effectué pour traverser le niveau.
Mon script marchait très bien auparavant, mais mon ami qui l'avait programmé, avait effectué quelques modifs, sans le recompleter, et me l'a laissé non fonctionnel (dans cet état), et du coup je ne sais pas comment régler le problème...

ColChope
Messages : 121
Inscription : 20 Juin 2014 19:13

Re: Erreur BCE0019 JS

Message par ColChope » 11 Mars 2015 00:15

Bonjour !

Bon, je fais un up sur le topic, qui semble un peu mort x)
Donc, bah si quelqu'un sait explicitement comment régler ce problème, ce serait super cool :D

Merci par avance ;)

ColChope
Messages : 121
Inscription : 20 Juin 2014 19:13

Re: Erreur BCE0019 JS

Message par ColChope » 26 Mars 2015 20:39

Toujours pas ? :/

Idolo
Messages : 89
Inscription : 11 Mars 2015 10:16

Re: Erreur BCE0019 JS

Message par Idolo » 26 Mars 2015 21:54

C'est un peu codé avec les pieds désolé je suis pas très bon
TriggerStart.js:

Code : Tout sélectionner

#pragma strict
static var TimerEnter = false;
private var startTimer:int;
private var minutes : int;
private var seconds : int;
private var centiemes : int;

function OnTriggerEnter() {
TimerEnter = true;
startTimer = Time.time;
}

function Update(){
    var time = Time.time - startTimer;
    minutes = time / 60;
    seconds = time % 60;
    centiemes = (time*100)%100;
}

function OnGUI () {
		if (TimerEnter) {
			GUI.Label (Rect (10, 10, 100, 20), "Chrono: " +minutes);
			GUI.Label (Rect (80, 10, 100, 20), " : " +seconds);
			GUI.Label (Rect (120, 10, 100, 20), " : " +centiemes);
		}
		}
TriggerEnd.js:

Code : Tout sélectionner

#pragma strict

function OnTriggerEnter() {
TriggerStart.TimerEnter = false;
}

function Update () {
}
En espérant que c'est ce que tu voulais faire :)
Ps: Tu dois avoir un collider avec Is Trigger de coché sur les deux objets, si tu as des problèmes parce que de ce fait tes objets passent au travers du sol coche is kinematic dans le rigibody des objets.

ColChope
Messages : 121
Inscription : 20 Juin 2014 19:13

Re: Erreur BCE0019 JS

Message par ColChope » 29 Mars 2015 18:07

Mais là tu modifies tous mes codes non ?

Parce que initialement, j'ai 3 scripts (Start/StopTimer, et Timer). Timer contient le timer, StartTimer le lance, et StopTimer l'arrête (et affiche un message à l'écran).

Faut juste que je déclare les variables dans Timer.js en gros, mais je sais pas comment :/

Idolo
Messages : 89
Inscription : 11 Mars 2015 10:16

Re: Erreur BCE0019 JS

Message par Idolo » 29 Mars 2015 19:42

En effet j'ai tout modifié, tu met le premier script sur l'objet qui lancera le chrono au contact du joueur (condition qui peut aisément être changé) et le second sur l'objet qui au contact du héro stoppera le chrono.

Test les scripts et voit après me/nous pour dire plus précisément ce qui ne va pas ou ce qu'il manque.

ColChope
Messages : 121
Inscription : 20 Juin 2014 19:13

Re: Erreur BCE0019 JS

Message par ColChope » 29 Mars 2015 22:55

Alors, déjà, il y a des espaces entre les minutes, les secondes et les centièmes qu'il faudrait supprimer.
Ensuite, il n'y a plus de message à la fin, quand on atteint le trigger de fin.

Mais le plus simple serait de reprendre mes scripts, non ?

Idolo
Messages : 89
Inscription : 11 Mars 2015 10:16

Re: Erreur BCE0019 JS

Message par Idolo » 30 Mars 2015 10:25

Pour l'espace entre les minutes, les secondes et les centièmes, je te laisse le modifié, premier chiffre après "GUI.Label (Rect (" dans le TiggerStart.js

Pour ce qui est du message de fin Il suffit de le rajouter dans le TriggerEnd.js
Change le voir par ça:

Code : Tout sélectionner

#pragma strict
private var arriver = false;
var myStyle : GUIStyle;

function OnTriggerEnter() {
TriggerStart.TimerEnter = false;
arriver = true;
}

function OnGUI () {
  myStyle.fontSize = 50;
		if (arriver) {
			GUI.Label (Rect (300, 300, 100, 20), "BRAVO", myStyle);
			End();
		}
		}
		
function End () {
			yield WaitForSeconds(2f);
			arriver = false;
		}

ColChope
Messages : 121
Inscription : 20 Juin 2014 19:13

Re: Erreur BCE0019 JS

Message par ColChope » 31 Mars 2015 20:01

Bon, je vais essayer, je te tiens au courant.

Mais bon, ça m'embête un peu de changer tout mon code...
Enfin bon, je vais pas m'en plaindre ;)

ColChope
Messages : 121
Inscription : 20 Juin 2014 19:13

Re: Erreur BCE0019 JS

Message par ColChope » 31 Mars 2015 22:33

Bon, alors :
J'ai modifié les espaces, ça c'est bon, et je voulais changer la couleur et la taille des textes. Je sais pas pourquoi, mais ça ne marche pas...
J'ai rajouté ça :

Code : Tout sélectionner

myStyle.fontSize = 20;
         myStyle.normal.textColor = Color.black;
Devant ça :

Code : Tout sélectionner

if (TimerEnter) {
         GUI.Label (Rect (10, 10, 100, 20), "" +minutes);
         GUI.Label (Rect (20, 10, 100, 20), " : " +seconds);
         GUI.Label (Rect (40, 10, 100, 20), " : " +centiemes);
      }
Mais ça ne change rien...

Aussi, j'ai une plateforme en sphère. Bizarrement, quand je suis dessus, mon personnage ne peut plus sauter O.o Pourquoi ?

Ensuite, j'ai un script qui restart le niveau quand on tombe :

Code : Tout sélectionner

#pragma strict 

var levelToLoad : String; 
public var nbdemort= 0; 
var monGUIText:GUIText;
var style : GUIStyle;

function Start()
{
    if(PlayerPrefs.GetInt("nbdemort") != null)
    {
       nbdemort =  PlayerPrefs.GetInt("nbdemort"); 
	}
}
function OnTriggerEnter(hit : Collider) 
{ 
	nbdemort ++; 
    PlayerPrefs.SetInt("nbdemort", nbdemort);
	Application.LoadLevel("Hard1"); 
}

function Update(){
	if(Input.GetKey(KeyCode.F6))
			{
          		nbdemort= 0;
				PlayerPrefs.SetInt("nbdemort", nbdemort);
			}
}
function OnGUI () 
{
   style.fontSize = 20;
   style.normal.textColor = Color.black;
   GUI.Label(Rect(Screen.width - 122, 5, 100, 25), "Deaths : "+PlayerPrefs.GetInt("nbdemort"), style);
}
J'aimerais qu'elle restart mon timer quand on meurt (logiquement).

Et, j'aimerais ajouter un 0 devant les minutes et les secondes, par exemple 00:02:17.

Enfin, quand le message de fin s'affiche, il disparaît rapidement :/ J'aimerais pouvoir changer le temps de sa disparition
Voilà :3

(C'est pour ça que je dis qu'il aurait été plus rapide de changer directement mes scripts, parce que je n'avais pas de problèmes avec ça avant)

Verrouillé

Revenir vers « (Js) Javascript »