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.
|
Dodanie klasy bez resetu expa
#1
Napisano 18.04.2010 00:37
#2
Napisano 18.04.2010 01:13
#3
Napisano 18.04.2010 01:46
Dodajc recznie dla kazdego w Mysql Wpis
Taaa, pomyśl, a jak ktoś ma 3000 graczy? Każdemu z osobna ma dodać klase? -.-
Trzeba zrobić odpowiednie zapytanie do bazy danych, które wykona wpis wszystkim graczom..
#4
Napisano 18.04.2010 11:08
#5
Napisano 18.04.2010 12:25
Dodajc recznie dla kazdego w Mysql Wpis
Taaa, pomyśl, a jak ktoś ma 3000 graczy? Każdemu z osobna ma dodać klase? -.-
Trzeba zrobić odpowiednie zapytanie do bazy danych, które wykona wpis wszystkim graczom..
To jak mam zrobić te zapytanie ??
#6
Napisano 18.04.2010 13:56
#7
Napisano 18.04.2010 14:05
Ja wiem ale nie stety takich informacji za darmo ci nie ooddam
Inteligentna odpowiedź. To po cholerę się wypowiadasz? To jest forum darmowe, a nie płatne, więc wyjdź.
#8
Napisano 18.04.2010 14:35
Powiedzcie jak wygląda struktura bazy danych a jak ma wyglądać po dodaniu klasy a zobaczę co da się zrobić
#9
Napisano 18.04.2010 14:52
piękna ripostaInteligentna odpowiedź. To po cholerę się wypowiadasz? To jest forum darmowe, a nie płatne, więc wyjdź.
zapytaj się Pana Misia on wie
#10
Napisano 18.04.2010 16:02
jesli istnieje to nic a jesli nie to dopisujecie go przyklad macie juz w sma jak dopisacwhere klasa = 9
oczywiscie po dodaniu np 4 klas fajnie jest zastosowac petle od (new i=8; i<12;i++)
Pav struktura bazy to dla kazdego nicku 8 wpisow rozniacych sie tyllko numerem klasy i expem
Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka
GG:6022845 (nie pomagam za free osobom ponizej rangi MoD)
#11
Napisano 18.04.2010 16:19
INSERT IGNORE INTO *TABELA_DIABLO* (nick, ip, sid, klasa, lvl, exp) SELECT nick, ip, sid, *NUMER_NOWEJ_KLASY*, *LEVEL_NOWEJ_KLASY*, *EXP_NOWEJ_KLASY* FROM *TABELA_DIABLO* GROUP BY *RODZAJ_ZAPISU* HAVING MAX(klasa)<*NUMER_NOWEJ_KLASY*;
W miejsce wartości pomiędzy gwiazdkami w stawiamy odpowiednie wartości
*TABELA_DIABLO* -> standardowo dbmod_tablet
*NUMER_NOWEJ_KLASY* -> np 9 (standardowo jest 8 klas)
*LEVEL_NOWEJ_KLASY* -> lvl nowych graczy (czyli 0 czy tam 1 na początek)
*EXP_NOWEJ_KLASY* -> exp nowych graczy (zależy lvl'a, 0 na początek może być)
*RODZAJ_ZAPISU* -> nick, ip lub sid
czyli np:
INSERT IGNORE INTO dbmod_tablet (nick, ip, sid, klasa, lvl, exp) SELECT nick, ip, sid, 9, 1, 1 FROM dbmod_tablet GROUP BY nick HAVING MAX(klasa)<9;
W przypadku zapisu na nick doda wszystkim(którzy jej nie mają) klasę z numerem 9, lvl 1 i exp 1 w tabeli dbmod_tablet
#12
Napisano 18.04.2010 16:41
public LoadXP(id, klasa){ if(is_user_bot(id) || asked_sql[id]==1) return PLUGIN_HANDLED if(player_class[id]==0)load_xp(id) if(g_boolsqlOK ) { new name[64] new data[2] data[0]=id data[1]=klasa if(get_cvar_num("diablo_sql_save")==0) { get_user_name(id,name,63) replace_all ( name, 63, "'", "Q" ) replace_all ( name, 63, "`", "Q" ) new qcommand2[1024] for (new i=9;i<12;i++){ format(gcommand,1023,"INSERT IGNORE INTO dbmod_tablet (nick, ip, sid, klasa, lvl, exp) SELECT nick, ip, sid, %i, 1, 1 FROM dbmod_tablet GROUP BY nick HAVING MAX(klasa)<%i",i,i) SQL_ThreadQuery(g_SqlTuple,"Load_xp_handle",q_command2,data,2) } new q_command[512] format(q_command,511,"SELECT * FROM `%s` WHERE `nick`='%s' AND `klasa`='%i'", g_sqlTable, name, player_class[id]) SQL_ThreadQuery(g_SqlTuple,"Load_xp_handle",q_command,data,2) asked_sql[id]=1 } else if(get_cvar_num("diablo_sql_save")==1) { get_user_ip(id, name ,63,1) new qcommand2[1024] for (new i=9;i<12;i++){ format(gcommand,1023,"INSERT IGNORE INTO dbmod_tablet (nick, ip, sid, klasa, lvl, exp) SELECT nick, ip, sid, %i, 1, 1 FROM dbmod_tablet GROUP BY ip HAVING MAX(klasa)<%i",i,i) SQL_ThreadQuery(g_SqlTuple,"Load_xp_handle",q_command2,data,2) } new q_command[512] format(q_command,511,"SELECT * FROM `%s` WHERE `ip`='%s' AND `klasa`='%i'", g_sqlTable, name, player_class[id]) SQL_ThreadQuery(g_SqlTuple,"Load_xp_handle",q_command,data,2) asked_sql[id]=1 } else if(get_cvar_num("diablo_sql_save")==2) { get_user_authid(id, name ,63) new qcommand2[1024] for (new i=9;i<12;i++){ format(gcommand,1023,"INSERT IGNORE INTO dbmod_tablet (nick, ip, sid, klasa, lvl, exp) SELECT nick, ip, sid, %i, 1, 1 FROM dbmod_tablet GROUP BY sid HAVING MAX(klasa)<%i",i,i) SQL_ThreadQuery(g_SqlTuple,"Load_xp_handle",q_command2,data,2) } new q_command[512] format(q_command,511,"SELECT * FROM `%s` WHERE `sid`='%s' AND `klasa`='%i'", g_sqlTable, name, player_class[id]) SQL_ThreadQuery(g_SqlTuple,"Load_xp_handle",q_command,data,2) asked_sql[id]=1 } } else sql_start() return PLUGIN_HANDLED }
w zasadzie takie cos w oparciu o kod pavulona powinno dodac 3 wpisy dla kazdego
ale pewny do konca nie jestem
Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka
GG:6022845 (nie pomagam za free osobom ponizej rangi MoD)
#13
Napisano 18.04.2010 16:47
Czemu niszczysz mój kod ?
To zapytanie jednorazowe wysyłane do bazy danych np. poprzez phpMyAdmin'a.
#14
Napisano 18.04.2010 16:56
Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka
GG:6022845 (nie pomagam za free osobom ponizej rangi MoD)
#15
Napisano 18.04.2010 17:38
#16
Napisano 18.04.2010 19:58
#17
Napisano 18.04.2010 20:11
żeby sortowało to trzeba by edytować wszystkie wpisy w bazie danych zmieniając id każdego kolejnego elementu, w skrócie wykonanie tego z odpowiednim skryptem było by dość ciężkie i zasobożerne(i bezcelowe ).Szkoda, że od razu nie sortuje, tylko na końcu dodaje. . Ale dzięki wielkie. ;] Mnie też się na pewno przyda. ;]
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych