// precaches
Projectile_Precache();
+ Hook_Precache();
GibSplash_Precache();
Casings_Precache();
DamageInfo_Precache();
case ENT_CLIENT_WARPZONE: WarpZone_Read(bIsNewEntity); break;
case ENT_CLIENT_WARPZONE_CAMERA: WarpZone_Camera_Read(bIsNewEntity); break;
case ENT_CLIENT_TRIGGER_MUSIC: Ent_ReadTriggerMusic(); break;
+ case ENT_CLIENT_HOOK: Ent_ReadHook(bIsNewEntity, ENT_CLIENT_HOOK); break;
+ case ENT_CLIENT_LGBEAM: Ent_ReadHook(bIsNewEntity, ENT_CLIENT_LGBEAM); break;
+ case ENT_CLIENT_GAUNTLET: Ent_ReadHook(bIsNewEntity, ENT_CLIENT_GAUNTLET); break;
default:
error(strcat("unknown entity type in CSQC_Ent_Update: ", ftos(self.enttype), "\n"));
break;
nb_pb_period = ReadByte() / 32; //Accuracy of 1/32th
- hook_shotorigin_x = ReadCoord();
- hook_shotorigin_y = ReadCoord();
- hook_shotorigin_z = ReadCoord();
+ hook_shotorigin[0] = decompressShotOrigin(ReadInt24_t());
+ hook_shotorigin[1] = decompressShotOrigin(ReadInt24_t());
+ hook_shotorigin[2] = decompressShotOrigin(ReadInt24_t());
+ hook_shotorigin[3] = decompressShotOrigin(ReadInt24_t());
+ electro_shotorigin[0] = decompressShotOrigin(ReadInt24_t());
+ electro_shotorigin[1] = decompressShotOrigin(ReadInt24_t());
+ electro_shotorigin[2] = decompressShotOrigin(ReadInt24_t());
+ electro_shotorigin[3] = decompressShotOrigin(ReadInt24_t());
+ gauntlet_shotorigin[0] = decompressShotOrigin(ReadInt24_t());
+ gauntlet_shotorigin[1] = decompressShotOrigin(ReadInt24_t());
+ gauntlet_shotorigin[2] = decompressShotOrigin(ReadInt24_t());
+ gauntlet_shotorigin[3] = decompressShotOrigin(ReadInt24_t());
if(forcefog)
strunzone(forcefog);
void Net_VoteDialog(float highlight) {
if(highlight) {
- vote_highlighted = ReadShort();
+ vote_highlighted = ReadByte();
return;
}
- vote_yescount = ReadShort();
- vote_nocount = ReadShort();
- vote_needed = ReadShort();
+ vote_yescount = ReadByte();
+ vote_nocount = ReadByte();
+ vote_needed = ReadByte();
vote_active = 1;
}
complain_weapon_time = time;
}
+void Net_CampingrifleScope() {
+ campingrifle_scope = TRUE;
+}
+
// CSQC_Parse_TempEntity : Handles all temporary entity network data in the CSQC layer.
// You must ALWAYS first acquire the temporary ID, which is sent as a byte.
// Return value should be 1 if CSQC handled the temporary entity, otherwise return 0 to have the engine process the event.
Net_ReadRace();
bHandled = true;
break;
- case 13: // TE_BEAM
- Net_GrapplingHook();
- bHandled = true;
- break;
case TE_CSQC_SPAWN:
Net_ReadSpawn();
bHandled = true;
Net_WeaponComplain();
bHandled = true;
break;
+ case TE_CSQC_CAMPINGRIFLE_SCOPE:
+ Net_CampingrifleScope();
+ bHandled = true;
+ break;
default:
// No special logic for this temporary entity; return 0 so the engine can handle it
bHandled = false;