]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/server/cl_client.qh
OO: transmute
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / cl_client.qh
1 #pragma once
2
3 CLASS(Client, Object)
4     /** Client name */
5     ATTRIB(Client, netname, string, this.netname)
6     ATTRIB(Client, colormap, int, this.colormap)
7     ATTRIB(Client, team, int, this.team)
8     ATTRIB(Client, clientcolors, int, this.clientcolors)
9     /** Client IP */
10     ATTRIB(Client, netaddress, string, this.netaddress)
11     ATTRIB(Client, playermodel, string, this.playermodel)
12     ATTRIB(Client, playerskin, int, this.playerskin)
13
14     /** fingerprint of CA key the player used to authenticate */
15     ATTRIB(Client, crypto_keyfp, string, this.crypto_keyfp)
16     /** fingerprint of CA key the server used to authenticate to the player */
17     ATTRIB(Client, crypto_mykeyfp, string, this.crypto_mykeyfp)
18     /** fingerprint of ID used by the player entity, or string_null if not identified */
19     ATTRIB(Client, crypto_idfp, string, this.crypto_idfp)
20     /** set if the player's ID has been signed */
21     ATTRIB(Client, crypto_idfp_signed, bool, this.crypto_idfp_signed)
22     /** the string "AES128" if encrypting, and string_null if plaintext */
23     ATTRIB(Client, crypto_encryptmethod, string, this.crypto_encryptmethod)
24     /** the string "HMAC-SHA256" if signing, and string_null if plaintext */
25     ATTRIB(Client, crypto_signmethod, string, this.crypto_signmethod)
26     INIT(Client) {
27         this.flags = FL_CLIENT;
28     }
29 ENDCLASS(Client)
30
31 float c1, c2, c3, c4;
32
33 void play_countdown(float finished, Sound samp);
34
35 float CalcRotRegen(float current, float regenstable, float regenfactor, float regenlinear, float regenframetime, float rotstable, float rotfactor, float rotlinear, float rotframetime, float limit);
36
37 float Spectate(entity pl);
38
39 #define SPECTATE_COPY() [[accumulate]] void SpectateCopy(entity this, entity spectatee)
40 #define SPECTATE_COPYFIELD(fld) SPECTATE_COPY() { this.(fld) = spectatee.(fld); }