←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Nowy
Jak dodać frakcje

Zablokowany

  • +
  • -
matti9410 - zdjęcie matti9410 29.06.2011

Witam posiadam Nowego CoD ale wersje z zapisem SQL i chciałbym dodać dwie frakcje ale nie umiem czytałem poradnik który był na forum ale tam kazali usuwać pewne liniki kodu i niewiem czy to może wpłynąć na połaczeniu coda z bazą SQL. Moje pytanie brzmi czy ktoś mógłby dodać mi te dwie frakcje ? Link skąd można pobrać tego coda [CoD Nowy] Call of Duty: MW Mod Stary i Nowy z zapisem na SQL - AMXX.pl: Support AMX Mod X Będe bardzo wdzięczny.
Użytkownik matti9410 edytował ten post 29.06.2011 19:18
Odpowiedz

  • +
  • -
V3ko - zdjęcie V3ko 29.06.2011

[CoD Nowy] Dodawanie frakcji - 2 sposoby - AMXX.pl: Support AMX Mod X Łap poradnik, oba sposoby normalnie działają :mur:
Odpowiedz

  • +
  • -
matti9410 - zdjęcie matti9410 29.06.2011

Właśnie o ten poradnik mi chodziło i neiwiem czy gdy usune te liniki co tam kazali nic sie neistanei z codem zeby niezepsuł bo jak juz pisałem jest on na zapis SQL
Odpowiedz

  • +
  • -
BliBs_Pl - zdjęcie BliBs_Pl 29.06.2011

Jeśli to dobrze zrobisz to nic się nie powinno stać.
Odpowiedz

  • +
  • -
Droso - zdjęcie Droso 29.06.2011

Przepraszam że ta wypowiedź będzie bez sensu lecz
za taką nazwę tematu powinien być warning : Jag dodać frakcje .

p.s żeby nic się nie stało polecam linijka po linijce przystosować to do sql
Odpowiedz

  • +
  • -
matti9410 - zdjęcie matti9410 29.06.2011

Literówka sorka nie zauwarzyłem a mógłby ktoś mi dodać te dwie frakcje bo nie znam się na pluginach a na pewno bym coś skopał dam +
Odpowiedz

  • +
  • -
sharkowy - zdjęcie sharkowy 29.06.2011

Postępuj zgodnie z poradnikiem, wszystko jest jasno opisane a jak nie dasz rady to wtedy pisz; najpierw spróbuj ;)
Odpowiedz

  • +
  • -
V3ko - zdjęcie V3ko 29.06.2011

PS. stosuje się jeden z dwóch sposobów, a nie tak jak Ty piszesz "dwie frakcje" na dwa sposoby na dodanie frakcji, więc nie zrób czasem dwóch na raz.
Odpowiedz

  • +
  • -
matti9410 - zdjęcie matti9410 29.06.2011

Ale idzie mi o to czy bedzie on normalnie działał przypominam mam zapis lvl SQL a ten tut jest pod zwykłego bez SQL w tym abym to zrobił co w tucie jest nie ma problemu ale boję się że sie niepołaczy z SQL albo będą jakieś błedy ....

Dodano 29 czerwiec 2011 - 21:45:
Dobra mam problem .... mam bład przy kompilacji jak można to sprawdzcie czy by działał z SQL bo jak podmieniałem tak jak było w tucie to usuwałem liniki o nazwach SQL itp ..

Dodano 29 czerwiec 2011 - 21:49:
Wgrywałem 1 sposobem

Dodano 29 czerwiec 2011 - 22:12:
te dwa kody są w ogóle inne to jest kod z tuta
public WybierzKlase(id)
{
        new menu = menu_create("Wybierz klase:", "WybierzKlase_Frakcje");
        for(new i=1; i <= ilosc_klas; i++)
        {
                if(!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;
}


A to kod z pluginu przerobi ktoś ten wycinek aby działał pod SQL ?
public WybierzKlase(id)
{
	new szTemp[1024], errno, error[128], Table[32], iLen=0;
	new identyfikator[64], typ_zapisu = get_pcvar_num(cvar_typ_zapisu);
	
	get_cvar_string("cod_table", Table, 31);
	new Handle:sql = SQL_Connect(info, errno, error, 127)
	
	if(sql == Empty_Handle)
	{
		log_amx("MySQL error: %s",error);
		return;
	}
	
	switch(typ_zapisu)
	{
		case 1:{
			copy(identyfikator, charsmax(identyfikator), nazwa_gracza[id]);
			replace_all(identyfikator, charsmax(identyfikator), "'", "\'");
			replace_all(identyfikator, charsmax(identyfikator), "`", "\`");
		}
		case 2: get_user_authid(id, identyfikator, charsmax(identyfikator));
		case 3: get_user_ip(id, identyfikator, charsmax(identyfikator));
	}
	
	new Handle:query = SQL_PrepareQuery(sql, "SELECT * FROM `%s` WHERE `nick` = '%s'", Table, identyfikator)

	if (!SQL_Execute(query))
	{
		SQL_QueryError(query, error, 127)
		server_print(error)
	}
	
	else if(SQL_NumRows(query))
	{
		new szTemp[50], klasa[50], pobrane[4], poziom[32]
		new menu = menu_create("Wybierz klase:", "WybierzKlase_Handle");
			
		for(new i=1; i <= ilosc_klas; i++)
		{
			formatex(pobrane, 3, "%i", i);
			SQL_ReadResult(query, SQL_FieldNameToNum(query, pobrane), szTemp, charsmax(szTemp))
			
			replace_all(szTemp, charsmax(szTemp), "#", " ");

			parse(szTemp, poziom, 31);
				
			format(klasa, 49, "%s \yPoziom: %i", nazwy_klas[i], str_to_num(poziom));
			menu_additem(menu, klasa);
		}
		menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
		menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
		menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
		menu_display(id, menu);
		
		client_cmd(id, "spk QTM_CodMod/select");
	} 
	else
	{
		if(!create_class[id])
		{
			iLen += formatex(szTemp[iLen], charsmax(szTemp)-iLen, "INSERT INTO `%s` (`nick`", Table);
			
			for(new i=1; i<= ilosc_klas; i++)
				iLen += formatex(szTemp[iLen], charsmax(szTemp)-iLen, ", `%i`", i);
		
			iLen += copy(szTemp[iLen], charsmax(szTemp)-iLen, ") VALUES (");
			iLen += formatex(szTemp[iLen], charsmax(szTemp)-iLen, "'%s'", identyfikator);
			
			for(new l=1; l<= ilosc_klas; l++)
				iLen += copy(szTemp[iLen], charsmax(szTemp)-iLen, ", '1#0#0#0#0#0'");
	
			iLen += copy(szTemp[iLen], charsmax(szTemp)-iLen, ")");
			create_class[id] = 1
			
			SQL_QueryAndIgnore(sql, szTemp)
		}
	}
	SQL_FreeHandle(query)
	SQL_FreeHandle(sql)
}

public WybierzKlase_Handle(id, menu, item)
{
	client_cmd(id, "spk QTM_CodMod/select");
	
	if(item++ == MENU_EXIT)
	{
		menu_destroy(menu);
		return PLUGIN_CONTINUE;
	}	
	
	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, "[Call of Duty] Klasa zostanie zmieniona w nastepnej rundzie.");
	else
	{
		UstawNowaKlase(id);
		DajBronie(id);
		ZastosujAtrybuty(id);
	}
	
	return PLUGIN_CONTINUE;
}
Byłbym wdzięczny

Załączone pliki

Odpowiedz
Zablokowany