Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
CoD Nowy

Połączenie awansu klas z frakcjami od cypisa

cod nowy

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
3 odpowiedzi w tym temacie

#1 1stADXionC

    Wszechobecny

  • Użytkownik

Reputacja: 2
Nowy

  • Postów:443
  • Imię:Rafał
  • Lokalizacja:Wrocław
Offline

Napisano 23.10.2016 17:48

Witam.

Jak zrobić aby awans klas działał razem z frakcjami od cypisa.

Chcę osiągnąć efekt, że gdy wpisze komendę " /klasa " otworzy się menu z frakcjami;

1. Darmowe 
2. Premium

Po wybraniu frakcji wyświetla się menu z klasami:

1.Nazwa Klasy
2.Nazwa Klasy

Gdy już wybierzemy klasę otworzy się kolejne menu:

1. Nazwa Klasy
2. Elitarna Nazwa Klasy
Mój kod wyboru klas:
 
public WybierzKlase(id)
{
    new menu = menu_create("Wybierz klase:", "WybierzKlase_Frakcje");
    for(new i=1; i <= ilosc_klas; i++)
    {
        if(!equal(frakcja_klas[i],"") && !is_in_previous(frakcja_klas[i],i)){
            menu_additem(menu,frakcja_klas[i],frakcja_klas[i])
        }
    }
    
    menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
    menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
    menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
    menu_display(id, menu);
}

public WybierzKlase_Frakcje(id, menu, item)
{
    if(item == MENU_EXIT){
        menu_destroy(menu);
        return PLUGIN_CONTINUE;
    }
    
    new data[65], iName[64]
    new acces, callback
    menu_item_getinfo(menu, item, acces, data,64, iName, 63, callback)
    
    new menu2 = menu_create("Wybierz klase:", "WybierzKlase_Handle");
    
    new klasa[50],szTmp[5];
    for(new i=1; i <= ilosc_klas; i++)
    {
        if(equali(data,frakcja_klas[i])){
            WczytajDane(id, i);
            format(klasa, charsmax(klasa), "%s \yPoziom: %i", nazwy_klas[i], poziom_gracza[id]);
            num_to_str(i,szTmp,charsmax(szTmp));
            menu_additem(menu2, klasa, szTmp);
        }
    }
    
    WczytajDane(id, klasa_gracza[id]);
    
    menu_setprop(menu2, MPROP_EXITNAME, "Wyjdz");
    menu_setprop(menu2, MPROP_BACKNAME, "Poprzednia strona");
    menu_setprop(menu2, MPROP_NEXTNAME, "Nastepna strona");
    menu_display(id, menu2);
    
    client_cmd(id, "spk QTM_CodMod/select");
    
    menu_destroy(menu);
    return PLUGIN_CONTINUE;
}

public WybierzKlase_Handle(id, menu, item)
{
    client_cmd(id, "spk QTM_CodMod/select");
    
    if(item == MENU_EXIT)
    {
        menu_destroy(menu);
        return PLUGIN_CONTINUE;
    }    
    
    new data[65], iName[64]
    new acces, callback
    menu_item_getinfo(menu, item, acces, data,64, iName, 63, callback)
    
    item = str_to_num(data);
    if(item == klasa_gracza[id] && !nowa_klasa_gracza[id])
        return PLUGIN_CONTINUE;
    
    nowa_klasa_gracza[id] = item;
    
    if(klasa_gracza[id])
        client_print(id, print_chat, "[COD:MW] Klasa zostanie zmieniona w nastepnej rundzie.");
    else
    {
        UstawNowaKlase(id);
        DajBronie(id);
        ZastosujAtrybuty(id);
    }
    return PLUGIN_CONTINUE;
}

 


  • +
  • -
  • 0

DiabloMod - 10%

 

COD:MW3 - BETATESTY

 


#2 Qes

    Profesjonalista

  • Użytkownik

Reputacja: 40
Pomocny

  • Postów:204
  • Lokalizacja:Polska
Offline

Napisano 25.10.2016 00:00

Pewnie wystarczy coś takiego


public WybierzKlase(id)
{
	new menu = menu_create("Wybierz klase:", "WybierzKlase_Frakcje");
	for(new i=1; i <= ilosc_klas; i++)
	{
		if(!equal(frakcja_klas[i],"") && !is_in_previous(frakcja_klas[i],i)){
			menu_additem(menu,frakcja_klas[i],frakcja_klas[i])
		}
	}
	
	menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
	menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
	menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
	menu_display(id, menu);
}

public WybierzKlase_Frakcje(id, menu, item)
{
	if(item == MENU_EXIT){
		menu_destroy(menu);
		return PLUGIN_CONTINUE;
	}
	
	new data[65], iName[64]
	new acces, callback
	menu_item_getinfo(menu, item, acces, data,64, iName, 63, callback)
	
	new menu2 = menu_create("Wybierz klase:", "WybierzKlase_Handle");
	
	new klasa[50], dana_klasa, numer[10];
	for(new i=1; i <= ilosc_klas; i++)
	{
		if(JestAwansem(i))
			continue;
		WczytajDane(id, i);
		dana_klasa = i;
	  
		for(;;)
		{
			if(awansuje_do[dana_klasa] && poziom_gracza[id] >= awanse[ZnajdzAwans(dana_klasa, awansuje_do[dana_klasa])][2])
			{
				dana_klasa = awansuje_do[dana_klasa];
				WczytajDane(id, dana_klasa);
			}
			else break;
		}
		formatex(klasa, charsmax(klasa), "%s \yPoziom: %i", nazwy_klas[dana_klasa], poziom_gracza[id]);
		num_to_str(dana_klasa, numer, 9);
		menu_additem(menu, klasa, numer);
	}
	
	WczytajDane(id, klasa_gracza[id]);
	
	menu_setprop(menu2, MPROP_EXITNAME, "Wyjdz");
	menu_setprop(menu2, MPROP_BACKNAME, "Poprzednia strona");
	menu_setprop(menu2, MPROP_NEXTNAME, "Nastepna strona");
	menu_display(id, menu2);
	
	client_cmd(id, "spk QTM_CodMod/select");
	
	menu_destroy(menu);
	return PLUGIN_CONTINUE;
}

public WybierzKlase_Handle(id, menu, item)
{
	client_cmd(id, "spk QTM_CodMod/select");
	
	if(item == MENU_EXIT)
	{
		menu_destroy(menu);
		return PLUGIN_CONTINUE;
	}     
	
	new data[65], iName[64]
	new acces, callback
	menu_item_getinfo(menu, item, acces, data,64, iName, 63, callback)
	
	item = str_to_num(data);
	if(item == klasa_gracza[id] && !nowa_klasa_gracza[id])
		return PLUGIN_CONTINUE;
	
	nowa_klasa_gracza[id] = item;
	
	if(klasa_gracza[id])
		client_print(id, print_chat, "[COD:MW] Klasa zostanie zmieniona w nastepnej rundzie.");
	else
	{
		UstawNowaKlase(id);
		DajBronie(id);
		ZastosujAtrybuty(id);
	}
	return PLUGIN_CONTINUE;
}

Trudno to sprawdzić skoro nie podajesz .sma 


  • +
  • -
  • 1

Polecam serdecznie

cs1.6download.png

Zapraszam!


#3 1stADXionC

    Wszechobecny

  • Autor tematu
  • Użytkownik

Reputacja: 2
Nowy

  • Postów:443
  • Imię:Rafał
  • Lokalizacja:Wrocław
Offline

Napisano 25.10.2016 13:06



Pewnie wystarczy coś takiego


public WybierzKlase(id)
{
	new menu = menu_create("Wybierz klase:", "WybierzKlase_Frakcje");
	for(new i=1; i <= ilosc_klas; i++)
	{
		if(!equal(frakcja_klas[i],"") && !is_in_previous(frakcja_klas[i],i)){
			menu_additem(menu,frakcja_klas[i],frakcja_klas[i])
		}
	}
	
	menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
	menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
	menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
	menu_display(id, menu);
}

public WybierzKlase_Frakcje(id, menu, item)
{
	if(item == MENU_EXIT){
		menu_destroy(menu);
		return PLUGIN_CONTINUE;
	}
	
	new data[65], iName[64]
	new acces, callback
	menu_item_getinfo(menu, item, acces, data,64, iName, 63, callback)
	
	new menu2 = menu_create("Wybierz klase:", "WybierzKlase_Handle");
	
	new klasa[50], dana_klasa, numer[10];
	for(new i=1; i <= ilosc_klas; i++)
	{
		if(JestAwansem(i))
			continue;
		WczytajDane(id, i);
		dana_klasa = i;
	  
		for(;;)
		{
			if(awansuje_do[dana_klasa] && poziom_gracza[id] >= awanse[ZnajdzAwans(dana_klasa, awansuje_do[dana_klasa])][2])
			{
				dana_klasa = awansuje_do[dana_klasa];
				WczytajDane(id, dana_klasa);
			}
			else break;
		}
		formatex(klasa, charsmax(klasa), "%s \yPoziom: %i", nazwy_klas[dana_klasa], poziom_gracza[id]);
		num_to_str(dana_klasa, numer, 9);
		menu_additem(menu, klasa, numer);
	}
	
	WczytajDane(id, klasa_gracza[id]);
	
	menu_setprop(menu2, MPROP_EXITNAME, "Wyjdz");
	menu_setprop(menu2, MPROP_BACKNAME, "Poprzednia strona");
	menu_setprop(menu2, MPROP_NEXTNAME, "Nastepna strona");
	menu_display(id, menu2);
	
	client_cmd(id, "spk QTM_CodMod/select");
	
	menu_destroy(menu);
	return PLUGIN_CONTINUE;
}

public WybierzKlase_Handle(id, menu, item)
{
	client_cmd(id, "spk QTM_CodMod/select");
	
	if(item == MENU_EXIT)
	{
		menu_destroy(menu);
		return PLUGIN_CONTINUE;
	}     
	
	new data[65], iName[64]
	new acces, callback
	menu_item_getinfo(menu, item, acces, data,64, iName, 63, callback)
	
	item = str_to_num(data);
	if(item == klasa_gracza[id] && !nowa_klasa_gracza[id])
		return PLUGIN_CONTINUE;
	
	nowa_klasa_gracza[id] = item;
	
	if(klasa_gracza[id])
		client_print(id, print_chat, "[COD:MW] Klasa zostanie zmieniona w nastepnej rundzie.");
	else
	{
		UstawNowaKlase(id);
		DajBronie(id);
		ZastosujAtrybuty(id);
	}
	return PLUGIN_CONTINUE;
}

Trudno to sprawdzić skoro nie podajesz .sma 

Łap:

Załączone pliki


  • +
  • -
  • 0

DiabloMod - 10%

 

COD:MW3 - BETATESTY

 


#4 Qes

    Profesjonalista

  • Użytkownik

Reputacja: 40
Pomocny

  • Postów:204
  • Lokalizacja:Polska
Offline

Napisano 28.10.2016 16:15

Tak jak pisałem, mogłeś sprawdzić to co podałem, bo ja nie posiadam jakieś biblioteki quests

Załączony plik  cod_silnik.sma   61,4 KB  29 Ilość pobrań
  cod_silnik.amxx


  • +
  • -
  • 0

Polecam serdecznie

cs1.6download.png

Zapraszam!






Również z jednym lub większą ilością słów kluczowych: cod nowy

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych