Update of /cvsroot/netrek/client/netrekxp/src In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv1588/src Modified Files: local.c short.c socket.c Log Message: FPS support for weapon fuses (fixes phaser draw time). FPS support for jubilee phasers. Index: short.c =================================================================== RCS file: /cvsroot/netrek/client/netrekxp/src/short.c,v retrieving revision 1.11 retrieving revision 1.12 diff -u -d -r1.11 -r1.12 --- short.c 22 Feb 2007 17:44:34 -0000 1.11 +++ short.c 22 Feb 2007 19:34:44 -0000 1.12 @@ -273,7 +273,7 @@ thetorp = &torps[((unsigned char) *which * 8)]; for (shift = 0, i = 0; i < 8; i++, thetorp++, bitset >>= 1) { - thetorp->t_updateFuse = TORP_UPDATE_FUSE; + thetorp->t_updateFuse = TORP_UPDATE_FUSE * fps / 10; if (bitset & 01) { @@ -998,7 +998,7 @@ for (shift = 0, i = 0; i < 8; thetorp++, *bitset >>= 1, *infobitset >>= 1, i++) { - thetorp->t_updateFuse = TORP_UPDATE_FUSE; + thetorp->t_updateFuse = TORP_UPDATE_FUSE * fps / 10; if (*bitset & 01) { @@ -2003,7 +2003,7 @@ phas->ph_y = y; phas->ph_target = (short) target; phas->ph_fuse = 0; - phas->ph_updateFuse = PHASER_UPDATE_FUSE; + phas->ph_updateFuse = PHASER_UPDATE_FUSE * fps / 10; phas->ph_maxfuse = (players[pnum].p_ship.s_phaserfuse * updatesPerSec) / 10; #ifdef ROTATERACE Index: local.c =================================================================== RCS file: /cvsroot/netrek/client/netrekxp/src/local.c,v retrieving revision 1.54 retrieving revision 1.55 diff -u -d -r1.54 -r1.55 --- local.c 22 Feb 2007 17:59:00 -0000 1.54 +++ local.c 22 Feb 2007 19:34:44 -0000 1.55 @@ -632,6 +632,7 @@ char idbuf[10]; int buflen = 1; static int ph_col = 0; + static int scaled_ph_col = 0; const int view = SCALE * WINSIDE / 2 + BMP_SHIELD_WIDTH * SCALE / 2; int dx, dy, px, py, wx, wy, tx, ty, lx, ly; int new_dx, new_dy; @@ -1556,7 +1557,7 @@ { int col; - switch (ph_col) + switch (scaled_ph_col) { case 1: case 2: @@ -1576,10 +1577,10 @@ break; default: col = shipCol[remap[j->p_team]]; - ph_col = 0; break; } ph_col += (100/j->p_ship.s_phaserfuse/updatesPerSec); + scaled_ph_col = ph_col * 10 / fps; if (phaserShrinkStyle == 1) { get_shrink_phaser_coords(&new_dx, &new_dy, Index: socket.c =================================================================== RCS file: /cvsroot/netrek/client/netrekxp/src/socket.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -d -r1.15 -r1.16 --- socket.c 22 Feb 2007 17:44:35 -0000 1.15 +++ socket.c 22 Feb 2007 19:34:44 -0000 1.16 @@ -1098,7 +1098,7 @@ thetorp->t_x = ntohl (packet->x); thetorp->t_y = ntohl (packet->y); thetorp->t_dir = packet->dir; - thetorp->t_updateFuse = TORP_UPDATE_FUSE; + thetorp->t_updateFuse = TORP_UPDATE_FUSE * fps / 10; #ifdef ROTATERACE @@ -1126,7 +1126,7 @@ weaponUpdate = 1; thetorp = &torps[ntohs (packet->tnum)]; - thetorp->t_updateFuse = TORP_UPDATE_FUSE; + thetorp->t_updateFuse = TORP_UPDATE_FUSE * fps / 10; if (packet->status == TEXPLODE && thetorp->t_status == TFREE) { @@ -1608,7 +1608,7 @@ phas->ph_y = ntohl (packet->y); phas->ph_target = (short) (ntohl (packet->target)); phas->ph_fuse = 0; /* NEW */ - phas->ph_updateFuse = PHASER_UPDATE_FUSE; + phas->ph_updateFuse = PHASER_UPDATE_FUSE * fps / 10; /* normalized maxfuse */ phas->ph_maxfuse = (players[packet->pnum].p_ship.s_phaserfuse * updatesPerSec) / 10; @@ -1757,7 +1757,7 @@ weaponUpdate = 1; thetorp = &plasmatorps[ntohs (packet->pnum)]; - thetorp->pt_updateFuse = PLASMA_UPDATE_FUSE; + thetorp->pt_updateFuse = PLASMA_UPDATE_FUSE * fps / 10; if (packet->status == PTEXPLODE && thetorp->pt_status == PTFREE) { /* FAT: redundant explosion; don't update p_nplasmatorp */ @@ -1800,7 +1800,7 @@ thetorp = &plasmatorps[ntohs (packet->pnum)]; thetorp->pt_x = ntohl (packet->x); thetorp->pt_y = ntohl (packet->y); - thetorp->pt_updateFuse = PLASMA_UPDATE_FUSE; + thetorp->pt_updateFuse = PLASMA_UPDATE_FUSE * fps / 10; #ifdef ROTATERACE if (rotate)