| 1364 | } |
| 1365 | |
| 1366 | void DemoReadCollidePlayerWeapon(void) { |
| 1367 | vector collision_p; |
| 1368 | vector collision_n; |
| 1369 | bool f_reverse_normal; |
| 1370 | uint16_t real_weapnum; |
| 1371 | int16_t plr_objnum = cf_ReadShort(Demo_cfp); |
| 1372 | int16_t wep_objnum = cf_ReadShort(Demo_cfp); |
| 1373 | gs_ReadVector(Demo_cfp, collision_p); |
| 1374 | gs_ReadVector(Demo_cfp, collision_n); |
| 1375 | uint8_t b = cf_ReadByte(Demo_cfp); |
| 1376 | f_reverse_normal = b ? true : false; |
| 1377 | |
| 1378 | real_weapnum = Demo_obj_map[wep_objnum]; |
| 1379 | if (real_weapnum != 65535) { |
| 1380 | collide_player_and_weapon(&Objects[plr_objnum], &Objects[real_weapnum], &collision_p, &collision_n, |
| 1381 | f_reverse_normal, NULL); |
| 1382 | } else { |
| 1383 | mprintf(0, "Unable to map weapon number for collision in demo playback!\n"); |
| 1384 | } |
| 1385 | } |
| 1386 | |
| 1387 | void DemoWriteCollideGenericWeapon(object *robotobj, object *weapon, vector *collision_point, vector *collision_normal, |
| 1388 | bool f_reverse_normal, void *hit_info) { |
no test coverage detected