Hello!
This is the prototype version of:
---- The Aggressive Botany League ----
a local multiplayer plant based deathmatch
Plant seeds into walls to push your opponent into the ocean (or to squish him!)
--- Controls ---
-
Movement
Player1: arrows
Player2: EDSF -
Wall breaking:
Face a wall and press Z (player2: TAB) 3 times to break it - Plant seed:
Face a wall and press X (player2: Q) to plant a seed into it
There are 4 types of seed (green, yellow, red and black) each with a different effect
You can carry only one seed at a time
best played with 2-4 gamepads
enjoy!
A toy that pokes the sfx RAM full of random garbage and lets you play the results on multiple channels. It'll mostly sound like generic computer ambience from an old educational film.
The randomly generated sounds will be stored in the ROM on startup, so comment out the cstore() at the end of the _init() function if you want to save your sounds for posterity's sake.
Disabling a single channel should technically stop playback on that channel, but it occasionally won't. This might be due to the weird looping points that the program generates for each sfx.

Feature request: Have control-click act as right-click, to better support Macs with one-button mice.
There are two controls that use click and right-click to increase and decrease a number, namely sfx speed and music pattern selector. Macs usually come with one-button mice or trackpads, so right-click actions are often also available as control-click (hold Control, click). In 0.1.0 control-click acts as "fast increase" instead of "decrease." It'd be great if control-click were "decrease" in these cases.
I notice shift-click is also "fast increase," so there's no loss of a feature. Shift-control-click could be "fast decrease."
Thanks!
-- Dan
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.






2 comments















