· 5 years ago · Mar 27, 2020, 08:30 PM
1CreateFileDB()
2{
3 mysql_tquery(getConexao(), "CREATE TABLE IF NOT EXISTS `usuarios`(\
4 `ID` int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,\
5 `Name` varchar(24) NOT NULL,\
6 `Password` varchar(20) NOT NULL,\
7 `Level` int(10) NOT NULL DEFAULT '0',\
8 `Jailed` int(20) NOT NULL DEFAULT '0',\
9 `JailedAdmin` int(20) NOT NULL DEFAULT '0',\
10 `Wanted` int(20) NOT NULL DEFAULT '0',\
11 `Bans` int(20) NOT NULL DEFAULT '0',\
12 `BanTime` int(20) NOT NULL DEFAULT '0',\
13 `GanhouCorridas` int(20) NOT NUL DEFAULT '0',\
14 `TruckerLicense` int(11) NOT NULL DEFAULT '0',\
15 `MafiaLicense` int(11) NOT NULL DEFAULT '0',\
16 `BusLicense` int(20) NOT NUL DEFAULT '0',\
17 `WeaponLicense` int(20) NOT NUL DEFAULT '0',\
18 `TaxiLicense` int(20) NOT NUL DEFAULT '0',\
19 `CarroLicense` int(20) NOT NUL DEFAULT '0',\
20 `LoginDias` int(20) NOT NUL DEFAULT '0',\
21 `LoginMes` int(20) NOT NUL DEFAULT '0',\
22 `LoginAno` int(20) NOT NUL DEFAULT '0',\
23 `StatusAdvogado` int(20) NOT NUL DEFAULT '0',\
24 `Muted` int(20) NOT NUL DEFAULT '0',\
25 `RulesRead` varchar(20) NOT NULL,\
26 `StatsMetersDriven` float(20) NOT NULL DEFAULT 0.0,\
27 `StatsTruckerJobs` int(20) NOT NUL DEFAULT '0',\
28 `StatsConvoyJobs` int(20) NOT NUL DEFAULT '0',\
29 `StatsQuadrilhaJobs` int(20) NOT NUL DEFAULT '0',\
30 `StatsBusDriverJobs` int(20) NOT NUL DEFAULT '0',\
31 `StatsVigilante` int(20) NOT NUL DEFAULT '0',\
32 `StatsTaxiDriverJobs` int(20) NOT NUL DEFAULT '0',\
33 `StatsPilotJobs` int(20) NOT NUL DEFAULT '0',\
34 `StatsMafiaJobs` int(20) NOT NUL DEFAULT '0',\
35 `StatsMafiaStolen` int(20) NOT NUL DEFAULT '0',\
36 `StatsPoliceFined` int(20) NOT NUL DEFAULT '0',\
37 `StatsPoliceJailed` int(20) NOT NUL DEFAULT '0',\
38 `StatsAssistance` int(20) NOT NUL DEFAULT '0',\
39 `StatsCourierJobs` int(20) NOT NUL DEFAULT '0',\
40 `StatsRoadworkerJobs` int(20) NOT NUL DEFAULT '0',\
41 `StatsPizzaJobs` int(20) NOT NUL DEFAULT '0',\
42 `StatsCourierJobs` int(20) NOT NUL DEFAULT '0',\
43 `House0` int(20) NOT NUL DEFAULT '0',\
44 `House1` int(20) NOT NUL DEFAULT '0',\
45 `House2` int(20) NOT NUL DEFAULT '0',\
46 `House3` int(20) NOT NUL DEFAULT '0',\
47 `House4` int(20) NOT NUL DEFAULT '0',\
48 `House5` int(20) NOT NUL DEFAULT '0',\
49 `House6` int(20) NOT NUL DEFAULT '0',\
50 `House7` int(20) NOT NUL DEFAULT '0',\
51 `House8` int(20) NOT NUL DEFAULT '0',\
52 `House9` int(20) NOT NUL DEFAULT '0',\
53 `Business0` int(20) NOT NUL DEFAULT '0',\
54 `Business1` int(20) NOT NUL DEFAULT '0',\
55 `Business2` int(20) NOT NUL DEFAULT '0',\
56 `Business3` int(20) NOT NUL DEFAULT '0',\
57 `Business4` int(20) NOT NUL DEFAULT '0',\
58 `Business5` int(20) NOT NUL DEFAULT '0',\
59 `Money` int(20) NOT NUL DEFAULT '0',\
60 `Score` int(20) NOT NUL DEFAULT '0',\
61 `Sexo` int(20) NOT NULL\
62 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;");
63}
64
65
66CreatePlayerFileDB(playerid)
67{
68 new Query[500*2], name[MAX_PLAYER_NAME], rows = mysql_num_rows();;
69 GetPlayerName(playerid, name, MAX_PLAYER_NAME+2);
70 mysql_format(getConexao(), Query, sizeof(Query), "SELECT * FROM `usuarios` where `Name` = '%s'", name);
71 mysql_query(getConexao());
72
73 if(rows == 0) {
74 new muted[12], read[12], teste[50];
75 if(APlayerData[playerid][Muted] == true) { format(muted, 12, "Yes"); } else { format(muted, 12, "No"); }
76 if(APlayerData[playerid][RulesRead] == true) { format(read, 12, "Yes"); } else { format(read, 12, "No"); }
77 mysql_format(getConexao(), Query, sizeof(Query), "INSERT INTO `usuarios` VALUES('NULL', '%s', '%s', '%d', '%d', '%d', '%d', '%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d', '%s','%s', '%s', '%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d', '%d');",
78 name, APlayerData[playerid][PlayerPassword], APlayerData[playerid][PlayerLevel], APlayerData[playerid][PlayerJailed], APlayerData[playerid][JailedByAdmin], GetPlayerWantedLevel(playerid), APlayerData[playerid][Bans], APlayerData[playerid][BanTime], APlayerData[playerid][GanhouCorridas], APlayerData[playerid][TruckerLicense], APlayerData[playerid][MafiaLicense], APlayerData[playerid][BusLicense],
79 APlayerData[playerid][WeaponLicense], APlayerData[playerid][TaxiLicense], APlayerData[playerid][CarroLicense], APlayerData[playerid][LoginDias], APlayerData[playerid][LoginMes], APlayerData[playerid][LoginAno], APlayerData[playerid][StatusAdvogado], muted, read, APlayerData[playerid][StatsMetersDriven], APlayerData[playerid][StatsTruckerJobs],
80 APlayerData[playerid][StatsConvoyJobs], APlayerData[playerid][StatsQuadrilhaJobs], APlayerData[playerid][StatsBusDriverJobs], APlayerData[playerid][StatsVigilante], APlayerData[playerid][StatsTaxiDriverJobs], APlayerData[playerid][StatsPilotJobs], APlayerData[playerid][StatsMafiaJobs], APlayerData[playerid][StatsMafiaStolen],
81 APlayerData[playerid][StatsPoliceFined],APlayerData[playerid][StatsPoliceJailed], APlayerData[playerid][StatsAssistance], APlayerData[playerid][StatsCourierJobs], APlayerData[playerid][StatsRoadworkerJobs], APlayerData[playerid][StatsPizzaJobs], APlayerData[playerid][Houses][0], APlayerData[playerid][Houses][1],
82 APlayerData[playerid][Houses][2], APlayerData[playerid][Houses][3], APlayerData[playerid][Houses][4], APlayerData[playerid][Houses][5], APlayerData[playerid][Houses][6], APlayerData[playerid][Houses][7], APlayerData[playerid][Houses][8], APlayerData[playerid][Houses][9], APlayerData[playerid][Business][0],
83 APlayerData[playerid][Business][1], APlayerData[playerid][Business][2], APlayerData[playerid][Business][3], APlayerData[playerid][Business][4], APlayerData[playerid][Business][5], APlayerData[playerid][PlayerMoney], APlayerData[playerid][PlayerScore], APlayerData[playerid][Sexo]);
84 mysql_query(Query);
85 SendClientMessage(playerid, -1, "Um novo registro {FF6600}My{3300FF}SQL {FFFFFF}foi criado com sucesso!");
86 format(teste, sizeof(teste), "DEBUG: User: %s", name);
87 SendClientMessage(playerid, -1, teste);
88 }
89 return true;
90}
91
92PlayerFile_LoadDB(playerid)
93{
94 new Query[500*2], rows = mysql_num_rows, name[MAX_PLAYER_NAME], wantedlevel, muted[12], rules[12], metersdriven[12], result;
95 GetPlayerName(playerid, name, MAX_PLAYER_NAME+2);
96 mysql_format(getConexao(), Query, sizeof(Query), "SELECT * FROM `usuarios` where `Name` = '%s'", name);
97 mysql_query(getConexao());
98
99 if(rows > 0)
100 {
101 new player;
102 sscanf(Query,"p<|>ds[24]s[50]ddddddddddddddddds[12]s[12]fdddddddddddddddddddddddddddddddddd",
103 player,
104 APlayerData[playerid][PlayerName], APlayerData[playerid][PlayerPassword], APlayerData[playerid][PlayerLevel], APlayerData[playerid][PlayerJailed], APlayerData[playerid][JailedByAdmin], wantedlevel,
105 APlayerData[playerid][Bans], APlayerData[playerid][BanTime],0 APlayerData[playerid][GanhouCorridas], APlayerData[playerid][TruckerLicense], APlayerData[playerid][MafiaLicense], APlayerData[playerid][BusLicense], APlayerData[playerid][WeaponLicense],
106 APlayerData[playerid][TaxiLicense],APlayerData[playerid][CarroLicense], APlayerData[playerid][LoginDias],APlayerData[playerid][LoginMes], APlayerData[playerid][LoginAno],APlayerData[playerid][StatusAdvogado],muted,
107 rulesread,metersdriven,APlayerData[playerid][StatsTruckerJobs],APlayerData[playerid][StatsConvoyJobs],APlayerData[playerid][StatsQuadrilhaJobs],APlayerData[playerid][StatsBusDriverJobs], APlayerData[playerid][StatsVigilante],
108 APlayerData[playerid][StatsTaxiDriverJobs], APlayerData[playerid][StatsPilotJobs],APlayerData[playerid][StatsMafiaJobs],APlayerData[playerid][StatsMafiaStolen],APlayerData[playerid][StatsPoliceFined],APlayerData[playerid][StatsPoliceJailed],
109 APlayerData[playerid][StatsAssistance],APlayerData[playerid][StatsCourierJobs],APlayerData[playerid][StatsRoadworkerJobs],APlayerData[playerid][StatsPizzaJobs], APlayerData[playerid][Houses][0],APlayerData[playerid][Houses][1], APlayerData[playerid][Houses][2],
110 APlayerData[playerid][Houses][3],APlayerData[playerid][Houses][4],APlayerData[playerid][Houses][5],APlayerData[playerid][Houses][6],APlayerData[playerid][Houses][7],APlayerData[playerid][Houses][8],APlayerData[playerid][Houses][9],
111 APlayerData[playerid][Business][0],APlayerData[playerid][Business][1],APlayerData[playerid][Business][2],APlayerData[playerid][Business][3],APlayerData[playerid][Business][4],APlayerData[playerid][Business][5],APlayerData[playerid][PlayerMoney],APlayerData[playerid][PlayerScore],APlayerData[playerid][Sexo]);
112
113 printf("Dados do player %d foram carregados corretamente!", player);
114
115 //////////////////////Files Applications//////////////////////
116
117 // Wanted Level
118 SetPlayerWantedLevel(playerid, wantedlevel);
119
120 // Muted
121 if(strcmp(muted, "Yes", false) == 0) { APlayerData[playerid][Muted] = true; } else { APlayerData[playerid][Muted] = false; }
122 // Rules Read
123 if(strcmp(muted, "Yes", false) == 0) { APlayerData[playerid][RulesRead] = true; } else { APlayerData[playerid][RulesRead] = false; }
124 //Money & score
125 SetPlayerScore(playerid, APlayerData[playerid][PlayerScore]);
126 GivePlayerMoney(playerid, APlayerData[playerid][PlayerMoney]);
127 //Meters driven
128 APlayerData[playerid][StatsMetersDriven] = floatstr(metersdriven);
129 result = 1;
130 }
131 else {
132 result = 0;
133 }
134 return result;
135}
136
137PlayerFile_Save(playerid)
138{
139 new name[MAX_PLAYER_NAME], muted[12], rulesread[12];
140 GetPlayerName(playerid, name, MAX_PLAYER_NAME+2);
141
142 //Mted
143 if (APlayerData[playerid][Muted] == true) { format(muted, 12, "Yes"); } else { format(muted, 12, "No"); }
144 //rules read
145 if(APlayerData[playerid][RulesRead] == true) { format(rulesread, 12, "Yes"); } else { format(rulesread, 12, "No"); }
146
147 //parte 1
148 new querylist[2000];
149 format(querylist, 2000,"UPDATE `usuarios` SET `Nome` = '%s', `Password` = '%s', `Level` = '%d', `Jailed` = '%d', `JailedByAdmin` = %d,`Wanted` = '%d', `Bans` = '%d', `Bantime` = '%d', `GanhouCorridas` = '%d', `TruckerLicense` = '%d', `MafiaLicense` = '%d', `BusLicense` = '%d', `WeaponLicense` = '%d',",
150 APlayerData[playerid][PlayerName],APlayerData[playerid][PlayerPassword],APlayerData[playerid][PlayerLevel],APlayerData[playerid][PlayerJailed],APlayerData[playerid][JailedByAdmin],PlayerWantedLevel[playerid],
151 APlayerData[playerid][Bans],APlayerData[playerid][BanTime],APlayerData[playerid][GanhouCorridas],APlayerData[playerid][TruckerLicense],APlayerData[playerid][MafiaLicense],APlayerData[playerid][BusLicense],
152 APlayerData[playerid][WeaponLicense]);
153
154 //parte 2
155 format(querylist, 2000, "%s `TaxiLicense` = '%d', `CarroLicense` = '%d', `LoginDias` = '%d',`LoginMes` = '%d', `LoginAno` = '%d', `StatusAdvogado` = '%d', `Muted` = '%s', `RulesRead` = '%s', `StatsMetersDriven` = '%f', `StatsTruckerJobs` = '%d', `StatsConvoyJobs` = '%d', `StatsQuadrilhaJobs` = '%d', `StatsBusDriverJobs` = '%d', `StatsVigilante` = '%d', `StatsTaxiDriverJobs` = '%d',",
156 querylist,APlayerData[playerid][TaxiLicense],APlayerData[playerid][CarroLicense],APlayerData[playerid][LoginDias],APlayerData[playerid][LoginMes],APlayerData[playerid][LoginAno],
157 APlayerData[playerid][StatusAdvogado],
158 muted,rulesread,APlayerData[playerid][StatsMetersDriven],APlayerData[playerid][StatsTruckerJobs],APlayerData[playerid][StatsConvoyJobs],APlayerData[playerid][StatsQuadrilhaJobs],
159 APlayerData[playerid][StatsBusDriverJobs],APlayerData[playerid][StatsVigilante],APlayerData[playerid][StatsTaxiDriverJobs]);
160
161 //parte 3
162 format(querylist, 2000, "%s `StatsPilotJobs` = '%d', `StatsMafiaJobs` = '%d', `StatsMafiaStolen` = '%d', `StatsPoliceFined` = '%d', `StatsPoliceJailed` = '%d', `StatsAssistance` = '%d', `StatsCourierJobs` = '%d', `StatsRoadworkerJobs` = '%d', `StatsPizzaJobs` = '%d', `House_1` = '%d', `House_2` = '%d', `House_3` = '%d', `House_4` = '%d', `House_5` = '%d',",
163 querylist,APlayerData[playerid][StatsPilotJobs],APlayerData[playerid][StatsMafiaJobs],APlayerData[playerid][StatsMafiaStolen],APlayerData[playerid][StatsPoliceFined],APlayerData[playerid][StatsPoliceJailed],APlayerData[playerid][StatsAssistance],
164 APlayerData[playerid][StatsCourierJobs],APlayerData[playerid][StatsRoadworkerJobs],APlayerData[playerid][StatsPizzaJobs],APlayerData[playerid][Houses][0],APlayerData[playerid][Houses][1],APlayerData[playerid][Houses][2],APlayerData[playerid][Houses][3],APlayerData[playerid][Houses][4]);
165 //parte 4
166 format(querylist, 2000, "%s `House_6` = '%d', `House_7` = '%d', `House_8` = '%d', `House_9` = '%d', `House_10` = '%d', `Business_1` = '%d', `Business_2` = '%d', `Business_3` = '%d', `Business_4` = '%d', `Business_5` = '%d', `Business_6` = '%d', `money` = '%d', `score` = '%d', `Sexo` = '%d' WHERE `Name` = '%s';",
167 querylist,APlayerData[playerid][Houses][5],APlayerData[playerid][Houses][6],APlayerData[playerid][Houses][7],APlayerData[playerid][Houses][8],APlayerData[playerid][Houses][9], APlayerData[playerid][Business][0],APlayerData[playerid][Business][1],
168 APlayerData[playerid][Business][2],APlayerData[playerid][Business][3],APlayerData[playerid][Business][4],APlayerData[playerid][Business][5],APlayerData[playerid][PlayerMoney],GetPlayerScore(playerid),APlayerData[playerid][Sexo], name);
169
170 mysql_query(querylist);
171
172
173
174 for (new i; i < MAX_HOUSESPERPLAYER; i++)
175 {
176 if (APlayerData[playerid][Houses][i] != 0)
177 {
178 HouseFile_Save(APlayerData[playerid][Houses][i]);
179 }
180 }
181
182 for (new i; i < MAX_BUSINESSPERPLAYER; i++)
183 {
184 if (APlayerData[playerid][Business][i] != 0)
185 {
186 BusinessFile_Save(APlayerData[playerid][Business][i]);
187 }
188 }
189
190 printf("Dados do player %s foram salvos corretamente", GetPlayerNameEx(playerid));
191 return true;
192}