diff --git a/Colors.pde b/Colors.pde new file mode 100644 index 0000000..e587b87 --- /dev/null +++ b/Colors.pde @@ -0,0 +1,4 @@ +color C_WHITE = color(255,255,255); +color C_BLACK = color(0,0,0); +color C_RED = color(250, 40, 40); +color C_YELLOW = color(177, 255, 51); diff --git a/Pion.pde b/Pion.pde index ce87565..3180075 100644 --- a/Pion.pde +++ b/Pion.pde @@ -3,11 +3,13 @@ class Pion extends Position { boolean lazored, animated = false; int timer; float savedRadius; + color bgColorHover; Pion(int id) { super(id); - this.bgColor = color(0, 0, 0); - this.textColor = color(240, 240, 80); + this.bgColor = C_RED; + this.bgColorHover = C_YELLOW; + this.textColor = color(0, 0, 0); this.posX = floor((displayWidth-margin*2)/nombreEquipes)*id+radius/2+margin; this.posY = displayHeight-46; this.radius = 30; @@ -35,12 +37,13 @@ class Pion extends Position { } color getBgColor() { - if (this.animated && this.lazored) return color(random(200, 255), random(50, 150), random(50, 150)); - return this.dragged? color(177, 255, 51): this.hovered? this.textColor: this.bgColor; + if (this.animated && this.lazored) return color(random(200, 255), random(0, 100), random(0, 100)); + if (((frameCount-id) % 10)==0) return C_WHITE; + return this.dragged? C_YELLOW: this.hovered? this.bgColorHover: this.bgColor; } color getTextColor() { - return this.dragged? color(0): this.hovered? this.bgColor: this.textColor; + return this.dragged? C_BLACK: this.hovered? this.textColor: this.textColor; } void hoverStop() { @@ -82,7 +85,8 @@ class Pion extends Position { if (!this.lazored) return; PVector target = new PVector(p.posX, p.posY); - LAZOR(new PVector(245, 158), target); - LAZOR(new PVector(displayWidth-245, 158), target); + //LAZOR(new PVector(245, 158), target); + //LAZOR(new PVector(displayWidth-245, 158), target); + LAZOR(new PVector(mouseX, mouseY), target); } } diff --git a/Plateau.pde b/Plateau.pde index 1346eac..e409996 100644 --- a/Plateau.pde +++ b/Plateau.pde @@ -309,6 +309,7 @@ void LAZORECT(float posX, float posY, float width, float height) { // boucle d'affichage appellée plusieurs fois par seconde (~60) void draw() { + println(frameRate); // afficher l'image de fond image(backgroundImage, 0, 0, displayWidth, displayHeight); diff --git a/Scoreboard.pde b/Scoreboard.pde index ebe0760..00b4a2c 100644 --- a/Scoreboard.pde +++ b/Scoreboard.pde @@ -17,10 +17,10 @@ class Scoreboard { void setup() { if (autoload) this.load(); - this.posX = 948; - this.posY = 130; - this.width = 439; - this.height = 158; + this.posX = 1548; + this.posY = 0; + this.width = 300; + this.height = 118; } // charge ou génère le tableau des scores @@ -140,13 +140,10 @@ class Scoreboard { float lastX = 0; rectMode(CORNER); - - - - fill(color(120, 0, 0, 200)); - stroke(color(255, 255, 255)); - strokeWeight(2); - rect(this.posX, this.posY, this.width, this.height); + fill(color(0, 0, 0, 100)); + stroke(color(0, 0, 0)); + strokeWeight(1); + rect(this.posX, this.posY+20, this.width, this.height); // pour chaque score de 50 à 1 for (int i=50; i>0; i--) { @@ -169,38 +166,45 @@ class Scoreboard { stroke(color(0, 0, 0)); strokeWeight(1); textFont(quicksandFont, 40); - String text = str(count); - text += count==1? " er": "ème"; + String text = str(count+1); // correction de positionnement horizontal // selon largeur du texte //float localMarginX = (i<=9)? margin+14: (i>=40)? margin-8: margin; + float localMarginX = count==0? 10: 0; // selon nombre d'équipes à afficher pour ce score - //localMarginX = (teams.size()>1)? localMarginX+((teams.size()-1)*margin)/2: localMarginX; + // localMarginX = (teams.size()>1)? localMarginX+((teams.size()-1)*margin)/2: localMarginX; //fill(color(0, 250, 0)); - text(text, offsetX+margin/2, offsetY+margin); + text(text, offsetX+localMarginX, offsetY+margin); + + localMarginX = count==0? 20: 25; + textFont(quicksandFont, 20); + text = count==0? " er": "e"; + text(text, offsetX+localMarginX, offsetY+margin-16); // affichage des équipes for(int j=0; j=40)? margin-40: margin-30; + // selon nombre d'équipes à afficher pour ce score + float subLocalMarginX = ((teams.size()-j)*margin)-margin/2; + //subLocalMarginX = (teams.size()>1)? localMarginX+((teams.size()-1)*margin)/2: localMarginX; fill(color(240, 240, 80)); - circle(offsetX+margin/2, offsetY+(margin*2)-12, 50); + circle(offsetX+subLocalMarginX, offsetY+(margin*2)-12, 50); fill(color(0, 0, 0)); textFont(quicksandFont, 32); - text(teams.get(j), offsetX+subLocalMarginX/2, offsetY+(margin*2)); + // selon largeur du texte + subLocalMarginX = (int(teams.get(j))<=9)? (int(teams.get(j))==1)? subLocalMarginX-6: subLocalMarginX-8: (int(teams.get(j))>=40)? subLocalMarginX-20: subLocalMarginX-15; + text(teams.get(j), offsetX+subLocalMarginX, offsetY+(margin*2)); count++; } - line(offsetX-(margin*teams.size())-10, offsetY, offsetX-(margin*teams.size())-10, offsetY+this.height); + //line(offsetX-(margin*teams.size())-10, offsetY, offsetX-(margin*teams.size())-10, offsetY+this.height); lastX = offsetX+(margin*teams.size())-10; offsetX += margin*teams.size(); - } noFill(); stroke(color(0, 0, 0)); - rect(lastX, this.posY, margin*count, this.height); + //rect(lastX, this.posY, margin*count, this.height); } }