| [Résolu] cannot assign to the variable | |
|
|
Auteur | Message |
---|
Chulien Utilisateur confirmé: Rang *****
Messages : 2232
| Sujet: [Résolu] cannot assign to the variable Ven 3 Sep 2010 - 18:10 | |
| - Code:
-
for(i=0; i<global.narti; i+=1) { artic = instance_find(obj_arti, i) for(j=0; j<global.nphases; j+=1) { (artic).phase[j] = instance_create(0,0, obj_phase) //<<====== va pas plus loin... ( (artic).phase[j]).x_rel = (artic).x_rel; ( (artic).phase[j]).image_xscale = (artic).image_xscale; } }
ce code est exécuté une seule fois les global.nquelquechose sont le nombre des objets en question je n'arrive pas à dépasser cette ligne de code, artic étant l'id d'un objet quelqu'un aurait il l'instinct pour trouver la solution? - Code:
-
___________________________________________ ERROR in action number 1 of Key Release Event for <no key> Key for object obj_phase:
In script scr_init_creer_mouvement: Error in code at line 87: (arti).phase[j] = instance_create(0,0, obj_phase)
at position 14: Cannot assign to the variable
edit: j'ai trouvé ça sur un site This error appears if you try to give a read-only variable a value. mais canard.costume[2] c'est pas une variable en lecture seulement, on peut la modifier je vois pas pourquoi...
Dernière édition par Chulien le Ven 3 Sep 2010 - 19:26, édité 2 fois |
|
| |
glcraft Utilisateur confirmé: Rang *****
Messages : 1698 Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P Projet Actuel : Jeu de survie avancé
||--------
| Sujet: Re: [Résolu] cannot assign to the variable Ven 3 Sep 2010 - 18:22 | |
| on aurait pu penser que c'est a cause de la parenthese mais je doute que ce soit ca, ce serait trop simple pour un "Cannot assign to the variable" ^^ edit, j'ai compris - Citation :
for(i=0; i<global.narti; i+=1) { artic = instance_find(obj_arti, i) for(j=0; j<global.nphases; j+=1) { (artic).phase[j] = instance_create(0,0, obj_phase) //<<====== va pas plus loin... ( (artic).phase[j]).x_rel = (artic).x_rel; ( (artic).phase[j]).image_xscale = (artic).image_xscale; } } artic est un chiffre, le nombre d'instance nomméobj_arti et tu demande d'assigner (artic) .phase[j] comme ci artic était un objet. Mais artic n'est qu'un chiffre, voila le probleme, c'est comme si en C++, tu assignait (artic).phase[j] alors queartic n'est pas une classe ni une structure mais juste une variable. Tu as compris le probleme ? |
|
| |
M@d_Doc Modérateur
Messages : 6600 Localisation : 47°44'8.04 Projet Actuel : aucun
| Sujet: Re: [Résolu] cannot assign to the variable Ven 3 Sep 2010 - 19:10 | |
| en fait, non. instance_find() retourne l'id (donc le pointeur en C++) de la nième instance d'un objet. Donc de ce côté là, tout est bon. En effet,
(0012092).phase[j] = blablabla
devrait marcher |
|
| |
Chulien Utilisateur confirmé: Rang *****
Messages : 2232
| Sujet: Re: [Résolu] cannot assign to the variable Ven 3 Sep 2010 - 19:23 | |
| c'est bon, j'ai trouvé, c'était une erreur bête de ma part: il y avait en fait deux objets différents obj_arti et obj_arti_mouv à ce moment là, aucune instance d' obj_arti n'existe, seulement des obj_arti_mouv. donc le instance_find(obj_arti, i) renvoyait... -4 apparemment, ce qui n'est pas un id. voilà, c'est ma ptite vie, l'air de rien je pense qu'avoir posté m'a aidé à chercher, merci |
|
| |
M@d_Doc Modérateur
Messages : 6600 Localisation : 47°44'8.04 Projet Actuel : aucun
| Sujet: Re: [Résolu] cannot assign to the variable Ven 3 Sep 2010 - 19:26 | |
| ouaip, quand il ne trouve, il renvoi une valeur négative, car 0 peux correspondre à une id pour certaines ressources (sprites pas sur, son etc) |
|
| |
glcraft Utilisateur confirmé: Rang *****
Messages : 1698 Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P Projet Actuel : Jeu de survie avancé
||--------
| Sujet: Re: [Résolu] cannot assign to the variable Ven 3 Sep 2010 - 19:29 | |
| lol ok (et je me suis trompé la reponse derniere, artic n'est pas un nombre c'est un id, je croyais que tu utilisais la fonction instance_number(), en tout cas tu la résolu ^^) |
|
| |
Contenu sponsorisé
| Sujet: Re: [Résolu] cannot assign to the variable | |
| |
|
| |
| [Résolu] cannot assign to the variable | |
|