Merge branch 'master' into Lyberta/TeamplayOverhaul
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / player.qh
1 #pragma once
2
3 .entity pusher;
4 .float pushltime;
5 .float istypefrag;
6
7 .float CopyBody_nextthink;
8 .void(entity this) CopyBody_think;
9 void CopyBody_Think(entity this);
10 void CopyBody(entity this, float keepvelocity);
11
12 void player_setupanimsformodel(entity this);
13
14 void player_anim(entity this);
15
16 void PlayerCorpseDamage(entity this, entity inflictor, entity attacker, float damage, int deathtype, .entity weaponentity, vector hitloc, vector force);
17
18 // g_<gametype>_str:
19 // If 0, default is used.
20 // If <0, 0 is used.
21 // Otherwise, g_str (default value) is used.
22 // For consistency, negative values there are mapped to zero too.
23 #define GAMETYPE_DEFAULTED_SETTING(str) \
24         ((gametype_setting_tmp = cvar(strcat("g_", GetGametype(), "_" #str))), \
25         (gametype_setting_tmp < 0) ? 0 \
26         : (gametype_setting_tmp == 0 || autocvar_g_respawn_delay_forced) ? max(0, autocvar_g_##str) \
27         : gametype_setting_tmp)
28
29 void calculate_player_respawn_time(entity this);
30
31 void ClientKill_Now_TeamChange(entity this);
32
33 void PlayerDamage(entity this, entity inflictor, entity attacker, float damage, int deathtype, .entity weaponentity, vector hitloc, vector force);
34
35 bool PlayerHeal(entity targ, entity inflictor, float amount, float limit);
36
37 int Say(entity source, float teamsay, entity privatesay, string msgin, float floodcontrol);