From f99871b3e0375d29c51280fb13b9ca30e4c929ed Mon Sep 17 00:00:00 2001 From: Nicky Case Date: Wed, 21 Jun 2017 17:53:53 -0400 Subject: [PATCH] AW YEAH THAT'S ONE SLIDE --- assets/button.png | Bin 0 -> 11876 bytes assets/connection.png | Bin 96 -> 96 bytes css/slides.css | 54 ++++++++++++++++++++++++++++++++++++--- index.html | 4 +-- js/core/Button.js | 42 +++++++++++++++++++++++++++--- js/core/WordBox.js | 1 + js/main.js | 43 +++++++++++++++++++++++++++++-- js/sims/TournamentSim.js | 29 +++++++++++++++++---- 8 files changed, 157 insertions(+), 16 deletions(-) create mode 100644 assets/button.png diff --git a/assets/button.png b/assets/button.png new file mode 100644 index 0000000000000000000000000000000000000000..f0beb522a702d196aceca6bd15a13bd9050bfeac GIT binary patch literal 11876 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 YiYIK_oApZ8gyT7FZEsa{^75bm2G4>uvH$=8 literal 0 HcmV?d00001 diff --git a/assets/connection.png b/assets/connection.png index 084d37f52d643cb44edac5d2bb3d0027440cedbe..e8fc78c0c42792ff96a1c86bdd7a2de216e8770a 100644 GIT binary patch delta 33 ocmYdDn4rV5r||Kyi3Tzv$8RxD+;;54IR+r`boFyt=akR{0Q8g%sQ>@~ delta 33 ncmYdDn4rT_^XtpYi3TzvKlzwwBS3j3^P6 \ No newline at end of file diff --git a/js/core/Button.js b/js/core/Button.js index 29a828e..84a8831 100644 --- a/js/core/Button.js +++ b/js/core/Button.js @@ -4,20 +4,54 @@ function Button(config){ self.id = config.id; // Create DOM - var button = document.createElement("button"); + var button = document.createElement("div"); button.className = "object"; button.classList.add("fader"); + button.classList.add("button"); self.dom = button; + // BG + var bg = document.createElement("div"); + bg.id = "background"; + var text = document.createElement("div"); + text.id = "text"; + var hitbox = document.createElement("div"); + hitbox.id = "hitbox"; + button.appendChild(bg); + button.appendChild(text); + button.appendChild(hitbox); + // Customize DOM button.style.left = config.x+"px"; button.style.top = config.y+"px"; - button.innerHTML = config.text; + text.innerHTML = config.text; + + // On hover... + hitbox.onmouseover = function(){ + if(self.active) button.setAttribute("hover","yes"); + }; + hitbox.onmouseout = function(){ + if(self.active) button.removeAttribute("hover"); + }; // On click... - button.onclick = function(){ - publish(config.message); + hitbox.onclick = function(){ + if(self.active) publish(config.message); + }; + + // Activate/Deactivate + self.active = true; + self.activate = function(){ + self.active = true; + button.removeAttribute("deactivated"); + }; + self.deactivate = function(){ + self.active = false; + button.setAttribute("deactivated","yes"); + button.removeAttribute("hover"); }; + if(config.active===undefined) config.active=true; + if(!config.active) self.deactivate(); // Add... self.add = function(INSTANT){ diff --git a/js/core/WordBox.js b/js/core/WordBox.js index ccba318..7c28398 100644 --- a/js/core/WordBox.js +++ b/js/core/WordBox.js @@ -7,6 +7,7 @@ function WordBox(config){ var words = document.createElement("div"); words.className = "object"; words.classList.add("fader"); + words.classList.add("wordbox"); self.dom = words; // Customize DOM diff --git a/js/main.js b/js/main.js index 89ecc61..d00717e 100644 --- a/js/main.js +++ b/js/main.js @@ -4,7 +4,46 @@ var slides = [ { id: "sim", add:[ - {id:"tournament", type:"TournamentSim", x:0, y:20} + {id:"tournament", type:"TournamentSim", x:0, y:20}, + { + id:"_w1", type:"WordBox", + x:500, y:0, width:460, height:50, + text:"Let's say there are three kinds of players:
"+ + "Always Cooperate, "+ + "Always Cheat & "+ + "Tit For Tat"+ + "

"+ + "What happens when you let a mixed population play against each other, and evolve over time?" + }, + { + id:"_b1", type:"Button", + x:500, y:150, width:140, + text:"1) play tournament", + message:"tournament/play" + }, + { + id:"_b2", type:"Button", + x:500, y:220, width:140, + text:"2) eliminate bottom 5", + message:"tournament/eliminate", + active:false + }, + { + id:"_b3", type:"Button", + x:500, y:290, width:140, + text:"3) reproduce top 5", + message:"tournament/reproduce", + active:false + }, + { + id:"_w3", type:"WordBox", + x:500, y:370, width:460, height:200, + text:"Always Cheat dominates at first, but when it runs out of suckers to exploit, "+ + "its empires collapses – and the fairer Tit For Tat takes over.
"+ + "
"+ + "We are not punished for our sins, but by them.
"+ + "- Elbert Hubbard" + } ] }, @@ -20,7 +59,7 @@ var slides = [ { id: "intro1", add:[ - {id:"wordbox1", type:"WordBox", x:500, y:0, width:100, height:200, text:"foo bar foo bar foo bar"}, + {id:"wordbox1", type:"WordBox", x:500, y:0, width:100, height:200, text:"foo bar foo bar foo bar"}, ] }, diff --git a/js/sims/TournamentSim.js b/js/sims/TournamentSim.js index 97d023e..a9d278d 100644 --- a/js/sims/TournamentSim.js +++ b/js/sims/TournamentSim.js @@ -196,6 +196,7 @@ function TournamentSim(config){ var STAGE_REPRODUCE = 3; self.STAGE = STAGE_REST; + /* self.ALL_AT_ONCE = function(){ publish("tournament/play"); setTimeout(function(){ publish("tournament/eliminate"); },500); @@ -203,6 +204,7 @@ function TournamentSim(config){ setTimeout(self.ALL_AT_ONCE, 1500); }; setTimeout(self.ALL_AT_ONCE, 100); + */ // ANIMATE var _playIndex = 0; @@ -219,6 +221,7 @@ function TournamentSim(config){ self.playOneTournament(); // FOR REAL, NOW. _playIndex = 0; self.STAGE = STAGE_REST; + slideshow.objects._b2.activate(); // activate NEXT button! } } @@ -226,6 +229,7 @@ function TournamentSim(config){ if(self.STAGE == STAGE_ELIMINATE){ self.eliminateBottom(5); self.STAGE = STAGE_REST; + slideshow.objects._b3.activate(); // activate NEXT button! } // REPRODUCE! @@ -250,6 +254,7 @@ function TournamentSim(config){ if(_tweenTimer>=1){ _tweenTimer = 0; self.STAGE = STAGE_REST; + slideshow.objects._b1.activate(); // activate NEXT button! } } @@ -257,11 +262,25 @@ function TournamentSim(config){ }); // PLAY A TOURNAMENT - self._startPlay = function(){ self.STAGE=STAGE_PLAY; }; + self.deactivateAllButtons = function(){ + slideshow.objects._b1.deactivate(); + slideshow.objects._b2.deactivate(); + slideshow.objects._b3.deactivate(); + }; + self._startPlay = function(){ + self.STAGE=STAGE_PLAY; + self.deactivateAllButtons(); + }; subscribe("tournament/play", self._startPlay); - self._startEliminate = function(){ self.STAGE=STAGE_ELIMINATE; }; + self._startEliminate = function(){ + self.STAGE=STAGE_ELIMINATE; + self.deactivateAllButtons(); + }; subscribe("tournament/eliminate", self._startEliminate); - self._startReproduce = function(){ self.STAGE=STAGE_REPRODUCE; }; + self._startReproduce = function(){ + self.STAGE=STAGE_REPRODUCE; + self.deactivateAllButtons(); + }; subscribe("tournament/reproduce", self._startReproduce); // Add... @@ -379,7 +398,6 @@ function TournamentAgent(config){ // Body! var body = PIXI.Sprite.fromImage("assets/"+self.strategyName+".png"); body.scale.set(0.5); - if(g.x>250) body.scale.x*=-1; body.anchor.x = 0.5; body.anchor.y = 0.75; g.addChild(body); @@ -431,9 +449,10 @@ function TournamentAgent(config){ }; self.updatePosition = function(){ g.x = Math.cos(self.angle)*200 + 250; - g.y = Math.sin(self.angle)*200 + 250; + g.y = Math.sin(self.angle)*200 + 265; scoreText.x = -Math.cos(self.angle)*40; scoreText.y = -Math.sin(self.angle)*48 - 22; + body.scale.x = Math.abs(body.scale.x) * ((Math.cos(self.angle)<0) ? 1 : -1); }; self.updatePosition();