Witam,
Jak w tytule tematu.
Posiadam przerobiony CS:GO mod by DeroiD.
Oczywiście wszystko sobie doskonale poprawiłem i dostosowałem jednak nie mogę poradzić sobie z poprawą menu GIFT'a.
Mianowicie, nie działa opcja przekazywania klucza czy też skrzynki w modzie.
Dodaje kawałek kodu który odpowiada za tą czynność:
public MenuHandler(id, gMenu, Key) { if(Key == MENU_EXIT) { MenuMod[id] = 0; menu_destroy(gMenu); return PLUGIN_HANDLED; } new aMenu[2], Data[4][32], sKey[32], Name[32], mName[32]; menu_item_getinfo(gMenu, Key, aMenu[0], Data[0], 31, Data[1], 31, aMenu[1]); parse(Data[0], sKey, 31); Key = str_to_num(sKey); if(MenuMod[id] == -2) { aThing[id] = Key; MenuMod[id] = 5; Menu(id); return PLUGIN_HANDLED; } if(MenuMod[id] == -1) { MenuMod[id] = 3; WeaponinMarket[id] = Key; client_cmd(id, "messagemode Cost"); Menu(id); return PLUGIN_HANDLED; } else if(MenuMod[id] == 0) { MenuMod[id] = Key; Menu(id); return PLUGIN_HANDLED; } else if(MenuMod[id] == 1) { parse(Data[0], Data[2], 31, Data[3], 31); if(str_to_num(Data[3]) == 16 || str_to_num(Data[3]) == 26) UsingWeapon[1][id] = str_to_num(Data[2]); else if(str_to_num(Data[3]) == 29) UsingWeapon[2][id] = str_to_num(Data[2]); else UsingWeapon[0][id] = str_to_num(Data[2]); return PLUGIN_HANDLED; } else if(MenuMod[id] == 2) { if(Key == 1) { if(Chest[id] > 0 && pKey[id] > 0) { Chest[id]--; pKey[id]--; ChestOpen(id); Menu(id); return PLUGIN_HANDLED; } } } else if(MenuMod[id] == 3) { if(Key == -1) { MenuMod[id] = -1; Menu(id); return PLUGIN_HANDLED; } else if(Key == 0) { if(inMarket[id]) inMarket[id] = false; else if(MarketPoints[id] > 0) { get_user_name(id, Name, 31); print_color(0, "!g%s%L", Prefix, LANG_SERVER, "TOMARKET", Name, WeaponNames[WeaponinMarket[id]], MarketPoints[id]); inMarket[id] = true; } Menu(id); return PLUGIN_HANDLED; } else if(inMarket[Key] && Points[id] >= MarketPoints[Key]) { get_user_name(Key, Name, 31); get_user_name(id, mName, 31); if(WeaponinMarket[Key] < 101) { print_color(0, "!g%s%L", Prefix, LANG_SERVER, "BUYMARKETITEM", mName, WeaponNames[WeaponinMarket[Key]], MarketPoints[Key], Name); uWeapon[WeaponinMarket[Key]][id]++; uWeapon[WeaponinMarket[Key]][Key]--; } else if(WeaponinMarket[Key] == 101) { print_color(0, "!g%s%L", Prefix, LANG_SERVER, "BUYMARKETCHEST", mName, MarketPoints[Key], Name); Chest[id]++; Chest[Key]--; } else if(WeaponinMarket[Key] == 102) { print_color(0, "!g%s%L", Prefix, LANG_SERVER, "BUYMARKETKEY", mName, MarketPoints[Key], Name); pKey[id]++; pKey[Key]--; } Points[Key] += MarketPoints[Key]; Points[id] -= MarketPoints[Key]; Save(Key); Save(id); inMarket[Key] = false; MarketPoints[Key] = 0; WeaponinMarket[Key] = 0; MenuMod[id] = 0; } } else if(MenuMod[id] == 5) { if(Key == -1) { aTarget[id] = 0; } if(Key == -2) { MenuMod[id] = -2; } if(Key == -3) { if(uWeapon[aThing[id]][id] > 0) { uWeapon[aThing[id]][aTarget[id]]++; uWeapon[aThing[id]][id]--; Points[aTarget[id]] += aPoints[id]; Points[id] -= aPoints[id]; Save(aTarget[id]); Save(id); MenuMod[id] = 0; aThing[id] = 0; aTarget[id] = 0; aPoints[id] = 0; print_color(id, "!g%s%L", Prefix, LANG_SERVER, "GIFTSUCCESS"); } } if(Key == -4) { client_cmd(id, "messagemode Gift"); } if(Key > 0) aTarget[id] = Key; Menu(id); return PLUGIN_HANDLED; } MenuMod[id] = 0; return PLUGIN_CONTINUE; }