Believe it or not, there is a huge difference between if you want to learn programming and make games or want to learn programming to make games. The difference being that in the former situation you are equally passionate about both game dev'ing and programming (separately passionate) and want to pursue them both. In the latter situation, you are interested in programming, but this as a means to your goal to make games. I have totally separate advice for whichever one you are. Neither way of thinking is better.
If you want to learn programming and make games, then I would recommend partitioning or wiping your HDD and installing GNU/Linux and using C to start making programs using legendary tools like GCC, make, GNU nano, bash, Emacs, and GNU/Linux itself. This is a whole different topic, but there is still something I must address. I will definitely get a lot of flak here for recommending what I just did, but honestly if you learn this stuff, everything else is easier and not superstitious. You can then learn C++ if you want to fit in with everyone else, once your projects become too big for C (you can judge this based on what is comfortable size for you). You don't have to use C++ for large projects, it's all preference. C code is valid C++ code, but not vice versa (its like C is the inside layer of a C++ onion). Some might recommend you stick with something like Python, Lua, or Java on Windows ($indows), but if you are passionate about programming separate from games, you might as well learn the mainstays and norms of the modern PC.
Overall, you have some very productive times available to you. Kids have lots of energy at your age, and they also have lots of time. High school is a lot easier than university and you still probably have some productive time on your hands. I would recommend maybe taking classes like calculus and physics (especially if your school has an AP program) so that you can build experience in things that you may not think relate to programming and games, but do indeed. Respond if you want me to elaborate on anything I said.