This site requires JavaScript, please enable it in your browser!
Greenfoot back

Report as inappropriate.

JL235 presents ...


Super Thundershot

This is currently only in demo form. You are Super Thundershot and it is your duty to stop the Evil Space Armada from invading Earth and destroying all of humanity. Fly your way to victory!

move: W, A, S, D or the Arrow keys.
aim: mouse
shoot: left-mouse button

Your orbiting shooter can be used to stop incoming bullets. Destroy the earth supply ships that fly on from the left in order to collect power-ups.

Update - 12/10/2008
Fixed bugs:
login bug where people have to log in to play
danger arrow collision bug, now bullets do not collide with it

I have also changed how it draws the world which will allow me to achieve some effects I have planned easier and with lower overhead.

12390 views / 1697 in the last 7 days

24 votes | 0 in the last 7 days

Tags: space game shooter demo

This scenario is a member of: Scenario showcase

There is no HTML 5 translation of this scenario available.
View legacy version (requires Java plugin)

This scenarios uses Java features that are not available for use after conversion to HTML 5. Please try the legacy version, which requires the Java plugin to be installed.





JL235, did you ever figure out why you must be logged in to the gallery to play this scenario?


Yes, it's to do with the security manager and the GreenfootImage class. I am using reflection to change the BufferedImage used internally by the GreenfootImage. As standard GreenfootImages have full alpha support and I was replacing the BufferedImages with one that only had partial or no alpha support, as these were far faster. I had originally presumed that the security exception wasn't being caught by my code. My original solution was to catch it and so not have the images changed. It would be a lot slower if your not logged in, but would work. However it appears my code is catching it, so I'm still unsure why it fully breaks. I do however have a new fix which I might try implementing today (and actually do it too). I still plan to finish Super Thundershot but after I have finished my current game, Sokoban Supreme (comming soon).
A new version of this scenario was uploaded on Sat Oct 11 14:39:26 UTC 2008
A new version of this scenario was uploaded on Sat Oct 11 16:05:07 UTC 2008


Interesting... I like the 3-D effects you have, lol, I'm still trying to figure that out. Great job.


Amazing !!, how did you get the angle of the shooter with the mouseee ???


The angle is found through triginomety. You can create a triangle from the shooter to the mouse cursor. One side is the difference between both points on the x-axis, another side is the difference along the y-axis. These allows you to find the angle from the shooter to the mouse cursor. This is the code: double angle = Math.atan2(mouseY-getY(), mouseX-getX()); setRotation((int)Math.toDegrees(angle)); I also have my own class that wraps around the Mouse interface to offer an interface which I much prefer (and performs some internal error check for me). I also use the angle for setting the angle of the shot it creates.
You might want to consider changing the background to something less sporatic and consuming. I found it distracting and degrading on the speed. Constructive Criticism aside: This is a fantastic game, with good effects, playability, and Fun!
ty with the aid in trig code!

See all comments

Want to leave a comment? You must first log in.

Who likes this?

MrHam birdy Game/maniac eds bourne Busch2207 Advenging mulkan limefortheworld arbalyst programmer Supertux qnanqing kenshinakh kamegani jcjortiz kourtney1816 langy trickster polle