| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166 |
- DefaultCategorySelectData(playerid) {
- g_CategorySelectData[playerid][CATEGORYSELECT_PAGE] = MIN_CATEGORYSELECT_PAGE;
- g_CategorySelectData[playerid][CATEGORYSELECT_MAXPAGE] = MIN_CATEGORYSELECT_PAGE;
- strpack(g_CategorySelectData[playerid][CATEGORYSELECT_SEARCH], "");
- for(new row; row < MAX_CATEGORYSELECT_ROWS; row ++) {
- g_CategorySelectData[playerid][CATEGORYSELECT_ROW_ID][row] = INVALID_CATEGORY_ID;
- }
- }
- LoadCategorySelectData(playerid) {
- new rows_added, max_offset;
- strunpack(g_SearchString, g_CategorySelectData[playerid][CATEGORYSELECT_SEARCH]);
- switch( g_PlayerData[playerid][PLAYER_DATA_TDMODE] ) {
- case TDMODE_CREATELIST_OBJECT, TDMODE_CREATELIST_PICKUP, TDMODE_CREATELIST_ATTACH, TDMODE_CATMANAGER_MODELS: {
- rows_added = FindModelCategories(
- .result = g_CategorySelectData[playerid][CATEGORYSELECT_ROW_ID],
- .result_size = MAX_CATEGORYSELECT_ROWS,
- .search = g_SearchString,
- .offset = g_CategorySelectData[playerid][CATEGORYSELECT_PAGE] * MAX_CATEGORYSELECT_ROWS,
- .max_offset = max_offset
- );
- }
- case TDMODE_CREATELIST_VEHICLE, TDMODE_CATMANAGER_VEHICLES: {
- rows_added = FindVehicleCategories(
- .result = g_CategorySelectData[playerid][CATEGORYSELECT_ROW_ID],
- .result_size = MAX_CATEGORYSELECT_ROWS,
- .search = g_SearchString,
- .offset = g_CategorySelectData[playerid][CATEGORYSELECT_PAGE] * MAX_CATEGORYSELECT_ROWS,
- .max_offset = max_offset
- );
- }
- case TDMODE_CREATELIST_ACTOR, TDMODE_CATMANAGER_SKINS: {
- rows_added = FindSkinCategories(
- .result = g_CategorySelectData[playerid][CATEGORYSELECT_ROW_ID],
- .result_size = MAX_CATEGORYSELECT_ROWS,
- .search = g_SearchString,
- .offset = g_CategorySelectData[playerid][CATEGORYSELECT_PAGE] * MAX_CATEGORYSELECT_ROWS,
- .max_offset = max_offset
- );
- }
- case TDMODE_TEXTURELIST, TDMODE_CATMANAGER_TEXTURES: {
- rows_added = FindTextureCategories(
- .result = g_CategorySelectData[playerid][CATEGORYSELECT_ROW_ID],
- .result_size = MAX_CATEGORYSELECT_ROWS,
- .search = g_SearchString,
- .offset = g_CategorySelectData[playerid][CATEGORYSELECT_PAGE] * MAX_CATEGORYSELECT_ROWS,
- .max_offset = max_offset
- );
- }
- default: {
- return 0;
- }
- }
- for(new row = rows_added; row < MAX_CATEGORYSELECT_ROWS; row ++) {
- g_CategorySelectData[playerid][CATEGORYSELECT_ROW_ID][row] = INVALID_CATEGORY_ID;
- }
- g_CategorySelectData[playerid][CATEGORYSELECT_MAXPAGE] = max_offset / MAX_CATEGORYSELECT_ROWS;
- return 1;
- }
- ShowCategorySelect(playerid) {
- g_DialogCaption = "Category Select";
- g_DialogInfo = "Category ID\tCategory Name\n";
- for(new listitem; listitem < MAX_CATEGORYSELECT_LITEMS; listitem ++) {
- switch(listitem) {
- case LITEM_CATEGORYSELECT_ROW_F..LITEM_CATEGORYSELECT_ROW_L: {
- new
- row = listitem - LITEM_CATEGORYSELECT_ROW_F,
- categoryid = INVALID_CATEGORY_ID
- ;
- categoryid = g_CategorySelectData[playerid][CATEGORYSELECT_ROW_ID][row];
- switch( g_PlayerData[playerid][PLAYER_DATA_TDMODE] ) {
- case TDMODE_CREATELIST_OBJECT, TDMODE_CREATELIST_PICKUP, TDMODE_CREATELIST_ATTACH, TDMODE_CATMANAGER_MODELS: {
- GetModelCategoryName(categoryid, g_CategoryNameString, sizeof g_CategoryNameString);
- }
- case TDMODE_CREATELIST_VEHICLE, TDMODE_CATMANAGER_VEHICLES: {
- GetVehicleCategoryName(categoryid, g_CategoryNameString, sizeof g_CategoryNameString);
- }
- case TDMODE_CREATELIST_ACTOR, TDMODE_CATMANAGER_SKINS: {
- GetSkinCategoryName(categoryid, g_CategoryNameString, sizeof g_CategoryNameString);
- }
- case TDMODE_TEXTURELIST, TDMODE_CATMANAGER_TEXTURES: {
- GetTextureCategoryName(categoryid, g_CategoryNameString, sizeof g_CategoryNameString);
- }
- default: {
- return 1;
- }
- }
- if( categoryid == INVALID_CATEGORY_ID ) {
- strcat(g_DialogInfo, "-\t-\n");
- } else {
- format(g_DialogInfoRow, sizeof g_DialogInfoRow, "%i\t%s\n", categoryid, g_CategoryNameString);
- strcat(g_DialogInfo, g_DialogInfoRow);
- }
- }
- case LITEM_CATEGORYSELECT_PAGE: {
- format(g_DialogInfoRow, sizeof g_DialogInfoRow, "Page: %i / %i\n", g_CategorySelectData[playerid][CATEGORYSELECT_PAGE] + 1, g_CategorySelectData[playerid][CATEGORYSELECT_MAXPAGE] + 1);
- strcat(g_DialogInfo, g_DialogInfoRow);
- }
- case LITEM_CATEGORYSELECT_PAGE_F: {
- strcat(g_DialogInfo, "<< First Page <<\t \n");
- }
- case LITEM_CATEGORYSELECT_PAGE_P: {
- strcat(g_DialogInfo, "< Previous Page <\t \n");
- }
- case LITEM_CATEGORYSELECT_PAGE_N: {
- strcat(g_DialogInfo, "> Next Page >\t \n");
- }
- case LITEM_CATEGORYSELECT_PAGE_L: {
- strcat(g_DialogInfo, ">> Last Page >>\t \n");
- }
- case LITEM_CATEGORYSELECT_SEARCH: {
- strunpack(g_SearchString, g_CategorySelectData[playerid][CATEGORYSELECT_SEARCH]);
- if( isempty(g_SearchString) ) {
- strcat(g_DialogInfo, "Search\n");
- } else {
- format(g_DialogInfoRow, sizeof g_DialogInfoRow, "Search: %s\n", g_SearchString);
- strcat(g_DialogInfo, g_DialogInfoRow);
- }
- }
- default: {
- strcat(g_DialogInfo, " \t \n");
- }
- }
- }
- ShowPlayerDialog(playerid, DIALOGID_CATEGORYSELECT, DIALOG_STYLE_TABLIST_HEADERS, g_DialogCaption, g_DialogInfo, "Select", "Cancel");
- return 1;
- }
- ShowCategorySelectDialog(playerid, dialogid) {
- switch( dialogid ) {
- case DIALOGID_CATEGORYSELECT: {
- ShowCategorySelect(playerid);
- }
- case DIALOGID_CATEGORYSELECT_PAGE: {
- format(g_DialogInfo, sizeof g_DialogInfo, "Current Page: %i / %i", g_CategorySelectData[playerid][CATEGORYSELECT_PAGE] + 1, g_CategorySelectData[playerid][CATEGORYSELECT_MAXPAGE] + 1);
- ShowPlayerDialog(playerid, dialogid, DIALOG_STYLE_INPUT, "Category Select: Page", g_DialogInfo, "Enter", "Cancel");
- }
- case DIALOGID_CATEGORYSELECT_SEARCH: {
- strunpack(g_SearchString, g_CategorySelectData[playerid][CATEGORYSELECT_SEARCH]);
- if( isempty(g_SearchString) ) {
- g_DialogInfo = "You are not searching for anything.";
- } else {
- format(g_DialogInfo, sizeof g_DialogInfo, "Current Search: %s", g_SearchString);
- }
- ShowPlayerDialog(playerid, dialogid, DIALOG_STYLE_INPUT, "Category Select: Search", g_DialogInfo, "Enter", "Cancel");
- }
- default: {
- return 0;
- }
- }
- return 1;
- }
|