Introduction xi
About This Book xi
Foolish Assumptions xii
Icons Used in This Book xii
Where to Go from Here xii
Chapter 1: Getting Started with Java and Processing 1
Getting Started with Processing 2
Save and Reopen Processing Programs 9
Chapter 2: Writing Your First Program 13
Getting to Know the Canvas 14
Calling Methods in Java 21
Creating Variables 23
Chapter 3: Drawing with Code 25
Drawing a Triangle 26
Drawing a Rectangle 30
Drawing a Quadrilateral 32
Drawing an Ellipse 34
Drawing an Arc 36
Creating a Unique Drawing 38
Chapter 4: Adding Color to the Canvas 39
Adding Color to Your Canvas 40
Learning about RGB Values 43
Adding Color to Shapes 45
Chapter 5: Coding Your First Animation 51
Learning about Methods 52
Writing Your First Two Methods 54
Writing Your First Two Original Methods 57
Adding Parameters to Your Method 63
Chapter 6: Allowing User Interaction 67
Moving with the Mouse 68
Interacting with Mouse Clicks 72
Making a Horizontal Slider 74
Working with Conditional Statements 75
Moving Shapes with the Keyboard 79
Chapter 7: Coding Your First Game 85
Creating a Scene 86
Adding a Character to Your Game 90
Adding Movement to Your Videogame 96
Updating the Background 99
Adding Gravity to Your Videogame 101
Making Lava Pits 104
Chapter 8: Making Artificial Intelligence 111
Adding an Enemy to Your Videogame 112
Making the Enemy Move 114
Creating Your Own Java Class 116
Creating a Second Java Class 123
Adding Health to Your Character 128
Giving Your Enemies Collision Detection 131
Chapter 9: Planning Your Ninja Bird Game 135
Making Sense of the Flappy Bird Code 138
Outlining Your Ninja Bird 140
Designing Your Java Classes 141
Chapter 10: Planning Your Ninja Bird Methods 147
Designing Your Setup Method 148
Designing Your Draw Method 151
Designing Your Collision Methods 156
Adding Helper Methods 159
Chapter 11: Coding the Ninja Bird Basics 165
Converting Comments to Code 166
Chapter 12: Coding the Final Ninja Bird Code 191
Adding Randomness to Your Pipes 192
Detecting Collision 194
Keeping Score in Your Game 201
Cleaning Up the Code 208