]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/common/minigames/sv_minigames.qh
Merge branch 'master' into TimePath/waypointsprites
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / minigames / sv_minigames.qh
1 #ifndef SV_MINIGAMES_H
2 #define SV_MINIGAMES_H
3
4 /// Initialize the minigame system
5 void initialize_minigames();
6
7 /// Create a new minigame session
8 /// \return minigame session entity
9 entity start_minigame(entity player, string minigame );
10
11 /// Join an existing minigame session
12 /// \return minigame session entity
13 entity join_minigame(entity player, string game_id );
14
15 /// Invite a player to join in a minigame
16 /// \return Error string
17 string invite_minigame(entity inviter, entity player);
18
19 // Part minigame session
20 void part_minigame(entity player);
21
22 // Ends a minigame session
23 void end_minigame(entity minigame_session);
24
25 // Ends all minigame sessions
26 void end_minigames();
27
28 // Only sends entities to players who joined the minigame
29 // Use on customizeentityforclient for gameplay entities
30 bool minigame_CheckSend();
31
32 // Check for minigame impulses
33 bool MinigameImpulse(int imp);
34
35 // Parse a client command ( cmd minigame ... )
36 void ClientCommand_minigame(int request, int argc, string command);
37
38 // Find the minigame_player entity for the given client entity
39 entity minigame_find_player(entity client);
40
41 /// For players: Minigame being played
42 .entity active_minigame;
43
44 /// For minigame sessions: list of players
45 /// For minigame_player: client entity
46 .entity minigame_players;
47
48 entity minigame_sessions;
49
50 bool minigame_SendEntity(entity to, int sf);
51
52 #endif