]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/server/playerstats.qh
send weapon accuracy stats
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / playerstats.qh
1 // time the player was alive and kicking
2 string PLAYERSTATS_ALIVETIME  = "alivetime";
3 string PLAYERSTATS_WINS = "wins";
4 string PLAYERSTATS_MATCHES = "matches";
5 string PLAYERSTATS_JOINS = "joins";
6 string PLAYERSTATS_SCOREBOARD_VALID = "scoreboardvalid";
7 string PLAYERSTATS_RANK = "rank";
8
9 string PLAYERSTATS_ACC_LASER_HIT = "acc-laser-hit";
10 string PLAYERSTATS_ACC_LASER_FIRED = "acc-laser-fired";
11 string PLAYERSTATS_ACC_SHOTGUN_HIT = "acc-sg-hit";
12 string PLAYERSTATS_ACC_SHOTGUN_FIRED = "acc-sg-fired";
13 string PLAYERSTATS_ACC_UZI_HIT = "acc-uzi-hit";
14 string PLAYERSTATS_ACC_UZI_FIRED = "acc-uzi-fired";
15 string PLAYERSTATS_ACC_GRENADE_LAUNCHER_HIT = "acc-gl-hit";
16 string PLAYERSTATS_ACC_GRENADE_LAUNCHER_FIRED = "acc-gl-fired";
17 string PLAYERSTATS_ACC_ELECTRO_HIT = "acc-electro-hit";
18 string PLAYERSTATS_ACC_ELECTRO_FIRED = "acc-electro-fired";
19 string PLAYERSTATS_ACC_CRYLINK_HIT = "acc-crylink-hit";
20 string PLAYERSTATS_ACC_CRYLINK_FIRED = "acc-crylink-fired";
21 string PLAYERSTATS_ACC_NEX_HIT = "acc-nex-hit";
22 string PLAYERSTATS_ACC_NEX_FIRED = "acc-nex-fired";
23 string PLAYERSTATS_ACC_HAGAR_HIT = "acc-hagar-hit";
24 string PLAYERSTATS_ACC_HAGAR_FIRED = "acc-hagar-fired";
25 string PLAYERSTATS_ACC_ROCKET_LAUNCHER_HIT = "acc-rl-hit";
26 string PLAYERSTATS_ACC_ROCKET_LAUNCHER_FIRED = "acc-rl-fired";
27 string PLAYERSTATS_ACC_MINSTANEX_HIT = "acc-minstanex-hit";
28 string PLAYERSTATS_ACC_MINSTANEX_FIRED = "acc-minstanex-fired";
29 string PLAYERSTATS_ACC_SNIPERRIFLE_HIT = "acc-rifle-hit";
30 string PLAYERSTATS_ACC_SNIPERRIFLE_FIRED = "acc-rifle-fired";
31 string PLAYERSTATS_ACC_FIREBALL_HIT = "acc-fireball-hit";
32 string PLAYERSTATS_ACC_FIREBALL_FIRED = "acc-fireball-fired";
33 string PLAYERSTATS_ACC_MINE_LAYER_HIT = "acc-minelayer-hit";
34 string PLAYERSTATS_ACC_MINE_LAYER_FIRED = "acc-minelayer-fired";
35 string PLAYERSTATS_ACC_SEEKER_HIT = "acc-seeker-hit";
36 string PLAYERSTATS_ACC_SEEKER_FIRED = "acc-seeker-fired";
37 string PLAYERSTATS_ACC_TUBA_HIT = "acc-tuba-hit";
38 string PLAYERSTATS_ACC_TUBA_FIRED = "acc-tuba-fired";
39
40 string PLAYERSTATS_TOTAL = "total-";
41 string PLAYERSTATS_SCOREBOARD = "scoreboard-";
42
43 string PLAYERSTATS_ACHIEVEMENT_KILL_SPREE_3 = "achievement-kill-spree-3";
44 string PLAYERSTATS_ACHIEVEMENT_KILL_SPREE_5 = "achievement-kill-spree-5";
45 string PLAYERSTATS_ACHIEVEMENT_KILL_SPREE_10 = "achievement-kill-spree-10";
46 string PLAYERSTATS_ACHIEVEMENT_KILL_SPREE_15 = "achievement-kill-spree-15";
47 string PLAYERSTATS_ACHIEVEMENT_KILL_SPREE_20 = "achievement-kill-spree-20";
48 string PLAYERSTATS_ACHIEVEMENT_KILL_SPREE_25 = "achievement-kill-spree-25";
49 string PLAYERSTATS_ACHIEVEMENT_KILL_SPREE_30 = "achievement-kill-spree-30";
50 string PLAYERSTATS_ACHIEVEMENT_BOTLIKE = "achievement-botlike";
51 string PLAYERSTATS_ACHIEVEMENT_FIRSTBLOOD = "achievement-firstblood";
52 string PLAYERSTATS_ACHIEVEMENT_FIRSTVICTIM = "achievement-firstvictim";
53
54 // delay map switch until this is set
55 float playerstats_waitforme;
56
57 // call at initialization
58 void PlayerStats_Init();
59
60 // add a new player
61 void PlayerStats_AddPlayer(entity e);
62
63 // add a new team
64 void PlayerStats_AddTeam(float t);
65
66 // add a new event
67 void PlayerStats_AddEvent(string event_id);
68
69 // call on each event to track, or at player disconnect OR match end for "global stuff"
70 void PlayerStats_Event(entity e, string event_id, float value);
71
72 // add a team score
73 void PlayerStats_TeamScore(float t, string event_id, float value);
74
75 // call at game over
76 void PlayerStats_Shutdown(); // send stats to the server
77
78 // URI GET callback
79 void PlayerStats_Sent_URI_Get_Callback(float id, float status, string data);
80
81 // call this whenever a player leaves
82 void PlayerStats_AddGlobalInfo(entity p);
83
84 // call this at the end of the match
85 void PlayerStats_EndMatch(float finished);