Thanks for the responses.
I've been trying to work it out and i thinking i got something.
Urled:
i checked the link but wasnt completely able to make out what you were referring to. i did check the stuff out, so thanks anyway.s
Arima:
thanks for your tip. it made perfect sense, however for some reason i couldnt get it to function correctly. however inspired by your tip i came up with a solution. that resolved collision and gravity
basically what i did was this:
:: C O L L I S I O N ::
-------------------------
+ System: Object.Bottom - Ground.Top Greater than 0
-> System: Set global variable 'collision' to 0
:: G R A V I T Y ::
-------------------------
+ System: global('collision') Equal to 0
-> System: Start loop "gravity" and run 1024 times
+ System: On loop "gravity"
+ System: Object.Bottom - Ground.Top Greater or equal 0
-> System: Set global variable 'collision' to 1
+ System: global('collision') Equal to 0
+ System: [negated] Object (Pick) and Ground (Pick) are overlapping
-> Object: Set Y to Object.Y + (1 * TimeDelta)
i'd like to upload an example, but i'm not sure how.
this seems to work pixel perfect, and at great speeds.
but i must confess i'm not quite sure of how it works,
i came up with it late at night after fiddling a lot,
and without a rested mind, so i might need cleaning up,
and perhaps could be optimized.
somehow lowering or rising the number of times the loop is repeated affects the gravity speed proportionally, but i'm not sure of what the pixel per frame or millisecond is. but i'd like to find out in order to control the rate.
also, i'm not sure of what the exact value of timedelta is supposed to be, is each time delta something like 16.666~~~ milliseconds?