Hi there, I wanted to tell you how much this specific video changed my life. 3 years ago I came across this video and was amazed by the simplicity and fun I saw in your content, I became addicted to it and started really getting into coding thanks to you (I knew python before but it wasn’t such a big thing for me) after awhile I learned c as well and you made a series about machine learning and i fell in love with the subject, I learned everything I could about it and entered a program which I was supposed to only do maths and physics in it but thanks to you I gave CS a chance and I did many projects in the subject ever since and enjoyed all of them. So I want to say a HUGE thanks to you!
AMAZING VIIDEO!!! CAN U DO FIVE NIGHTS A FREDDYS PLZ
8 ปีที่แล้ว +1
If you are new, my recommendation would be c# or java. Thus go for visual studio or Eclipse/Netbeans. Those are fairly simple to use and pretty easy to start with.
You popped up in my recommended for some reason. I don't even know coding or have any particular interest in it, but you're so good at keeping me watching I want to see the finished code. Great work!
These coding challenges are actually teaching me a lot more about Java than my teacher does in the past 4 years I have spent in my programming classes, and these challenges are so much fun too!
Sujith Nakkala my Java class, I'm majoring in Computer Science actually lol but the syllabus here makes everything look hard because they're all outdated syllabus
Dude, I love you videos. You're also a very engaging, smart and entertaining person which makes this a lot more fun to watch! Keep up the good work!!!!
Hi! i am a guy called shiffman by many, and this is my first ted talk! so, lets not waste time! you start here.....and then you simply have to type......THIS DOOT THIS DOOOT THIS DOOOT and we are done
You are the best man to teach me to code because of your energy. I don’t feel condescended I do feel rushed and I love it. Thank you. You make it feel enjoyable.
I never knew programming can be made this entertaining (or should I say this DOT entertaining? :D ), I enjoy doing it but never enjoyed watching someone else do it. Fastest sub of my life.
srsly you are a true inspiration! thanks so much for making those videos. I have coding as part of my university and often i miss that exact exitement you show and the empathy i can creat through this. Really well done. for me this gives me such a higher learing factor!! keep it up
Would be cool if there was a place people could load their altered versions of your code which could be voted on by users! Would love to see what people do from your work. Love your videos!
There are many open available social platform/CMS tools and integrating some capabilities that codepen has (may already be open source). I'm sure you'd find a way to make this work. From then produce categories for each challenge :)
I've been wanting to learn how to program for years, I had started, but couldn't find any good tutorials. But just from watching this one video, I've already learned so much more.
Thanks!! You can try either of these playlists to start from scratch! th-cam.com/users/shiffmanplaylists?view=50&shelf_id=14&sort=dd th-cam.com/users/shiffmanplaylists?view=50&shelf_id=2&sort=dd
Extremely talented. Do you think about the implementations before you start recording the video or do you come up with the code this quickly on the fly?
About the pipes I would have instead set a fixed space between the up pipe and the bot pipe and make that a random position in the height, with a limit to how lower it can be and how up it can be. I don't know if you get what I mean. I don't know how to program yet tho, I can just give some ideas to improve the code :p
Doomz It's actually quite a good idea, specially the limit thing. And yeah it shouldn't be too hard to program something like 8 lines of code or something.
That. Or start with a big value and continually make the space smaller up to a minimum size, so the difficulty increases. I don't know the framework, but probably Pipe doesn't know framecount etc., but adding a parameter to the constructor which determines its size would work.
Doomz and also something to measure the distance from one gap to another... for example if the 1st gap is at the highest point and the one next is at the lowest it won't actually be passable... there should be something to prevent that.. but I don't know Java so I don't know if it's possible
This kind of coding of you is so helpful and you really help to understand all the commands without any knowledges. For me it would be better, if this would be java and not js, but great work! Keep going!
the green stripe in your headband is registering for the green-screen setup and it looks like the top of your head is detached hahaha :) great videos man
Hey Dan, could you make a playlist with your coding challenge videos? I really enjoy watching them but as it is, it's kinda inconvenient to watch them in order
New Sub. I like how you make the projects almost barebones so we have to work on the code and make it look better. It forces us new guys to look things up and learn as we do. Keep those vids comin my brotha aka @The Coding Train.
This kind of felt like an interactive lesson I was agreeing with you, telling you what you can do. I feel as if your channel is going to help me learn.] A big thanks and I subscribed!
A good way of doing the flight system is to have gravity always acting on the birds velocity and have a flap reset the velocity to the upward force you want. So for example if you flap, the upward force will instantly be set to lets say -10 (moving to the top of the screen) and gravity will constantly be adding to that number once per frame. This is kind of what it looks like: Flap (velocity is now -10) velocity = velocity + gravity (-10 + 0.7) (velocity = -9.3) Bird is still moving up next frame: velocity = velocity + gravity (-9.3 + 0.7) (velocity = -8.6) Bird is still moving up next frame: velocity = velocity + gravity (-8.6 + 0.7) (velocity = -7.9) Bird is still moving up Skip a few frames (to where velocity = -.2) next frame: velocity = velocity + gravity (-0.2 + 0.7) (velocity = +.5) Bird now starts to move down As the frames pass the bird will start to go down faster and faster until there is once again a flap. At that point the velocity is once again reset to -10 and the bird starts to move up until gravity can change the velocity to a positive number again.
these are fun to watch, but processing is a really high level ide and one day i wish you would show us how to use an ide like netbeans or eclipse to build up to a workflow like that in processing.
I remember like 4 years ago that I made Flappy bird on scratch, it took me many hours and I was super proud. And I've just seen someone do that in just 20 min.
to make the game play more like flappy bird, you can make it so that instead of adding the lift every time it jumps, you just make the velocity equal to the lift constant. then when you spam the spacebar it won't spaz out and go really high, it will just jump up like the actual game.
To make the up() function work well you just need to set velocity to 0 before the jump (velocity += lift) that will solve the space button that overloads the jump.
I am not a usual subscriber and I won't admire you the way people use to. I really like the rainbow colors i just wanna say your channel have all the flavours and colors just the ways in the rainbow.
This is pretty helpful! I'm learning JS from a Code Dojo book at the moment and this video helped brig some context to the way of thinking in terms of functions. I'm getting a better grasp at the concept now :3 ❤
just a thought but the reason the lift thing was working so wonky was because it kept adding velocity. Would've made more sense to do: this.velocity = this.lift This would do three things: 1. automatically limit your lift speed 2. when the bird is going down at some massive speed (because it dropped from y=0 or something) you only need to press once to make it go up in stead of having to slow it down with multiple presses. 3. make the "air resistance" variable redundant since the max speed the bird can now attain is however much it can gain when dropping from y=0 to y=height which is way easier to tune
oh cool, this is the first of these video i watched. i thought at first that you would be writing code to play the game for you. that would be pretty cool!
you could make the space of the pipe static and just have one random number for where the start of the hole in the pipe is. for the pipes you could have a static array of a few pipes when the pipe hits the end move it back to the right side of the screen. that way your not constantly creating and deleting from the array. When the pipe is sent back to the right reset the random position of the hole in the pipe. Creating objects and deleting is costly and by reusing the existing objects you save resources.
My point is, you access an attribute of on object by doing "myObject.myAttribute", or "myAttribute", or "myObject.getMyAttribute". the A::B is for declaring the class functions, and... sometimes attributes. Eh, I guess you're right ;)
for people who want to set the size of the gap in each pipe use this code: constructor(){ this.box = 150 this.top = random(height - 100) this.bottom = (height - this.top) - this.box ; this.x = width; this.w = 20; this.speed = 3 ; } show(){ fill(255); rect(this.x, 0, this.w, this.top) rect(this.x, height-this.bottom, this.w, this.bottom) } you can adjust the size of the gap by change this.box 😊
Haven't finished the video yet, but velocity should be reset before applying the lift. That makes each jump the same height, no matter how fast you're falling, like the original Flappy Bird.
One way to make it into a rainbow and flowers is to draw a vine of flowers along the path of the flower and change the pipes so that they are an array of circles positioned off screen enough to look like rainbows.
Hey don't worry about the haters who tell you to write something this way or that. The way you did it is more readable in my opinion and therefore easier to understand.
Hi there, I wanted to tell you how much this specific video changed my life. 3 years ago I came across this video and was amazed by the simplicity and fun I saw in your content, I became addicted to it and started really getting into coding thanks to you (I knew python before but it wasn’t such a big thing for me) after awhile I learned c as well and you made a series about machine learning and i fell in love with the subject, I learned everything I could about it and entered a program which I was supposed to only do maths and physics in it but thanks to you I gave CS a chance and I did many projects in the subject ever since and enjoyed all of them. So I want to say a HUGE thanks to you!
You are the Bob Ross of programming.
Hahahahahaha! Spot on
No glitches, just happy little bugs.
haha he's pretty much nothing like Bob Ross. Except they're both positive people?
funny
Squrpion what about him smacking something on his stool. He can smack his mouse (or computer) and then he will be Bob Ross
And he's not dead.
I like the green part in that band on your head
YourNightmar3 what green part? I dont see it
Dennis van hove Hahaha xD
+Dennis van hove that's because it's green.
HA HA HA !!! Basics of green screen ! he spent too much time learning code that he forgot the basics of green screen !
Shantanu Kulkarni well maybe he did it on purpose
Can we all just take a moment to appreciate the fact that Danny's head and hands are disconnected from the rest of him?
lol that green colored band lines x]
he is the Rayman of coding
I've seen disembodied heads before but disembodied scalps?
That's because when he is tired he puts them to recharge today they were a little loose.
Sleeping Assassin ac rebellion #bestacgame (jk ofc ac 2 = best)
"Coding Challenge" is so USEFULL ! thanks for your work
Thanks for watching!
AMAZING VIIDEO!!! CAN U DO FIVE NIGHTS A FREDDYS PLZ
If you are new, my recommendation would be c# or java. Thus go for visual studio or Eclipse/Netbeans. Those are fairly simple to use and pretty easy to start with.
Axel Paris
Yes ?
You popped up in my recommended for some reason. I don't even know coding or have any particular interest in it, but you're so good at keeping me watching I want to see the finished code. Great work!
I'm so glad to hear thank you!
Can you make half life 3 please?
best comment every
I swear he wont
up pleas
Make battlefield
make star craft 2 pls
These coding challenges are actually teaching me a lot more about Java than my teacher does in the past 4 years I have spent in my programming classes, and these challenges are so much fun too!
whiteexpress94 JavaScript
whiteexpress94 what are you majoring in? Or what class?
Sujith Nakkala my Java class, I'm majoring in Computer Science actually lol but the syllabus here makes everything look hard because they're all outdated syllabus
whiteexpress94 This is a different language than Java
Sheepdog_ yes it's javascript
This guy is like the bob ross of coding. I’m already hooked and subscribed. Thank you for making coding look so fun.
I just love how the green on your headband is interfering with the green screen
indeed xD
literally just watched a 21 minute video of a guy doing something that i don't understand in any way whatsoever.
Mason Richards You can learn it.
Mason Richards he basically used a lot of logic and algebra
Same here and I'm smoking a joint I think I'm going to learn how to code tomorrow
Bzilla Whoop so did you learn to code? :p
This is actually pretty simple, I understood this when I was 14, and I can't code shit xD
FINALLY A CODING TH-camR
Donco Cubing so you too are a cuber
Hey fellow cubers
Ya code cubes ah?
Donco Cubing ф
uh have you heard of dani
Dude, I love you videos. You're also a very engaging, smart and entertaining person which makes this a lot more fun to watch! Keep up the good work!!!!
you're a very good speaker!!! you should do a ted talk :)
Hi! i am a guy called shiffman by many, and this is my first ted talk! so, lets not waste time! you start here.....and then you simply have to type......THIS DOOT THIS DOOOT THIS DOOOT
and we are done
^
Never in my entire life was I so glad I used youtube recommendations.
welcome!
WOOOWW!! I'm impressed by your rapidity and the fluentness of your reasonnings!!!!! I already subscribed and so happy for having done that.
I don't know anything about programming but for Some Reason i enjoy watching these videos
Freek Mol samee
Same as me but im trying to learn
Wish me luck!!
You are the best man to teach me to code because of your energy. I don’t feel condescended I do feel rushed and I love it. Thank you. You make it feel enjoyable.
I just wanna meet with him , he has some sort of happiness disorder , God bless you man!
Grammar mistake, it must be "meet him"
I never knew programming can be made this entertaining (or should I say this DOT entertaining? :D ), I enjoy doing it but never enjoyed watching someone else do it. Fastest sub of my life.
You're a freakin' coding machine brother! I bow, in Wayne's World fashion, as I chant "We're not worthy . . . we're not worthy!"
I found you channel yesterday and i am totally hooked to your coding challenge video, you are great, and i love the way you teach.
you should make a genetic algorithm with this and make the fitness value based on how long the user played without hitting a pipe or something!
yes please do this
+1
Great idea! I am hoping to do something with this and machine learning yes!
srsly you are a true inspiration! thanks so much for making those videos. I have coding as part of my university and often i miss that exact exitement you show and the empathy i can creat through this.
Really well done. for me this gives me such a higher learing factor!!
keep it up
the green in your rainbow headband is slicing your head in half lmao
heh, indeed.
Green is keyed out : )
It did it with his hands too! Lmao
LOL
Man, the way you convert your ideas to code as you go is awesome. What a beauty!
Would be cool if there was a place people could load their altered versions of your code which could be voted on by users! Would love to see what people do from your work. Love your videos!
+Sam Robertson I love this idea! Will have to think about how to do this. Open to ideas.
There are many open available social platform/CMS tools and integrating some capabilities that codepen has (may already be open source). I'm sure you'd find a way to make this work. From then produce categories for each challenge :)
maybe a subreddit?
Discord??
You are probably the most unique coder who, when watched, is greatly enjoyed.
Mike Boyd anyone?
Yeah am watching this cause of tht sound game he coded
I've been wanting to learn how to program for years, I had started, but couldn't find any good tutorials. But just from watching this one video, I've already learned so much more.
Thanks!! You can try either of these playlists to start from scratch!
th-cam.com/users/shiffmanplaylists?view=50&shelf_id=14&sort=dd
th-cam.com/users/shiffmanplaylists?view=50&shelf_id=2&sort=dd
wow. first time ive seen a video that makes coding fun
erlfram if it isn't fun for its sake this isn't for you.
your coding really encouraging new programmers, then teach them how programming is easy! thanks so much Mr.CODE.
Extremely talented. Do you think about the implementations before you start recording the video or do you come up with the code this quickly on the fly?
+Binley it depends. I do both. For this one I just made it up. Some I've done before but maybe not in a long time.
Daniel Shiffman that's talent and a lot of experience
Andrew, that's how you actually get better at anything
Well.. what about philosophy?
You're simply the best! Extremely helpful and fun to watch! Amazing format!
About the pipes I would have instead set a fixed space between the up pipe and the bot pipe and make that a random position in the height, with a limit to how lower it can be and how up it can be. I don't know if you get what I mean. I don't know how to program yet tho, I can just give some ideas to improve the code :p
Doomz Like a 20pixel space for all pipes but placed at a random height?
thekenmatax Yes, but with a limit up and down so it cannot touch the floor or the top
Doomz It's actually quite a good idea, specially the limit thing. And yeah it shouldn't be too hard to program something like 8 lines of code or something.
That. Or start with a big value and continually make the space smaller up to a minimum size, so the difficulty increases.
I don't know the framework, but probably Pipe doesn't know framecount etc., but adding a parameter to the constructor which determines its size would work.
Doomz and also something to measure the distance from one gap to another... for example if the 1st gap is at the highest point and the one next is at the lowest it won't actually be passable... there should be something to prevent that.. but I don't know Java so I don't know if it's possible
This was on my recommended page.. checked it out . This dude is amazing !
8:18 Ouch! Did the ball hurt you too muh?
much*
haha, thank you for watching!
This kind of coding of you is so helpful and you really help to understand all the commands without any knowledges. For me it would be better, if this would be java and not js, but great work! Keep going!
This guy is the best teacher in history
the green stripe in your headband is registering for the green-screen setup and it looks like the top of your head is detached hahaha :) great videos man
Hey Dan, could you make a playlist with your coding challenge videos? I really enjoy watching them but as it is, it's kinda inconvenient to watch them in order
Ryan Kupka there is one
can't you just make your own with his videos?
Just found your channel, absolutely love it, and realized this video was uploaded on my bday
Hi, love your enthusiasm and animated, jovial tutorial. It's so funny watch. Thanks
So glad to hear, thank you!
@@TheCodingTrain On the Creating a Bird Object part, I keep getting an error that says Bird is not defined.
Man you are really awesome you helped me so much throughout my career, I really can't thank you enough :D
So you get paid, to code, dress funny, and talk randomly. I want your job.
Penguindon that's called "doing what you love with love... And most importantly get paid for doing that" 😂
BlackSky Tech or "succeeding like a monster in life"
Penguindon i think he is also a teacher but i am not very sure
Penguindon become a teacher :p
Wait until you hear what Pewdiepie does. Play video games and does whatever he wants. And gets paid millions!
New Sub. I like how you make the projects almost barebones so we have to work on the code and make it look better. It forces us new guys to look things up and learn as we do. Keep those vids comin my brotha aka @The Coding Train.
want to see the pac man game, in you next video,
#pac man coding Challenge.
+Shabab Ahmed 👍👍
Are u Arabic
I love that the green part of your headband makes your head see through.
I'd like to see him wear a full sleeved green shirt, along with a green cap in one of his videos
that would be funny
Great idea.
@@TheCodingTrain lmao
5:48 "And I've got a sneaking suspicion that something has gone terribly wrong." ~coding quote of the year, The Coding Train
i'm liking this much more than the genetic algorithm stuff.
This kind of felt like an interactive lesson I was agreeing with you, telling you what you can do.
I feel as if your channel is going to help me learn.]
A big thanks and I subscribed!
I keep watching your videos and don't even program :s
haha fire
rest0ck I
I programming in C++, and I'm watching his videos hahaha :)))
Just shows you may have some deep-rooted interest/desire to code :) get on it!
hahahahahaha don't mames
Dude you are excellent at coding, new SUB!
I'm starting to think i'm autistic, i keep watching these yet i never code myself.. its just so stimulating to watch.
After watching your video, I try to implement it with pygame and it worked
Just appreciate your nice coding lesson!
You're a very good teacher easy to understand
I don't do coding by i love this videos! Please continue doing coding challenges! Keep up the awesome work!!!
Your hair is floating on top of your head 😁
Hahah, was just about to say that:D
Hahah, was just about to say that too:D
xD yeh
His hand to.
It's an Extension Brain Module, he made it in Javascript, He's a Genius :-)
idk why i like this dude! he's so good at this stuff
Hehe the green in his head-band went with the screen
SlimJim487 it is that way because the screen behind him is a green screen
wow!
Cj Williams Yeah i know i just thought it was funny looking
SlimJim487 OMGGG. CANNOT BE UNSEEN 😂😂. Jesus, now i have to watch the rest of the video looking at that
A good way of doing the flight system is to have gravity always acting on the birds velocity and have a flap reset the velocity to the upward force you want.
So for example if you flap, the upward force will instantly be set to lets say -10 (moving to the top of the screen) and gravity will constantly be adding to that number once per frame.
This is kind of what it looks like:
Flap (velocity is now -10)
velocity = velocity + gravity (-10 + 0.7) (velocity = -9.3) Bird is still moving up
next frame:
velocity = velocity + gravity (-9.3 + 0.7) (velocity = -8.6) Bird is still moving up
next frame:
velocity = velocity + gravity (-8.6 + 0.7) (velocity = -7.9) Bird is still moving up
Skip a few frames (to where velocity = -.2)
next frame:
velocity = velocity + gravity (-0.2 + 0.7) (velocity = +.5) Bird now starts to move down
As the frames pass the bird will start to go down faster and faster until there is once again a flap.
At that point the velocity is once again reset to -10 and the bird starts to move up until gravity can change the velocity to a positive number again.
these are fun to watch, but processing is a really high level ide and one day i wish you would show us how to use an ide like netbeans or eclipse to build up to a workflow like that in processing.
I kinda finished in Processing with score and a specific space between the up pipe and down pipe, this is so amazing, thanks dude!
Thanks for watching!
6:49, every time I push the space button, it goes back to the beginning, why?
I remember like 4 years ago that I made Flappy bird on scratch, it took me many hours and I was super proud. And I've just seen someone do that in just 20 min.
Hey Dan, how can we convert our processing applets to apk files for uploading to google play store
Take a look at Processing android: android.processing.org/
okay, thanks a lot. It also look amazing!
to make the game play more like flappy bird, you can make it so that instead of adding the lift every time it jumps, you just make the velocity equal to the lift constant. then when you spam the spacebar it won't spaz out and go really high, it will just jump up like the actual game.
my improved version: saikatbasak.in/public/games/CrappyBird/
imgur.com/gallery/RGCKI
Noice bro!
Hey great job! Love the art! High score of 6!
To make the up() function work well you just need to set velocity to 0 before the jump (velocity += lift) that will solve the space button that overloads the jump.
something like
this.up() = function
{
this.velocity = 0;
this.velocity += - this.lift;
}
It took me about a month to code a slightly worse version, though I did it all in assembly!
I am not a usual subscriber and I won't admire you the way people use to. I really like the rainbow colors i just wanna say your channel have all the flavours and colors just the ways in the rainbow.
Can you start coding tutorials as in like the programming techniques etc
This is pretty helpful! I'm learning JS from a Code Dojo book at the moment and this video helped brig some context to the way of thinking in terms of functions. I'm getting a better grasp at the concept now :3 ❤
what language do i need to learn to make games like these?
is it just javascript?
Yup! You can start here: th-cam.com/users/shiffmanplaylists?shelf_id=14&view=50&sort=dd
Daniel Shiffman link doesn't work
ShelStone works on pc
?????
well it is a framework, so you will want to learn p5 functions and variables
It's so mesmerizing watching you type in codes
Thanks for watching!
which
{
do
}
you{
prefer
}
?
First one
Definitely the second one
Second one
First one to read, second one while coding :d
Second
I enjoy seeing how people make games using a pure javascript, it shows creativity.
Kerim Grozny is this javascript?
impressed!
Thanks!
I love how the colour of the headband got edited out to make the top of his head float.
this dooot, this dooot
This dot this dood
Maybe a break down video as a pair for these coding challenges as I want to know about the techniques and how and when you use them
please make a follow up
+Singed Main I did! Search for clappy bird.
I had so much trouble with OOP before I saw your vids, keep it up
Glad to hear, thank you!
tried it myself, its far away from perfect, but it works and makes fun to play.
games.mike-ochmann.de/flappy-bird/
this is perfect lol
Gravity DEAD !! fix it
just a thought but the reason the lift thing was working so wonky was because it kept adding velocity.
Would've made more sense to do:
this.velocity = this.lift
This would do three things:
1. automatically limit your lift speed
2. when the bird is going down at some massive speed (because it dropped from y=0 or something) you only need to press once to make it go up in stead of having to slow it down with multiple presses.
3. make the "air resistance" variable redundant since the max speed the bird can now attain is however much it can gain when dropping from y=0 to y=height which is way easier to tune
Do tetris
I've been making Flappy Swift for the past two weeks. He did it in 20 mn. I hate myself.
I always feel he is on drugs in all of these videos.. I like him.
Ginger tea is an amazing thing.
oh cool, this is the first of these video i watched. i thought at first that you would be writing code to play the game for you. that would be pretty cool!
OMG dude! I don't want to alarm you! But you have a hole in your head!
you could make the space of the pipe static and just have one random number for where the start of the hole in the pipe is. for the pipes you could have a static array of a few pipes when the pipe hits the end move it back to the right side of the screen. that way your not constantly creating and deleting from the array. When the pipe is sent back to the right reset the random position of the hole in the pipe. Creating objects and deleting is costly and by reusing the existing objects you save resources.
"this." is cancer
you like the C++ style?
Object::attribute
why?
ehmm, this isn't really how C++ works, but yeah I see your point.
Gus TroisMille when using headers
My point is, you access an attribute of on object by doing "myObject.myAttribute", or "myAttribute", or "myObject.getMyAttribute".
the A::B is for declaring the class functions, and... sometimes attributes. Eh, I guess you're right ;)
for people who want to set the size of the gap in each pipe use this code:
constructor(){
this.box = 150
this.top = random(height - 100)
this.bottom = (height - this.top) - this.box ;
this.x = width;
this.w = 20;
this.speed = 3
;
}
show(){
fill(255);
rect(this.x, 0, this.w, this.top)
rect(this.x, height-this.bottom, this.w, this.bottom)
}
you can adjust the size of the gap by change this.box 😊
This.subscribe=true
Definitely subscribing!! I got a job as a software engineer for next summer but I have a lot to learn. Will definitely keep watching your vids
Welcome!
Haven't finished the video yet, but velocity should be reset before applying the lift. That makes each jump the same height, no matter how fast you're falling, like the original Flappy Bird.
Jordan Fry this bothered me too
One way to make it into a rainbow and flowers is to draw a vine of flowers along the path of the flower and change the pipes so that they are an array of circles positioned off screen enough to look like rainbows.
you my friend are a genius - very good , quick thinking and creative mindset - keep up the good work
Hey don't worry about the haters who tell you to write something this way or that. The way you did it is more readable in my opinion and therefore easier to understand.