void ShowItemMenu(edict_t *ent, int itemindex) { item_t *item = &ent->myskills.items[itemindex]; //Load the item StartShowInventoryMenu(ent, item); //Check to see if this item can be equipped or not if (!((item->itemtype & ITEM_GRAVBOOTS) || (item->itemtype & ITEM_FIRE_RESIST) || (item->itemtype & ITEM_AUTO_TBALL))) { if (itemindex < 3) addlinetomenu(ent, "Stash this item", 4445 + itemindex); else addlinetomenu(ent, "Equip this item", 4445 + itemindex); ++ent->client->menustorage.currentline; } //Append a footer to the menu addlinetomenu(ent, "Previous menu", 7778 + itemindex); addlinetomenu(ent, "Exit", 666); addlinetomenu(ent, " ", 0); addlinetomenu(ent, "Delete this item", 10000 + itemindex); //set currentline ent->client->menustorage.currentline += 2; //Set handler setmenuhandler(ent, ShowItemMenu_handler); //Display the menu showmenu(ent); }
void OpenBuyRuneConfirmMenu(edict_t *ent, int option) { int page_num = option / 1000; int selection = (option % 1000)-1; armoryRune_t *firstItem; item_t *rune; switch(page_num) { case 1: firstItem = WeaponRunes; break; case 2: firstItem = AbilityRunes; break; case 3: firstItem = ComboRunes; break; default: gi.dprintf("Error in OpenBuyRuneConfirmMenu(). Invalid page number: %d\n", page_num); return; } rune = &((firstItem + selection)->rune); //Process the header StartShowInventoryMenu(ent, rune); //Menu footer addlinetomenu(ent, va(" Price: %d", getBuyValue(rune)), 0); addlinetomenu(ent, " ", 0); addlinetomenu(ent, " ", 0); addlinetomenu(ent, " ", 0); addlinetomenu(ent, " Buy this item?", 0); addlinetomenu(ent, "No, I changed my mind!", (page_num * 10) + selection); addlinetomenu(ent, "Yes, GIMME GIMME!!.", option); //Set handler setmenuhandler(ent, BuyRuneConfirmMenu_handler); ent->client->menustorage.currentline += 7; //Display the menu showmenu(ent); }
void ItemDeleteMenu(edict_t *ent, int itemindex) { item_t *item = &ent->myskills.items[itemindex]; //Process the header StartShowInventoryMenu(ent, item); //Menu footer addlinetomenu(ent, " ", 0); addlinetomenu(ent, " Delete this item?", 0); addlinetomenu(ent, "No, I changed my mind!", 667 + itemindex); addlinetomenu(ent, "Yes, delete this item.", 778 + itemindex); //Set handler setmenuhandler(ent, DeleteMenu_handler); ent->client->menustorage.currentline += 4; //Display the menu showmenu(ent); }
void OpenSellConfirmMenu(edict_t *ent, int itemindex) { item_t *item = &ent->myskills.items[itemindex]; //Process the header StartShowInventoryMenu(ent, item); //Menu footer addlinetomenu(ent, va(" Sell value: %d", GetSellValue(item)), 0); addlinetomenu(ent, " ", 0); addlinetomenu(ent, " ", 0); addlinetomenu(ent, " ", 0); addlinetomenu(ent, " Sell this item?", 0); addlinetomenu(ent, "No, I changed my mind!", 667 + itemindex); addlinetomenu(ent, "Yes, sell this item.", 778 + itemindex); //Set handler setmenuhandler(ent, SellConfirmMenu_handler); ent->client->menustorage.currentline += 7; //Display the menu showmenu(ent); }