X-Git-Url: https://jasonwoof.com/gitweb/?p=vor.git;a=blobdiff_plain;f=main.c;h=c2e6601dfc451b8fb916a22211e467228b77afdb;hp=db95bb4fae1368da816b1ae9826af1ba008c0fe2;hb=f886a80d1a22f96e90d7a5c3cd5e10a8e459cc34;hpb=7f2544faabec18fdeb7da3126fc7c842f06c1d43 diff --git a/main.c b/main.c index db95bb4..c2e6601 100644 --- a/main.c +++ b/main.c @@ -76,6 +76,7 @@ float shipx = XSIZE/2, shipy = YSIZE/2; // X position, 0..XSIZE float shipdx = SCREENDXMIN, shipdy = 0.0; // Change in X position per tick. float screendx = SCREENDXMIN, screendy = 0.0; float xscroll, yscroll; +float back_dist; float framelen; // this controls the speed of everything that moves. float bangx, bangy, bangdx, bangdy; @@ -711,10 +712,15 @@ gameloop() { tmp /= -25; tmp = ((screendx * (framelen - 12)) + (tmp * framelen)) / 12; screendx = -tmp; - if(screendx < SCREENDXMIN) screendx=SCREENDXMIN; + + // taper off if we would hit the barrier in under 2 seconds. + if(back_dist + (screendx - SCREENDXMIN)*2*20*opt_gamespeed < 0) { + screendx = SCREENDXMIN - (back_dist/(2*20*opt_gamespeed)); + } xscroll = screendx * framelen; yscroll = screendy * framelen; + back_dist += (screendx - SCREENDXMIN)*framelen; shipx -= xscroll; shipy -= yscroll;