summaryrefslogtreecommitdiff
path: root/sourcemod/scripting/gokz-profile/profile.sp
diff options
context:
space:
mode:
Diffstat (limited to 'sourcemod/scripting/gokz-profile/profile.sp')
-rw-r--r--sourcemod/scripting/gokz-profile/profile.sp222
1 files changed, 0 insertions, 222 deletions
diff --git a/sourcemod/scripting/gokz-profile/profile.sp b/sourcemod/scripting/gokz-profile/profile.sp
deleted file mode 100644
index fabdb0e..0000000
--- a/sourcemod/scripting/gokz-profile/profile.sp
+++ /dev/null
@@ -1,222 +0,0 @@
-
-#define ITEM_INFO_NAME "name"
-#define ITEM_INFO_MODE "mode"
-#define ITEM_INFO_RANK "rank"
-#define ITEM_INFO_POINTS "points"
-
-int profileTargetPlayer[MAXPLAYERS];
-int profileMode[MAXPLAYERS];
-bool profileWaitingForUpdate[MAXPLAYERS];
-
-
-
-// =====[ PUBLIC ]=====
-
-void ShowProfile(int client, int player = 0)
-{
- if (player != 0)
- {
- profileTargetPlayer[client] = player;
- profileMode[client] = GOKZ_GetCoreOption(player, Option_Mode);
- }
-
- if (GOKZ_GL_GetRankPoints(profileTargetPlayer[client], profileMode[client]) < 0)
- {
- if (!profileWaitingForUpdate[client])
- {
- GOKZ_GL_UpdatePoints(profileTargetPlayer[client], profileMode[client]);
- profileWaitingForUpdate[client] = true;
- }
- return;
- }
-
- profileWaitingForUpdate[client] = false;
- Menu menu = new Menu(MenuHandler_Profile);
- menu.SetTitle("%T - %N", "Profile Menu - Title", client, profileTargetPlayer[client]);
- ProfileMenuAddItems(client, menu);
- menu.Display(client, MENU_TIME_FOREVER);
-}
-
-
-
-// =====[ EVENTS ]=====
-
-void Profile_OnClientConnected(int client)
-{
- profileTargetPlayer[client] = 0;
- profileWaitingForUpdate[client] = false;
-}
-
-void Profile_OnClientDisconnect(int client)
-{
- profileTargetPlayer[client] = 0;
- profileWaitingForUpdate[client] = false;
-}
-
-void Profile_OnPointsUpdated(int player, int mode)
-{
- for (int client = 1; client <= MaxClients; client++)
- {
- if (profileWaitingForUpdate[client]
- && profileTargetPlayer[client] == player
- && profileMode[client] == mode)
- {
- ShowProfile(client);
- }
- }
-}
-
-public int MenuHandler_Profile(Menu menu, MenuAction action, int param1, int param2)
-{
- if (action == MenuAction_Select)
- {
- char info[16];
- menu.GetItem(param2, info, sizeof(info));
-
- if (StrEqual(info, ITEM_INFO_MODE, false))
- {
- if (++profileMode[param1] == MODE_COUNT)
- {
- profileMode[param1] = 0;
- }
- }
- else if (StrEqual(info, ITEM_INFO_RANK, false))
- {
- ShowRankInfo(param1);
- return 0;
- }
- else if (StrEqual(info, ITEM_INFO_POINTS, false))
- {
- ShowPointsInfo(param1);
- return 0;
- }
-
- ShowProfile(param1);
- }
- else if (action == MenuAction_End)
- {
- delete menu;
- }
- return 0;
-}
-
-
-
-// =====[ PRIVATE ]=====
-
-static void ProfileMenuAddItems(int client, Menu menu)
-{
- char display[32];
- int player = profileTargetPlayer[client];
- int mode = profileMode[client];
-
- FormatEx(display, sizeof(display), "%T: %s",
- "Profile Menu - Mode", client, gC_ModeNames[mode]);
- menu.AddItem(ITEM_INFO_MODE, display);
-
- FormatEx(display, sizeof(display), "%T: %s",
- "Profile Menu - Rank", client, gC_rankName[gI_Rank[player][mode]]);
- menu.AddItem(ITEM_INFO_RANK, display);
-
- FormatEx(display, sizeof(display), "%T: %d",
- "Profile Menu - Points", client, GOKZ_GL_GetRankPoints(player, mode));
- menu.AddItem(ITEM_INFO_POINTS, display);
-}
-
-static void ShowRankInfo(int client)
-{
- Menu menu = new Menu(MenuHandler_RankInfo);
- menu.SetTitle("%T - %N", "Rank Info Menu - Title", client, profileTargetPlayer[client]);
- RankInfoMenuAddItems(client, menu);
- menu.Display(client, MENU_TIME_FOREVER);
-}
-
-static void RankInfoMenuAddItems(int client, Menu menu)
-{
- char display[32];
- int player = profileTargetPlayer[client];
- int mode = profileMode[client];
-
- FormatEx(display, sizeof(display), "%T: %s",
- "Rank Info Menu - Current Rank", client, gC_rankName[gI_Rank[player][mode]]);
- menu.AddItem("", display);
-
- int next_rank = gI_Rank[player][mode] + 1;
- if (next_rank == RANK_COUNT)
- {
- FormatEx(display, sizeof(display), "%T: -",
- "Rank Info Menu - Next Rank", client);
- menu.AddItem("", display);
-
- FormatEx(display, sizeof(display), "%T: 0",
- "Rank Info Menu - Points needed", client);
- menu.AddItem("", display);
- }
- else
- {
- FormatEx(display, sizeof(display), "%T: %s",
- "Rank Info Menu - Next Rank", client, gC_rankName[next_rank]);
- menu.AddItem("", display);
-
- FormatEx(display, sizeof(display), "%T: %d",
- "Rank Info Menu - Points needed", client, gI_rankThreshold[mode][next_rank] - GOKZ_GL_GetRankPoints(player, mode));
- menu.AddItem("", display);
- }
-}
-
-static int MenuHandler_RankInfo(Menu menu, MenuAction action, int param1, int param2)
-{
- if (action == MenuAction_Cancel)
- {
- ShowProfile(param1);
- }
- else if (action == MenuAction_End)
- {
- delete menu;
- }
- return 0;
-}
-
-static void ShowPointsInfo(int client)
-{
- Menu menu = new Menu(MenuHandler_PointsInfo);
- menu.SetTitle("%T - %N", "Points Info Menu - Title", client, profileTargetPlayer[client]);
- PointsInfoMenuAddItems(client, menu);
- menu.Display(client, MENU_TIME_FOREVER);
-}
-
-static void PointsInfoMenuAddItems(int client, Menu menu)
-{
- char display[32];
- int player = profileTargetPlayer[client];
- int mode = profileMode[client];
-
- FormatEx(display, sizeof(display), "%T: %d",
- "Points Info Menu - Overall Points", client, GOKZ_GL_GetPoints(player, mode, TimeType_Nub));
- menu.AddItem("", display);
-
- FormatEx(display, sizeof(display), "%T: %d",
- "Points Info Menu - Pro Points", client, GOKZ_GL_GetPoints(player, mode, TimeType_Pro));
- menu.AddItem("", display);
-
- FormatEx(display, sizeof(display), "%T: %d",
- "Points Info Menu - Overall Completion", client, GOKZ_GL_GetFinishes(player, mode, TimeType_Nub));
- menu.AddItem("", display);
-
- FormatEx(display, sizeof(display), "%T: %d",
- "Points Info Menu - Pro Completion", client, GOKZ_GL_GetFinishes(player, mode, TimeType_Pro));
- menu.AddItem("", display);
-}
-
-static int MenuHandler_PointsInfo(Menu menu, MenuAction action, int param1, int param2)
-{
- if (action == MenuAction_Cancel)
- {
- ShowProfile(param1);
- }
- else if (action == MenuAction_End)
- {
- delete menu;
- }
- return 0;
-}