Created
July 23, 2015 04:50
-
-
Save Michael0x2a/46d807f9145bc15576af to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html lang="en"> | |
<head> | |
<meta charset="utf-8"> | |
<title>Feedback: Game13.java</title> | |
<meta name="viewport" content="width=device-width, initial-scale=1" /> | |
<link href="https://cdnjs.cloudflare.com/ajax/libs/prism/0.0.1/prism.min.css" rel="stylesheet" /> | |
<style type="text/css"> | |
* { | |
box-sizing: border-box; | |
} | |
body { | |
padding:1em; | |
font-family: Arial, sans-serif; | |
font-size: 16px; | |
} | |
.wrapper { | |
display: block; | |
min-width: 40em; | |
max-width: 60em; | |
margin: 0 auto; | |
} | |
h1 { | |
margin-bottom: 0.25em; | |
} | |
h1 + p { | |
margin-bottom: 2em; | |
margin-left: 0; | |
color: #888; | |
} | |
.line { | |
display: block; | |
width: 100%; | |
overflow: auto; | |
} | |
.codeline:hover .lineno { | |
color: #111; | |
} | |
.codeline { | |
overflow: hidden; | |
} | |
.lineno { | |
font-family: Consolas,Monaco,"Andale Mono",monospace; | |
padding: 0.25em; 0.5em; | |
width: 2.7em; | |
float: left; | |
color: #888; | |
background-color: #f5f2f0; | |
border-left: 4px solid #111; | |
border-right: 1px solid #e0e0e0; | |
text-align: right; | |
transition: color 0.25s ease; | |
-webkit-touch-callout: none; | |
-webkit-user-select: none; | |
-khtml-user-select: none; | |
-moz-user-select: none; | |
-ms-user-select: none; | |
user-select: none; | |
} | |
.lineno > span { | |
font-size: 0.8em; | |
} | |
.line:hover .lineno > span { | |
font-weight: bold; | |
} | |
pre { | |
position: relative; | |
font-family: Consolas,Monaco,"Andale Mono",monospace; | |
background-color: #f5f2f0; | |
color: #000; | |
text-shadow: 0px 1px #fff; | |
padding: 0.25em 1em; | |
direction: ltr; | |
white-space: pre; | |
word-spacing: normal; | |
word-break: normal; | |
-moz-tab-size: 4; | |
-moz-hyphens: none; | |
} | |
.codeline > pre { | |
margin-left: 2.7em; | |
margin-top: 0; | |
margin-bottom: 0; | |
} | |
pre[class*="language-"] { | |
margin: 0; | |
padding: 0.25em 1em; | |
} | |
pre[class*="language-"] > code[data-language] { | |
overflow: hidden; | |
} | |
.button { | |
position: relative; | |
width: 2.7em; | |
padding: 0.2em 0.2em; | |
padding-left: 0.4em; | |
cursor: pointer; | |
z-index: 5; | |
margin-top: 0.1em; | |
font-weight: 700; | |
color: #888; | |
transition: color 0.25s ease; | |
} | |
.button:hover { | |
color: #111; | |
} | |
.button span { | |
font-size: 0.7em; | |
} | |
.commentary { | |
position: relative; | |
padding-left: 3.2em; | |
overflow: hidden; | |
} | |
.hidden { | |
} | |
.annotated .commentary { | |
padding-bottom: 1em; | |
margin-top: -1.5em; | |
} | |
.commentary pre { | |
display: block; | |
} | |
.commentary pre:last-child { | |
margin-bottom: 1em; | |
} | |
code:before { | |
display: none !important; | |
} | |
p { | |
padding: 0em; | |
margin: 0.5em; | |
} | |
</style> | |
</head> | |
<body> | |
<div class="wrapper"> | |
<h1>Feedback: Game13.java</h1> | |
<p>(Generated on Wednesday, July 2015 at 9:47:25 PM, Pacific Daylight Time)</p> | |
<div class="feedback"> <div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>1</span></div> | |
<pre><code class="language-java">/*</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>2</span></div> | |
<pre><code class="language-java"> * To change this license header, choose License Headers in Project Properties.</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>3</span></div> | |
<pre><code class="language-java"> * To change this template file, choose Tools | Templates</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>4</span></div> | |
<pre><code class="language-java"> * and open the template in the editor.</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>5</span></div> | |
<pre><code class="language-java"> */</code></pre> | |
</div> | |
<div class="commentary"><p>Be sure to remove all auto-generated comments, and replace them with your own.</p></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>6</span></div> | |
<pre><code class="language-java">package game13;</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>7</span></div> | |
<pre><code class="language-java">import java.util.Scanner;</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>8</span></div> | |
<pre><code class="language-java">import java.security.SecureRandom;</code></pre> | |
</div> | |
<div class="commentary"><p>Regular random would suffice -- you don't need a fully cryptographically-secure random number generator for a game.</p></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>9</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>10</span></div> | |
<pre><code class="language-java">/**</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>11</span></div> | |
<pre><code class="language-java"> * [email protected]</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>12</span></div> | |
<pre><code class="language-java"> * @author Dimitrije</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>13</span></div> | |
<pre><code class="language-java"> */</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>14</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>15</span></div> | |
<pre><code class="language-java">public class Game13 {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>16</span></div> | |
<pre><code class="language-java"> private static final SecureRandom randomNumbers = new SecureRandom();</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>17</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>18</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>19</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"><p>You have quite a bit of whitespace here -- one blank line would be sufficient. Likewise, you should have one blank line in between each method.</p></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>20</span></div> | |
<pre><code class="language-java"> public static void main(String[] args)</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>21</span></div> | |
<pre><code class="language-java"> {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>22</span></div> | |
<pre><code class="language-java"> Player player1 = new Player();</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>23</span></div> | |
<pre><code class="language-java"> Player player2 = new Player();</code></pre> | |
</div> | |
<div class="commentary"><p>A problem with your <code>Player</code> class is that it's possible for each player to be set to a non-determinate state. When you first create the Player class, you always need to remember to set at minimum the name -- your <code>Player</code> class won't be useful otherwise. Because you always need the name, you might as well add it to your constructor:</p> | |
<pre><code class="language-java">Player player1 = new Player(setPlayerName()); | |
Player player2 = new Player("The House");</code></pre></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>24</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>25</span></div> | |
<pre><code class="language-java"> player1.name = setPlayerName();</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>26</span></div> | |
<pre><code class="language-java"> player2.name = "The House";</code></pre> | |
</div> | |
<div class="commentary"><p>However, if you're not going to create the contructor, you should at minimum make use of your setter method rather then directly modifying the field:</p> | |
<pre><code class="language-java">player1.setName(setPlayerName()); | |
player2.setName("The House");</code></pre></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>27</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>28</span></div> | |
<pre><code class="language-java"> System.out.println("Dice are being rolled: ");</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>29</span></div> | |
<pre><code class="language-java"> System.out.println("");</code></pre> | |
</div> | |
<div class="commentary"><p>You can omit the empty string -- <code>println</code> will do the same thing with or without it.</p></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>30</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>31</span></div> | |
<pre><code class="language-java"> //two dice are rolled and added together for each player</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>32</span></div> | |
<pre><code class="language-java"> player1.setTotal(rollDice(player1.name));</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>33</span></div> | |
<pre><code class="language-java"> player2.setTotal(rollDice(player2.name));</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>34</span></div> | |
<pre><code class="language-java"> System.out.println();</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>35</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>36</span></div> | |
<pre><code class="language-java"> //if the player hits, total gets added and is checked to see if it went over 13</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>37</span></div> | |
<pre><code class="language-java"> while (playerHitOrStay(player1.name))</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>38</span></div> | |
<pre><code class="language-java"> {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>39</span></div> | |
<pre><code class="language-java"> player1.setTotal(rollDie(player1.name,player1.getTotal(),player2.name,player2.getTotal()));</code></pre> | |
</div> | |
<div class="commentary"><p>Rather then passing in the names and totals for all players, pass in just the players directly:</p> | |
<pre><code class="language-java">rollDie(player1, player2);</code></pre> | |
<p>Same thing with <code>rollDice</code> and <code>playerHitOrStay</code>.</p></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>40</span></div> | |
<pre><code class="language-java"> //if the player goes over 13 it will bust and player can no longer hit</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>41</span></div> | |
<pre><code class="language-java"> if (checkForBust(player1.getTotal()))</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>42</span></div> | |
<pre><code class="language-java"> {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>43</span></div> | |
<pre><code class="language-java"> player1.bust = true;</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>44</span></div> | |
<pre><code class="language-java"> break;</code></pre> | |
</div> | |
<div class="commentary"><p>Rather then constantly checking whether or not the player has gone bust, and having to constantly modify your <code>bust</code> field, I would add a <code>isBust()</code> method to your player class that just directly checks the total. That means you could rewrite your entire loop to look like the following:</p> | |
<pre><code class="language-java">while (playerHitOrStay(player1) && !player.isBust()) { | |
player1.setTotal(rollDie(player1, player2)); | |
}</code></pre> | |
<p>(Alternatively, write an <code>isNotBust()</code> method).</p></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>45</span></div> | |
<pre><code class="language-java"> }</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>46</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"><p>You have some extra whitespace here. You should only place blank lines in between logically distinct sections of code -- for example, line 48.</p></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>47</span></div> | |
<pre><code class="language-java"> }</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>48</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>49</span></div> | |
<pre><code class="language-java"> //if player has decided to stay the computer will try and beat his score if it already hasn't</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>50</span></div> | |
<pre><code class="language-java"> if (!player1.bust)</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>51</span></div> | |
<pre><code class="language-java"> {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>52</span></div> | |
<pre><code class="language-java"> computerPlay(player1.getTotal(), player2.getTotal());</code></pre> | |
</div> | |
<div class="commentary"><p>You can delete this line entirely -- all it does it return a boolean, which you never store or use. As a consequence, this line is not actually doing anything.</p></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>53</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>54</span></div> | |
<pre><code class="language-java"> while (computerPlay(player1.getTotal(), player2.getTotal()))</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>55</span></div> | |
<pre><code class="language-java"> {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>56</span></div> | |
<pre><code class="language-java"> player2.setTotal(rollDie(player2.name,player2.getTotal(),player1.name, player1.getTotal()));</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>57</span></div> | |
<pre><code class="language-java"> if (checkForBust(player2.getTotal()))</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>58</span></div> | |
<pre><code class="language-java"> {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>59</span></div> | |
<pre><code class="language-java"> player2.bust = true;</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>60</span></div> | |
<pre><code class="language-java"> break;</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>61</span></div> | |
<pre><code class="language-java"> }</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>62</span></div> | |
<pre><code class="language-java"> }</code></pre> | |
</div> | |
<div class="commentary"><p>Same thing as before -- you can rewrite this to:</p> | |
<pre><code class="language-java">while (computerPlay(player1, player2) && !player2.isBust()) { | |
player2.setTotal(rollDie(player2, player1)); | |
}</code></pre> | |
<p>Also, watch your indentation!</p></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>63</span></div> | |
<pre><code class="language-java"> }</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>64</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>65</span></div> | |
<pre><code class="language-java"> checkForWinner(player1.bust, player1.name, player1.getTotal(),player2.bust,player2.name,player2.getTotal());</code></pre> | |
</div> | |
<div class="commentary"><p>Same thing -- pass in only <code>player1</code> and <code>player2</code>. And get rid of the extra whitespace here (and add a blank line after the method finishes on line 68).</p></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>66</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>67</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>68</span></div> | |
<pre><code class="language-java"> }</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>69</span></div> | |
<pre><code class="language-java"> private static int rollDice(String name) //two dice are rolled and added together</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>70</span></div> | |
<pre><code class="language-java"> {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>71</span></div> | |
<pre><code class="language-java"> int die1 = 1 + randomNumbers.nextInt(6);</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>72</span></div> | |
<pre><code class="language-java"> int die2 = 1 + randomNumbers.nextInt(6);</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>73</span></div> | |
<pre><code class="language-java"> int sum = die1 + die2;</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>74</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>75</span></div> | |
<pre><code class="language-java"> System.out.printf("%s rolled %d + %d = %d%n",</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>76</span></div> | |
<pre><code class="language-java"> name, die1, die2, sum);</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>77</span></div> | |
<pre><code class="language-java"> return sum;</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>78</span></div> | |
<pre><code class="language-java"> }</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>79</span></div> | |
<pre><code class="language-java"> private static int rollDie(String name, int playerTotal, String player2Name, int player2Total) //one dice is rolled and added to the total</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>80</span></div> | |
<pre><code class="language-java"> {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>81</span></div> | |
<pre><code class="language-java"> int die1 = 1 + randomNumbers.nextInt(6);</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>82</span></div> | |
<pre><code class="language-java"> int sum = die1 + playerTotal;</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>83</span></div> | |
<pre><code class="language-java"> System.out.println("");</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>84</span></div> | |
<pre><code class="language-java"> System.out.printf("%s new roll is: |%d| %n%n%s total: %d%n"</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>85</span></div> | |
<pre><code class="language-java"> + "%s total: %d%n",</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>86</span></div> | |
<pre><code class="language-java"> name,die1,name, sum, player2Name, player2Total);</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>87</span></div> | |
<pre><code class="language-java"> System.out.println("-------");</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>88</span></div> | |
<pre><code class="language-java"> return sum;</code></pre> | |
</div> | |
<div class="commentary"><p>Rather then constantly having to recompute and set the total for each player, consider adding a <code>addToSum(int)</code> method to your player class so that the player is responsible for its own math.</p></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>89</span></div> | |
<pre><code class="language-java"> }</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>90</span></div> | |
<pre><code class="language-java"> private static boolean playerHitOrStay(String name) //Checks to see if the player wants to hit else stay</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>91</span></div> | |
<pre><code class="language-java"> {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>92</span></div> | |
<pre><code class="language-java"> boolean hit;</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>93</span></div> | |
<pre><code class="language-java"> Scanner userInput = new Scanner(System.in);</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>94</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>95</span></div> | |
<pre><code class="language-java"> System.out.printf("%s would you like to hit?%n", name);</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>96</span></div> | |
<pre><code class="language-java"> String userAnswer = userInput.nextLine();</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>97</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>98</span></div> | |
<pre><code class="language-java"> hit = userAnswer.equalsIgnoreCase("YES");</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>99</span></div> | |
<pre><code class="language-java"> return hit;</code></pre> | |
</div> | |
<div class="commentary"><p>Declare variables the moment you need them to limit their scope -- don't declare them at the top of your methods. So, basically do this:</p> | |
<pre><code class="language-java">boolean hit = userAnswer.equalsIgnoreCase("yes"); | |
return hit;</code></pre> | |
<p>Or even better, do this:</p> | |
<pre><code class="language-java">return userAnswer.equalsIgnoreCase("yes");</code></pre></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>100</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>101</span></div> | |
<pre><code class="language-java"> }</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>102</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>103</span></div> | |
<pre><code class="language-java"> private static boolean checkForBust(int total) //checks wether the total is over 13</code></pre> | |
</div> | |
<div class="commentary"><p>As previously noted, this should probably be a method inside your <code>Player</code> class. This method could also be simplified to a single line:</p> | |
<pre><code class="language-java">return total > 13;</code></pre></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>104</span></div> | |
<pre><code class="language-java"> {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>105</span></div> | |
<pre><code class="language-java"> boolean bust;</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>106</span></div> | |
<pre><code class="language-java"> bust = total > 13;</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>107</span></div> | |
<pre><code class="language-java"> return bust;</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>108</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>109</span></div> | |
<pre><code class="language-java"> }</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>110</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>111</span></div> | |
<pre><code class="language-java"> private static boolean computerPlay(int getOpponentTotal, int getTotal) //if the computer is below the player the computer will hit</code></pre> | |
</div> | |
<div class="commentary"><p>Same thing here:</p> | |
<pre><code class="language-java">private static boolean computerPlay(Player opponent, Player self) { | |
return ((opponent.getTotal() > self.getTotal()) || self.getTotal() == 7); | |
}</code></pre></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>112</span></div> | |
<pre><code class="language-java"> {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>113</span></div> | |
<pre><code class="language-java"> boolean hit;</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>114</span></div> | |
<pre><code class="language-java"> hit = ((getOpponentTotal > getTotal) || getTotal == 7);</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>115</span></div> | |
<pre><code class="language-java"> return hit;</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>116</span></div> | |
<pre><code class="language-java"> }</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>117</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>118</span></div> | |
<pre><code class="language-java"> private static String checkForWinner(boolean player1Bust, String player1Name, int player1Total,</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>119</span></div> | |
<pre><code class="language-java"> boolean player2Bust, String player2Name, int player2Total)</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>120</span></div> | |
<pre><code class="language-java"> {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>121</span></div> | |
<pre><code class="language-java"> if (player1Bust)</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>122</span></div> | |
<pre><code class="language-java"> {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>123</span></div> | |
<pre><code class="language-java"> System.out.printf("%s busted with a total of: %d%n",player1Name,player1Total);</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>124</span></div> | |
<pre><code class="language-java"> System.out.printf("** %s has won the round with a total of: %d **%n", player2Name, player2Total);</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>125</span></div> | |
<pre><code class="language-java"> }</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>126</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>127</span></div> | |
<pre><code class="language-java"> if (player2Bust)</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>128</span></div> | |
<pre><code class="language-java"> {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>129</span></div> | |
<pre><code class="language-java"> System.out.printf("%s busted with a total of: %d%n",player2Name,player2Total);</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>130</span></div> | |
<pre><code class="language-java"> System.out.printf("** %s has won the round with a total of: %d **%n", player1Name, player1Total);</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>131</span></div> | |
<pre><code class="language-java"> }</code></pre> | |
</div> | |
<div class="commentary"><p>Note that the contents of both of your above if-statements are nearly identical -- you should refactor that out.</p></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>132</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>133</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>134</span></div> | |
<pre><code class="language-java"> if (!(player1Bust) && (player1Total > player2Total))</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>135</span></div> | |
<pre><code class="language-java"> {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>136</span></div> | |
<pre><code class="language-java"> System.out.printf("** %s wins the round with a total of: %d **%n",</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>137</span></div> | |
<pre><code class="language-java"> player1Name, player1Total);</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>138</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>139</span></div> | |
<pre><code class="language-java"> }</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>140</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>141</span></div> | |
<pre><code class="language-java"> else if (!(player2Bust) && (player2Total > player1Total))</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>142</span></div> | |
<pre><code class="language-java"> {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>143</span></div> | |
<pre><code class="language-java"> System.out.printf("** %s wins the round with a total of: %d **%n",</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>144</span></div> | |
<pre><code class="language-java"> player2Name, player2Total);</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>145</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>146</span></div> | |
<pre><code class="language-java"> }</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>147</span></div> | |
<pre><code class="language-java"> else if (!(player1Bust) && (!(player2Bust)) && (player1Total == player2Total) )</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>148</span></div> | |
<pre><code class="language-java"> {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>149</span></div> | |
<pre><code class="language-java"> System.out.printf("** %s & %s have tied! **%nBoth totaling: %d%n",</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>150</span></div> | |
<pre><code class="language-java"> player1Name, player2Name, player1Total);</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>151</span></div> | |
<pre><code class="language-java"> }</code></pre> | |
</div> | |
<div class="commentary"><p>I would take a look at simplifying the logic of your if statements here -- there's a lot of redundancy, and you can probably restructure your statements so that you don't constantly need to check whether or not a given player has gone bust.</p></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>152</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>153</span></div> | |
<pre><code class="language-java"> return "";</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>154</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>155</span></div> | |
<pre><code class="language-java"> }</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>156</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>157</span></div> | |
<pre><code class="language-java"> private static String setPlayerName()</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>158</span></div> | |
<pre><code class="language-java"> {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>159</span></div> | |
<pre><code class="language-java"> Scanner userInput = new Scanner(System.in);</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>160</span></div> | |
<pre><code class="language-java"> System.out.println("Please select a name for yourself");</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>161</span></div> | |
<pre><code class="language-java"> String playerName = userInput.nextLine();</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>162</span></div> | |
<pre><code class="language-java"> return playerName;</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>163</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>164</span></div> | |
<pre><code class="language-java"> }</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>165</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>166</span></div> | |
<pre><code class="language-java">// private static String setComputerName()</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>167</span></div> | |
<pre><code class="language-java">// {</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>168</span></div> | |
<pre><code class="language-java">// Scanner userInput = new Scanner(System.in);</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>169</span></div> | |
<pre><code class="language-java">// System.out.println("Please select a name for the Computer");</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>170</span></div> | |
<pre><code class="language-java">// String playerName = userInput.nextLine();</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>171</span></div> | |
<pre><code class="language-java">// return playerName;</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>172</span></div> | |
<pre><code class="language-java">// }</code></pre> | |
</div> | |
<div class="commentary"><p>Be sure to delete all temporary/commented out code. That's what version control's for.</p></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>173</span></div> | |
<pre><code class="language-java">}</code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>174</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>175</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>176</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div> | |
<div class="line not-annotated"> | |
<div class="codeline"> | |
<div class="lineno"><span>177</span></div> | |
<pre><code class="language-java"> </code></pre> | |
</div> | |
<div class="commentary"></div> | |
</div></div> | |
</div> | |
<script src="https://cdnjs.cloudflare.com/ajax/libs/velocity/1.2.2/velocity.min.js"></script> | |
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/0.0.1/prism.min.js"></script> | |
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script> | |
<script> | |
(function() { | |
function createButtonElement() { | |
var div = document.createElement('div'); | |
var span = document.createElement('span'); | |
span.textContent = 'Hide'; | |
div.appendChild(span); | |
div.setAttribute('class', 'button'); | |
return div; | |
} | |
function createButton(element) { | |
var button = createButtonElement(); | |
button.addEventListener('click', function() { | |
$(element).toggle(250); | |
if (button.textContent == "Hide") { | |
button.innerHTML = "<span>Show</span>"; | |
//element.classList.add("hidden"); | |
} else { | |
button.innerHTML = "<span>Hide</span>"; | |
//element.classList.remove("hidden"); | |
} | |
}); | |
return button; | |
} | |
function insertToggle(element) { | |
element.parentNode.insertBefore(createButton(element), element); | |
} | |
var annotations = document.querySelectorAll(".annotated .commentary"); | |
for (var i = 0; i < annotations.length; i++) { | |
insertToggle(annotations[i]); | |
} | |
})(); | |
</script> | |
</body> | |
</html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment