I'll try it out again and slow down my DOSBox. Looking at the code, I think that the "synctics = 3;" line should actually be placed above the "drawscreen(plr);" line, but I haven't tried this yet. I do see synctics used by drawweapons, which is called by drawscreen.
On a slow machine, synctics will be high, since I don't cap synctics until after the drawscreen call, it get's the uncapped value, which is bad.
Code: Select all
...
synctics=totalclock-lockclock;
if (synctics >= 5) { // 24 FPS
synctics = 5;
drawscreen(plr);
lockclock+=(long)synctics;
processinput(plr);
if (netgame) {
netgetmove();
netsendmove();
}
processobjs(plr);
animateobjs(plr);
animatetags(plr);
doanimations((long)synctics);
dodelayitems((long)synctics);
} else {
synctics = 0;
}
...
I'll try this out when I get the chance.