Think this ones gone off at a tangent a bit!
Quote: "how do i say like walk on a particular piece of land and it kills me....how will DBP know to kill me if it isn't reading that bit of code?"
Your program will run through each command a step at a time then loop back round to the start and repeat the steps. All of this happens many times a second (60 as noted is good), something like:
Main Game Loop:
Do
check for player input
move player
move bad guys
move bullets
[b]check if player is standing on something nasty[/b]
check if player has been shot
check any other things
update scores
update screen
etc..
loop
So you'll move your player, then it'll check to see if he's on something nasty, then it'll start draining health, then it'll loop back to the start and see if the player has moved again, if not is he still on something nasty, if so it'll drain a bit of health, etc, etc until you move your player off the nasty patch or he dies.
Your game will likely run in a small game loop which calls all the other functions and sub-routines. You want to minimise the number of loops (for/nexts, repeat/untils, etc) that aren't in your main loop to keep the speed up. The computer only reads one bit at a time (just very fast).
There's lots of ways you can determine what the player is standing on such as is he within a certain x,y,z boundary, cast a collision ray beneath the player and assign specific object groups (or individual objects) to different rates of health drain, is the player over a particular colour, does he collide with a particular sprite range.