aboutsummaryrefslogtreecommitdiff
path: root/advtrains/sounds
diff options
context:
space:
mode:
authororwell96 <orwell@bleipb.de>2019-01-09 16:10:56 +0100
committerorwell96 <orwell@bleipb.de>2019-01-09 16:10:56 +0100
commitc3c96274be0c4beeef62a21f226e830d1d72675a (patch)
tree34ff33f99f55399cc2776855161ce513a5204408 /advtrains/sounds
parentb332a31d4886d5699575c933627c91f659ab45b8 (diff)
downloadadvtrains-c3c96274be0c4beeef62a21f226e830d1d72675a.tar.gz
advtrains-c3c96274be0c4beeef62a21f226e830d1d72675a.tar.bz2
advtrains-c3c96274be0c4beeef62a21f226e830d1d72675a.zip
Add "routingcode" property
Used for ARS and stop points
Diffstat (limited to 'advtrains/sounds')
0 files changed, 0 insertions, 0 deletions
n> if(t >= 24000) t -= ((int)(t)/24000)*24000; if(t > 12000) t = 24000 - t; float values[][2] = { {4250+125, 150}, {4500+125, 150}, {4750+125, 250}, {5000+125, 350}, {5250+125, 500}, {5500+125, 675}, {5750+125, 875}, {6000+125, 1000}, {6250+125, 1000}, }; if(!smooth){ float lastt = values[0][0]; for(u32 i=1; i<sizeof(values)/sizeof(*values); i++){ float t0 = values[i][0]; float switch_t = (t0 + lastt) / 2; lastt = t0; if(switch_t <= t) continue; return values[i][1]; } return 1000; } else { for(u32 i=0; i<sizeof(values)/sizeof(*values); i++){ if(values[i][0] <= t) continue; if(i == 0) return values[i][1]; float td0 = values[i][0] - values[i-1][0]; float f = (t - values[i-1][0]) / td0; return f * values[i][1] + (1.0 - f) * values[i-1][1]; } return 1000; } } #endif