Detaljan opis problema:Ako bi neko mogao da mi skine mysql sa ovog koda ili barem da mi malo pojasni....? Hvala unapred 😄
Dio skripte:
#include
#define MAX_SUPPORTERA 40
#define TABLE_SUPP "supporters"
enum suppInfo {
suppID,
suppName,
suppStatus,
suppAktivnost,
suppRank,
bool:suppDuty
}
new SUPPInfo,
brojSupp;
hook OnPlayerDisconnect(playerid, reason) {
SUPP_Offline(playerid);
return 1;
}
hook OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) {
SUPP_DialogResponse(playerid, dialogid, response, listitem, inputtext);
return 1;
}
CMD:suporteri(playerid, params[]) {
new string; new atext; new status; format(string, sizeof(string), "");
for(new i = 1; i <= MAX_SUPPORTERA; i++)
{
if(SUPP_Exist(i)) {
if(!strcmp(SUPPInfo, "Niko", false))
{
strcat(string, ""col_white"ID: "col_zuta"");
format(atext, sizeof(atext), "%d ", SUPPInfo);
strcat(string, atext);
strcat(string, ""col_white"| Ime: "col_zuta"");
format(atext, sizeof(atext), "%s", SUPPInfo);
strcat(string, atext);
strcat(string, "\n");
}
else
{
if(SUPPInfo == 0) status = "Offline";
else status = "Online";
strcat(string, ""col_white"ID: "col_zuta"");
format(atext, sizeof(atext), "%d ", SUPPInfo);
strcat(string, atext);
if(SUPPInfo == false) {
strcat(string, ""col_white"| Ime: "col_zuta"");
format(atext, sizeof(atext), "%s ", SUPPInfo);
strcat(string, atext);
}
else {
strcat(string, ""col_white"| Ime: "col_zuta"");
format(atext, sizeof(atext), "%s (duty) ", SUPPInfo);
strcat(string, atext);
}
strcat(string, ""col_white"| Rank: "col_zuta"");
format(atext, sizeof(atext), "%d ", SUPPInfo);
strcat(string, atext);
strcat(string, ""col_white"| Aktivnost: "col_zuta"");
format(atext, sizeof(atext), "%d sata ", SUPPInfo);
strcat(string, atext);
strcat(string, ""col_white"| Status: "col_zuta"");
format(atext, sizeof(atext), "%s", status);
strcat(string, atext);
strcat(string, "\n");
}
}
}
if(strlen(string) == 0) return GRESKA(playerid, "Trenutno nema suportera.");
ShowPlayerDialog(playerid, DIALOG_OSTALO, DIALOG_STYLE_MSGBOX, ""col_white"SPISAK "col_zuta"SUPORTERA", string, "Zatvori", "");
return 1;
}
CMD:makesupporter(playerid, params[]) {
if(PlayerInfo < 3 && PlayerInfo < 3) return errorMessage( playerid, 2);
SUPP_Dialog(playerid);
return 1;
}
stock SUPP_Save(id) {
if(id == 0) return 1;
new scvstr;
valstr(scvstr, id);
MYSQL_WriteString(TABLE_SUPP,"name",SUPPInfo, "id", scvstr);
MYSQL_WriteInt(TABLE_SUPP,"status",SUPPInfo, "id", scvstr);
MYSQL_WriteInt(TABLE_SUPP,"aktivnost",SUPPInfo, "id", scvstr);
MYSQL_WriteInt(TABLE_SUPP,"rank",SUPPInfo, "id", scvstr);
return 1;
}
SUPP_Online(playerid) {
if(PlayerInfo[ playerid ][ pSupporter ] != 0) {
if(SUPP_Exist(PlayerInfo[ playerid ][ pSupporterSlot ])) {
SUPPInfo[ PlayerInfo[ playerid ][ pSupporterSlot ] ][ suppStatus ] = 1;
SUPPInfo[ PlayerInfo[ playerid ][ pSupporterSlot ] ][ suppDuty ] = false;
SUPP_Save( PlayerInfo[ playerid ][ pSupporterSlot ] );
}
}
}
SUPP_Offline(playerid) {
if(PlayerInfo[ playerid ][ pSupporter ] != 0) {
if(SUPP_Exist(PlayerInfo[ playerid ][ pSupporterSlot ])) {
SUPPInfo[ PlayerInfo[ playerid ][ pSupporterSlot ] ][ suppStatus ] = 0;
SUPPInfo[ PlayerInfo[ playerid ][ pSupporterSlot ] ][ suppDuty ] = false;
SUPP_Save( PlayerInfo[ playerid ][ pSupporterSlot ] );
}
}
}
SUPP_Dialog(playerid) {
new info;
format(info, sizeof(info), ""col_white"Molimo unesite "col_zuta"puno ime"col_white" te pored "col_crvena"0"col_zuta"/1/2/3"col_white" i slot "col_zuta"1-25"col_white".\n"col_crvena"NAPOMENA:"col_white" Morate upisati puno ime igraca.\n"col_white"Primer: "col_zuta"MEMOREX 3 23");
ShowPlayerDialog(playerid, DIALOG_MAKE_SUPPORTER, DIALOG_STYLE_INPUT, ""col_white"POSTAVLJANJE "col_zuta"SUPORTERA", info, "Postavi", "Zatvori");
return 1;
}
private SUPP_Load() {
mysql_query("SELECT MAX(id) FROM `"TABLE_SUPP"`");
mysql_store_result(); brojSupp = mysql_fetch_int(); mysql_free_result();
if(brojSupp < 0) brojSupp = 0;
printf("Ucitavanje Suportera... (%d)", brojSupp);
new podatak;
for(new i = 1; i <= brojSupp; i++) {
format(podatak,sizeof(podatak),"SELECT * FROM `"TABLE_SUPP"` WHERE `id` = '%d'",i), mysql_query(podatak), mysql_store_result();
while(mysql_retrieve_row()) {
mysql_fetch_field_row(podatak,"id"); SUPPInfo = strval(podatak);
mysql_fetch_field_row(podatak,"name"); SetString(SUPPInfo, podatak);
mysql_fetch_field_row(podatak,"status"); SUPPInfo = strval(podatak);
mysql_fetch_field_row(podatak,"aktivnost"); SUPPInfo = strval(podatak);
mysql_fetch_field_row(podatak,"rank"); SUPPInfo = strval(podatak);
}
mysql_free_result();
}
return 1;
}
private SUPP_Count(playerid) {
if(SUPP_Exist(PlayerInfo)) {
SUPPInfo[PlayerInfo] ++;
SUPP_Save(PlayerInfo);
}
return 1;
}
private SUPP_Exist(id) {
new what=0;
format(query, sizeof(query), "SELECT * FROM `"TABLE_SUPP"` WHERE `id` = '%d'",id);
mysql_query(query);
mysql_store_result();
if(mysql_num_rows() == 1) what = 1;
mysql_free_result();
return what;
}
private SUPP_DialogResponse(playerid, dialogid, response, listitem, inputtext[]) {
if(dialogid == DIALOG_MAKE_SUPPORTER) {
if(response) {
new user, string, sta, slot;
if(sscanf(inputtext, "sii", user, sta, slot)) return SUPP_Dialog(playerid);
if(slot > MAX_SUPPORTERA) return GRESKA(playerid, "Slot ne moze biti veci od 25.");
if(USER_Exist(user)) {
if(IsPlayerConnected(GetPlayerId(user))) {
if(sta == 0) {
if(PlayerInfo[GetPlayerId(user)] == 0) return GRESKA(playerid, "Odabrani igrac nema suportera.");
if(!strcmp(SUPPInfo,user,true)) {
SUPPInfo = 0;
SUPPInfo = 0;
SUPPInfo = 0;
SUPPInfo = false;
SetString(SUPPInfo, "Niko");
SUPP_Save(slot);
PlayerInfo[GetPlayerId(user)] = 0; PlayerInfo[GetPlayerId(user)] = 0;
va_SendClientMessage(GetPlayerId(user), -1, ""col_zuta""col_white" %s %s vam je skinuo suportera.", playerStatus(playerid), GetName(playerid));
va_SendClientMessage(playerid, -1, ""col_zuta""col_white" Uspesno ste skinuli %s suportera.", GetName(GetPlayerId(user)));
SAMF(-1, ""adminInfo"AdminInfo: %s %s je skinuo suportera %s igracu.", playerStatus(playerid), GetName(playerid), user);
SacuvajIgraca(GetPlayerId(user));
format(string, sizeof(string), "Suporter: %s | Igrac: %s | Skinut suporter", GetName(playerid), GetName(GetPlayerId(user)));
LogPostavljanja(string);
return 1;
}
else return GRESKA(playerid, "Odabrani suporter nije na odabranom slotu.");
}
else {
if(PlayerInfo[GetPlayerId(user)] > 0) {
if(!strcmp(SUPPInfo,user,true)) {
SUPPInfo = sta;
SUPPInfo = 0;
SetString(SUPPInfo, GetName(GetPlayerId(user)));
PlayerInfo[GetPlayerId(user)] = sta;
SUPP_Save(slot); SacuvajIgraca(GetPlayerId(user));
va_SendClientMessage(GetPlayerId(user), -1, ""col_zuta""col_white" %s %s vam je postavio suporter level %d, slot: %d.", playerStatus(playerid), GetName(playerid), sta, slot);
va_SendClientMessage(GetPlayerId(user), -1, ""col_zuta""col_white" Vas pin kod je isti, te glasi %d.", PlayerInfo[GetPlayerId(user)]);
va_SendClientMessage(playerid, -1, ""col_zuta""col_white" Uspesno ste postavili %s-u suporter level %d.", GetName(GetPlayerId(user)), sta);
SAMF(-1, ""adminInfo"AdminInfo: %s %s je postavio suportera(%d) %s igracu, slot: %d.", playerStatus(playerid), GetName(playerid), sta, user, slot);
format(string, sizeof(string), "Suporter: %s | Igrac: %s | Postavljen suporter %d | Slot: %d", GetName(playerid), GetName(GetPlayerId(user)), sta, slot);
LogPostavljanja(string);
return 1;
}
else return GRESKA(playerid, "Odabrani suporter nije na odabranom slotu.");
}
if(!strcmp(SUPPInfo,"Niko",true)) {
SUPPInfo = 0;
SUPPInfo = sta;
SUPPInfo = 1;
SetString(SUPPInfo, GetName(GetPlayerId(user)));
SUPPInfo = slot;
SUPPInfo = false;
PlayerInfo[GetPlayerId(user)] = sta;
PlayerInfo[GetPlayerId(user)] = slot;
va_SendClientMessage(GetPlayerId(user), -1, ""col_zuta""col_white" %s %s vam je postavio suportera.", playerStatus(playerid), GetName(playerid));
va_SendClientMessage(playerid, -1, ""col_zuta""col_white" Uspesno ste postavili %s-u suportera.", GetName(GetPlayerId(user)));
new randomkod = 10000 + random(89999);
PlayerInfo[GetPlayerId(user)] = randomkod;
SCM(GetPlayerId(user), -1, "{FF0000}VAZNO! Za ulazak u igru bice Vam potreban poseban kod. Bez tog koda necete biti u mogucnosti da se ulogujete u svoj account.");
va_SendClientMessage(GetPlayerId(user), -1, "{FF0000}Vas PIN kod je: {FFFFFF}%d. {FF0000}Ukoliko ga izgubite, nece biti moguce vratiti ga i necete moci da se ulogujete.", randomkod);
if(!SUPP_Exist(slot)) {
new str_query;
format(str_query,sizeof(str_query),"INSERT INTO "TABLE_SUPP" (`id`) VALUES ('%d')", slot);
mysql_query(str_query); }
SacuvajIgraca(GetPlayerId(user)); SUPP_Save(slot);
SAMF(-1, ""adminInfo"AdminInfo: %s %s je postavio suportera(%d) %s igracu, slot: %d.", playerStatus(playerid), GetName(playerid), sta, user, slot);
format(string, sizeof(string), "Suporter: %s | Igrac: %s | Postavljen suporter %d", GetName(playerid), GetName(GetPlayerId(user)), sta);
LogPostavljanja(string);
new jarmed11;
new jarmed22;
new jarmed33;
new jarmed44;
new jarmed55;
new jarmed66;
new jarmed77;
new loginstring;
format(jarmed11,sizeof(jarmed11),""col_zuta"Cestitamo ! {FFFFFF}Dodeljena vam je pozicija SUPORTER LEVEL %d od Vlasnika %s.",sta, GetName(playerid));
format(jarmed22,sizeof(jarmed22),"\nPozicija administratora nosi veliku odgovornost, te vas molimo da se potrudite da ne uprljate ugled servera.");
format(jarmed33,sizeof(jarmed33),"\nSvaku odluku donosite iskljucivo na svoju odgovornost, pa shodno tome budite pazljivi.");
format(jarmed44,sizeof(jarmed44),"\n"col_zuta"Vas SUPPORTER kod je : {FFFFFF}%d",randomkod);
format(jarmed55,sizeof(jarmed55),"\nSuporter kod vam sluzi kao zastita za vas nalog. Pri svakom loginu ukucacete gore upisane brojeve,");
format(jarmed66,sizeof(jarmed66),"\nPa vas tim povodom molimo da kod zapisete, ili zapamtite.");
format(jarmed77,sizeof(jarmed77),"\n\n\t\t\t\t\t"col_zuta"SRECNO ! {FFFFFF}");
format(loginstring,sizeof(loginstring),"%s%s%s%s%s%s%s",jarmed11,jarmed22,jarmed33,jarmed44,jarmed55,jarmed66,jarmed77);
ShowPlayerDialog(GetPlayerId(user), DIALOG_OSTALO, DIALOG_STYLE_MSGBOX,""col_zuta"CESTITAMO",loginstring,"OK","");
return 1;
}
else return GRESKA(playerid, "Na odabranom slotu vec ima neki suporter.");
}
}
else {
if(sta == 0) {
if(!strcmp(SUPPInfo,user,true)) {
SUPPInfo = 0;
SUPPInfo = 0;
SetString(SUPPInfo, "Niko");
SUPPInfo = 0;
SUPPInfo = false;
SUPP_Save(slot);
MYSQL_WriteInt(TABLE_PLAYERS, "Supporter", 0, "ime", user);
MYSQL_WriteInt(TABLE_PLAYERS, "SupporterSlot", 0, "ime", user);
va_SendClientMessage(playerid, -1, ""col_zuta""col_white" Uspesno ste skinuli %s-u suportera.", user);
SAMF(-1, ""adminInfo"AdminInfo: %s %s je skinuo suportera %s(offline) igracu.", playerStatus(playerid), GetName(playerid), user);
format(string, sizeof(string), "Suporter: %s | Igrac: %s | Skinut suporter", GetName(playerid), user);
LogPostavljanja(string);
return 1;
}
else return GRESKA(playerid, "Odabrani suporter nije na odabranom slotu.");
}
else return GRESKA(playerid, "Offline mod mozete koristiti samo za skidanje ( kolicina = 0 ).");
}
}
else return GRESKA(playerid, "Odabrano ime ne postoji na ovom serveru - provjerite sva slova.");
}
}
return 1;
}
CMD:emptysupslot(playerid, params[]) {
if(PlayerInfo < 5) return errorMessage(playerid, 2);
new slot;
if(sscanf(params, "i", slot)) return USAGE(playerid, "/emptysupslot [id slota]");
if(IsPlayerConnected(GetPlayerId(SUPPInfo))) {
PlayerInfo[GetPlayerId(SUPPInfo)] = 0; PlayerInfo[GetPlayerId(SUPPInfo)] = -1;
} else {
MYSQL_WriteInt(TABLE_PLAYERS, "Supporter", 0, "ime", SUPPInfo); MYSQL_WriteInt(TABLE_PLAYERS, "SupporterSlot", -1, "ime", SUPPInfo);
}
SUPPInfo = 0;
SUPPInfo = 0;
SUPPInfo = 0;
SUPPInfo = false;
SetString(SUPPInfo, "Niko");
SUPP_Save(slot);
return 1;
}Neke slike/video za lakse dobivanje pomoci(neobavezno)://
