-#ifndef HOOK_H
-#define HOOK_H
-
-#if defined(CSQC)
-#elif defined(MENUQC)
-#elif defined(SVQC)
- #include "../dpdefs/progsdefs.qc"
- #include "../dpdefs/dpextensions.qc"
- #include "../warpzonelib/common.qh"
- #include "../warpzonelib/server.qh"
- #include "../common/constants.qh"
- #include "../common/util.qh"
- #include "../common/weapons/weapons.qh"
- #include "autocvars.qh"
- #include "constants.qh"
- #include "defs.qh"
- #include "vehicles/vehicles_def.qh"
- #include "command/common.qh"
- #include "g_hook.qh"
- #include "round_handler.qh"
-#endif
+#pragma once
// Wazat's grappling hook
.entity hook;
-void GrapplingHookFrame();
-void RemoveGrapplingHook(entity pl);
-void SetGrappleHookBindings();
+void GrapplingHookThink(entity this);
+void RemoveGrapplingHooks(entity pl);
+void RemoveHook(entity this);
// (note: you can change the hook impulse #'s to whatever you please)
.float hook_time;
-const float HOOK_FIRING = 1;
-const float HOOK_REMOVING = 2;
-const float HOOK_PULLING = 4;
-const float HOOK_RELEASING = 8;
-const float HOOK_WAITING_FOR_RELEASE = 16;
+const float HOOK_FIRING = BIT(0);
+const float HOOK_REMOVING = BIT(1);
+const float HOOK_PULLING = BIT(2);
+const float HOOK_RELEASING = BIT(3);
+const float HOOK_WAITING_FOR_RELEASE = BIT(4);
.float hook_state;
void GrappleHookInit();
vector hook_shotorigin[4];
-#endif
\ No newline at end of file