Skocz do zawartości
sapek

[Rozwiązane] Prośba o dodanie flagi VIP na broń AWP (Deathmatch)

Rekomendowane odpowiedzi

Dzień dobry, posiadam na swoim serwerze wgrane pliki deathmatch stąd: https://forums.alliedmods.net/showthread.php?t=246405
Hej! Skorzystałeś z linku lub pobrałeś załącznik? Uhonoruj naszą pracę poprzez rejestrację na forum i rośnij razem z nami!

Chciałbym aby AWP po wpisaniu !guns była dostępna tylko dla VIPów.

Zależy mi, żeby dla zwykłych graczy nie znikała opcja AWP po wpisaniu !guns, ale, żeby nie mogli jej wybrać a obok napisu AWP pojawił sie tag [VIP] czy coś takiego.

Z góry dziękuję za pomoc.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Napisano (edytowane)

Ew. czy mógłby ktoś naprowadzić jak to zrobić samemu, bo nie mam kompletnie pomysłu.

Edytowane przez sapek

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Gość

Użyj sobie tego -

bool IsPlayerVIP(int client) {
    if(GetUserFlagBits(client) & ADMFLAG_RESERVATION)
        return true;

    return false;
}

ADMFLAG_RESERVATION zamień na flagę taką, jaką chcesz
Hej! Skorzystałeś z linku lub pobrałeś załącznik? Uhonoruj naszą pracę poprzez rejestrację na forum i rośnij razem z nami!

 

Następnie, w kodzie znajdź to menu. Szukaj po nazwach broni. Nie zaglądałem tam, żeby za bardzo nie podsuwać gotowego rozwiązania, to się czegoś przy okazji nauczysz.

Masz już znalezioną pozycję, w której do wyboru mamy AWP? Gitówka. Wygląda to pewnie mniej więcej tak:

 

menu.AddItem("weapon_awp", "AWP");

 

To teraz tak - powinniśmy to zaifować, tj. sprawdzić przedtem, czy gracz ma VIP. W tym celu centralnie nad tą linijką strzel sobie używają poprzedniej funkcji sprawdzającej

jeśli NIE MA VIP, to

menu.AddItem("weapon_awp", "AWP", ITEMDRAW_DISABLED);

w innym przypadku 

menu.AddItem("weapon_awp", "AWP");

 

Wsio 🙂 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Napisano (edytowane)
4 godziny temu, SUPER TIMOR napisał:

Użyj sobie tego -

bool IsPlayerVIP(int client) {
    if(GetUserFlagBits(client) & ADMFLAG_RESERVATION)
        return true;

    return false;
}

ADMFLAG_RESERVATION zamień na flagę taką, jaką chcesz
Hej! Skorzystałeś z linku lub pobrałeś załącznik? Uhonoruj naszą pracę poprzez rejestrację na forum i rośnij razem z nami!

 

Następnie, w kodzie znajdź to menu. Szukaj po nazwach broni. Nie zaglądałem tam, żeby za bardzo nie podsuwać gotowego rozwiązania, to się czegoś przy okazji nauczysz.

Masz już znalezioną pozycję, w której do wyboru mamy AWP? Gitówka. Wygląda to pewnie mniej więcej tak:

 

menu.AddItem("weapon_awp", "AWP");

 

To teraz tak - powinniśmy to zaifować, tj. sprawdzić przedtem, czy gracz ma VIP. W tym celu centralnie nad tą linijką strzel sobie używają poprzedniej funkcji sprawdzającej

jeśli NIE MA VIP, to

menu.AddItem("weapon_awp", "AWP", ITEMDRAW_DISABLED);

w innym przypadku 

;

 

Wsio 🙂 

 

Dzięki za odpowiedź. 
W kodzie to menu wygląda tak:

void BuildWeaponMenuNames()
{
    g_smWeaponMenuNames = new StringMap();
    /* Primary weapons */
    g_smWeaponMenuNames.SetString("weapon_ak47", "AK-47");
    g_smWeaponMenuNames.SetString("weapon_m4a1", "M4A1");

...

Strzeliłem tego boola nad linijką z AWP, ale potem chyba coś mieszam bo przy kompilacji wywala mi errory.

 

Rozumiem, że linijki

 

g_smWeaponMenuNames.SetString("weapon_awp", "AWP", ITEMDRAW_DISABLED);

g_smWeaponMenuNames.SetString("weapon_awp", "AWP")

 

Mam dać nad linijkami return true; i return false?

 

 

 

 

 

 

 

 

 

 

Edytowane przez sapek

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Gość

Beng, niespodzianka, menu budowane niestandardowo.

Zaaaatem :

 

if (StrEqual(currentWeapon, weapon))
	menu.AddItem(weapon, weaponMenuName);
else
{
	if ((weaponLimit == -1) || (weaponCount < weaponLimit))
		menu.AddItem(weapon, weaponMenuName);
	else
	{
		char text[64];
		Format(text, sizeof(text), "%s (Limited)", weaponMenuName);
		menu.AddItem(weapon, text, ITEMDRAW_DISABLED);
	}

}

Tu trzeba grzebać 😛 

Musisz po pierwsze sprawdzić, czy sprawdzana broń to weapon_awp. Jeśli tak, to sprawdzasz czy jest VIP, czy nie. Próbuj, jak coś to pisz!

 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Witam, posiadam ten sam problem. Gdy kompiluje wyskakuje BibIEaF.png

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
15 godzin temu, patstar napisał:

Witam, posiadam ten sam problem. Gdy kompiluje wyskakuje BibIEaF.png
Hej! Skorzystałeś z linku lub pobrałeś załącznik? Uhonoruj naszą pracę poprzez rejestrację na forum i rośnij razem z nami!

pokaż cały kod przed i po edycji

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Męczę się z tym od dwóch dni. Niestety nie udało się do tej pory. Ma ktoś chwilę, żeby zajrzeć do tego kodu i to przerobić? Domyślam się, że to nie jest trudne, ale moja wiedza w tym temacie jest znikoma, stąd te problemy.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Wiadomość wygenerowana automatycznie

 

Problem został rozwiązany

Jeżeli się z tym nie zgadzasz, raportuj ten post

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.

×
×
  • Dodaj nową pozycję...