So I'm getting ready to make a new game, in which the player will be able to push other objects around in an AOE.
I have a table, ACTORS, which will hold all my actors; each one will have x/y coordinates.
So, to get everything within radius R of point X, Y:
function get_near(x,y,r) for i in all(actors) do --use some math to get the hypotenuse vx=i.x-x --get the distance on X vy=i.y-y --same for Y --SOME TRIG GOES HERE --Sorry, still a little fuzzy on my trig if(result<r)then add(list,i) end end return list end
Which would return a list containing...what, exactly? This is where I run into the problem.
If adding an item from one list to another copies the original to the new list, then I get a list of actors that's basically useless--I can't push them around, because if I do anything to list, it won't affect actors.
However, if adding an item from one list to another creates a pointer to the first list, then I'll be able to use this to conveniently push stuff within a certain distance.
You are Flynn Flier, Ace Aerospacer, Space-Dart Superhero! After escaping Tranus's Test, you fly to planet Zondak, a land of energy-ball beings! You've been tasked with circumnavigating Zondak--with every ball of plasma on the planet trying to kill you! Weave through the world of the Zondaks, zapping everything in your way! Will you make it through the 13 zones of Zondak?
SPACE-DART PILOT'S MANUAL Use the ARROW KEYS to maneuver your craft LEFT, RIGHT, FORWARD, and BACKWARD. Note that you will pilot this ship in THREE DIMENSIONS! Press the Z key to ASCEND. Release the Z key to DESCEND. Your ship will automatically hover above the ground, so don't worry about crashing! Apply pressure on the X key to fire an ENERGY BLAST. Your ship can only manage the energy for one ENERGY BLAST per second, but each one is powerful enough to disrupt one Zondak Plasma Sphere. You will score 10 points for each Zondak Plasma Sphere you destroy, and clearing a zone scores you 100 points times that zone's number (clearing zone 1 gives you 100 points, zone 2 gives you 200, etc). You have 3 LIVES to reach Zone 13. Once you have made it past the final zone, you will see the GAME OVER screen, with your final score flashing on screen. Post a screenshot of this screen, with the zone and score clearly visible, and see how you stack up against other pilots!
A simple little 2.5d test. Arrow keys move left/right and "forward/back", Z key jumps.
I created this effect by drawing the sprite to the screen at X, Y+Z*"angle" where "angle" is a value between 0 and 1.
For this demo, it's set at 0.5.
You are Flynn Flier--Star Speeder! Known throughout the galaxy as one of the fastest pilots in the universe, you've always loved dodging danger and dashing through deadly dares.
One day, as you zoomed through the Altair constellation, you happened across a wormhole. Being the brave adventurer you are, you stepped on the gas and slipped through the tear in space-time...
You find yourself in a strange labyrinth, with your lazers disabled and a booming voice in your ear:
"I AM TRANUS, MIGHTY RULER OF THE MAZE YOU SEE BEFORE YOU. I ISSUE YOU A CHALLENGE, FLYNN FLIER--PASS THROUGH ALL THREE ZONES OF THE LABYRINTH, AND I SHALL SET YOU FREE!"
Your space-dart's engines roar behind you. The only way out is to get through the barriers before you. Will you reach the final Zone?
SPACE-DART PILOT'S MANUAL Use the ARROW KEYS to maneuver your craft. The Z KEY will perform a BARREL BOOST ROLL. This will make your SPACE DART speed up. However, you won't be able to move while performing the BARREL BOOST ROLL! You will score POINTS for flying through the holes in the WALLS at high speed, and for staying near the right edge of the screen. You score more points for moving quickly--but beware, your SPACE DART is not built for collisions, and running into a wall is sure to end in disaster! Your ship will AUTO-ROLL every four walls. Be prepared! Flying is harder when you're moving too fast to see! You will start in ZONE 0. After 5000 POINTS, you will reach ZONE 1. After 10000 POINTS, you will reach ZONE 2. Post a screenshot of your ship flying through ZONE 2, with your score clearly visible, and show off to your friends that you've passed Tranus's test!
After looking in the forums a little, I've found out how to get Pico-8--but it's not really clear, so I figured I'd put it down in a forum post for anyone looking through Google.
TO ACQUIRE A PICO-8 FANTASY GAMING CONSOLE:
Step 1: Go buy Voxatron.
Step 2: Give it a minute or so. You'll need to let the payments process and such.
Step 3: You will be able to request a download link for the PICO-8 FANTASY GAMING CONSOLE from your MY GAMES tab.
Step 4: Download and start making games!
Original post, for posterity: