Je travaille sur un tamagochi avec des gifs.
Le problème est que je souhaiterais introduire une condition: Si le bouton 1 n'a pas été pressé, on ne pourra pas exécuter le bouton 3 et une gif sera affichée (un tama pas content).
Voici mon code:
import gifAnimation.*;
PImage img;
Gif myAnimation;
Gif manger;
boolean drag = false;
void setup() {
img = loadImage ("tamma2.png");
size(250, 350);
image(img, 0, 0);
size(250, 350);
// fill(#FA6DB8);
// ellipse(125, 175, 200, 230);
fill(255);
rect(67, 112, 120, 75);
for (int i= 0; i<3;i++) {
fill(#acbbff);
ellipse(75+i*50, 230, 40, 40);
img = loadImage ("stouche.png");
size(250, 350);
image(img, 0, 0);
frameRate(100);
myAnimation = new Gif(this, "animeacceuile.gif");
myAnimation.play();
manger = new Gif(this, "manger.gif");
manger.play();
}
}
void demarrer() {
image(myAnimation, 67, 112);
}
void manger(){
image(manger,67,112);
}
void draw() {
demarrer();
if (mousePressed==true && ((mouseX>55)&&(mouseX<95)&&(mouseY>210)&&(mouseY<250))) {
cursor(HAND);
image(manger,67,112);
}
if (mousePressed==true && ((mouseX>105)&&(mouseX<145)&&(mouseY>210)&&(mouseY<250))) {
fill(#F211D5);
rect(67, 112, 120, 75);
}
if (mousePressed==true &&((mouseX>155)&&(mouseX<195)&&(mouseY>210)&&(mouseY<250))) {
fill(#1DFF0A);
rect(67, 112, 120, 75);
}
}
Dernière modification par Mymus (2014-02-06 09:39:01)
Hors ligne
Hello...
Voici une possibilité...
Après avoir déclaré et initialisé une variable booléenne à false au démarrage...
boolean testBouton1 = false;
...tu peux modifier sa valeur avec le premier bouton et la tester dans les condition de ton deuxième bouton...
Je n'ai pas testé, mais l'idée est là...
Bon courage...
Hors ligne
Ok merci je vois où tu veux en venir. Je le testerais plus tard, pour l'instant je n'arrive plus à faire fonctionner processing sur mon ordinateur.
Par contre, un autre problème se pose: il y a une gif de base du tamagochi et quand je veux afficher le gif manger via le bouton 1, il ne s'affiche qu'en gardant la souris appuyé. De plus, il s'affiche en boucle.
Je voudrais donc avoir une solution, soit avec un clic, la gif manger s'affiche et on revient à celle de base, soit quand je garde appuyé le bouton, elle ne s'affiche que 3sec environ avant que l'autre revienne.
Merci beaucoup de ton aide
Hors ligne
Ah et au fait pourrais tu m'éclairer sur mon problème de processing?
Voici le message d'erreur quand je le lance
Hors ligne
Garde en tête que ta fonction principale "void draw()" se joue en boucle et à l'infini, tout ce que tu vas placer dedans vas forcément se répéter si tu ne les encadre pas dans des conditions appropriées.
Pour ton GIF d'intro, tu pourrais le placer dans ta fonction "void setup()" qui, elle, ne se joue qu'une fois au lancement du programme.
Pour ton problème au lancement, essaye peut-être une réinstall de la dernière version, bonne vieille technique
Hors ligne
J'ai déjà essayé de placer le gif dans void setup() mais le problème c'est qu'il reste fixe, il ne bouge pas.
Hors ligne