//Started 1st July 6:20 PM by [HiC]TheKiller
//___________________________________________
//Build 1.5 10/10/2011
//This requires G-sTyLeZzZ MySQL plugin.
//This script also requires sscanf2 by *****, thanks *****!
//I'm using DCMD instead of ZCMD ;).
//Includes
#include <a_samp>
#include <a_mysql> //https://sampforum.blast.hk/showthread.php?tid=56564
#include <sscanf2> //https://sampforum.blast.hk/showthread.php?tid=120356
#include <foreach> //https://sampforum.blast.hk/showthread.php?tid=92679
#include <zcmd> //https://sampforum.blast.hk/showthread.php?tid=91354
native WP_Hash(buffer[], len, const str[]);
//Configure the following variables
#define SQL_HOST "localhost"
#define SQL_USER "root"
#define SQL_PASS ""
#define SQL_DB "sa-mp"
#define DIALOG_REPORTS 1000
#define DIALOG_MUTES 1500
#define DIALOG_ADMINS 2000
#define DIALOG_KICK 2500
#define DIALOG_BAN 3000
#define DIALOG_BANNED 3500
//===============================
//Macro's
#define mysql_fetch_row(%1) mysql_fetch_row_format(%1,"|")
#define GetAdminLevel(%1) GetPVarInt(%1, "AdminLevel")
#define SendErrorMessage(%1,%2) SendClientMessage(%1,0xFF0000AA,%2)
#define levelerror(%1) if(GetAdminLevel(playerid)<%1) return SendErrorMessage(playerid, "Youre admin level is too low to use this command!")
#define stringempty(%1) format(%1,sizeof(%1), "")
//===============================
//Global Vars
new Query[500];
new line[750];
new Pname[24];
new PIP[18];
new escpass[100];
new string[200];
new estring[200];
new largestring[400];
new plid;
new Float:posxx[3];
//Temporary strings
new reports[5][100];
new reportnumber;
public OnFilterScriptInit()
{
new
buf[129];
WP_Hash(buf, sizeof (buf), "The quick brown fox jumps over the lazy dog");
for(new x = 0; x < 3; x++)
{
if(!mysql_connect(SQL_HOST, SQL_USER, SQL_DB, SQL_PASS)) printf("MySQL connection attempt %d failed!", x);
else break;
}
mysql_debug(1);
return 1;
}
public OnFilterScriptExit()
{
mysql_close();
return 1;
}
public OnPlayerConnect(playerid)
{
bancheck(playerid);
GetPlayerIp(playerid, PIP, 18);
format(Query, sizeof(Query), "SELECT * FROM `playerinfo` WHERE `user` = '%s' LIMIT 1", escpname(playerid), PIP);
mysql_query(Query);
mysql_store_result();
if(mysql_num_rows() != 0)
{
new PIP2[18];
mysql_fetch_field_row(PIP2, "IP");
if(!strcmp(PIP, PIP2, true) && strlen(PIP2) != 0)
{
SetPVarInt(playerid, "Logged", 1);
SendClientMessage(playerid, 0x009600AA, "Auto Logged in!");
if(mysql_fetch_row(line))
{
new data[3][55];
new data2[5];
sscanf(line, "p<|>s[50]s[300]dddds[50]ds[100]", data[0], largestring, data2[0], data2[1], data2[2], data2[3], data[2], data2[4], estring);
stringempty(estring);
stringempty(largestring);
SetPVarInt(playerid, "Kills", data2[0]);
SetPVarInt(playerid, "Logged", 1);
SetPVarInt(playerid, "Deaths", data2[1]);
SetPlayerScore(playerid, data2[2]);
GivePlayerMoney(playerid, data2[3]);
SetPVarInt(playerid, "AdminLevel", data2[4]);
mysql_free_result();
}
}
else
{
SendClientMessage(playerid, 0x009600AA, "This account is registered, please login");
ShowPlayerDialog(playerid, 15000, DIALOG_STYLE_INPUT , "Login", "This account is registered, please login", "OK", "Cancel");
}
}
else
{
ShowPlayerDialog(playerid, 14600, DIALOG_STYLE_INPUT , "Register", "This account is not registered, please register!", "OK", "Cancel");
SendClientMessage(playerid, 0x009600AA, "This account is not registered, please register!");
}
mysql_free_result();
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 14600)
{
if(response)
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid, 14600, DIALOG_STYLE_INPUT , "Register", "This account is not registered, please register!", "OK", "Cancel");
SendClientMessage(playerid, 0xF60000AA, "Please enter a password");
}
mysql_real_escape_string(inputtext, escpass);
WP_Hash(largestring, sizeof(largestring), escpass);
GetPlayerIp(playerid, PIP, 50);
format(Query, sizeof(Query), "INSERT INTO `playerinfo` (`user`, `password`, `kills`, `deaths`, `score`, `money`, `IP`, `adminlvl`) VALUES ('%s', '%s', 0, 0, 0, 0, '%s', 0)", escpname(playerid), largestring, PIP);
mysql_query(Query);
GameTextForPlayer(playerid, "~g~Registered", 2000, 3);
SendClientMessage(playerid, 0x0000D9AA, "Registered and Logged into your account!");
SetPVarInt(playerid, "Logged", 1);
}
}
if(dialogid == 15000)
{
if(response)
{
WP_Hash(largestring, sizeof(largestring), inputtext);
format(Query, sizeof(Query), "SELECT * FROM `playerinfo` WHERE `user` = '%s' AND `password` = '%s' LIMIT 1", escpname(playerid), largestring);
mysql_query(Query);
mysql_store_result();
new rows = mysql_num_rows();
if(!rows)
{
SendClientMessage(playerid, 0xF60000AA, "Invalid password!");
SetPVarInt(playerid, "WrongPass", GetPVarInt(playerid, "WrongPass") + 1);
ShowPlayerDialog(playerid, 15000, DIALOG_STYLE_INPUT , "Login", "This account is registered, please login", "OK", "Cancel");
if(GetPVarInt(playerid, "WrongPass") == 3)
{
SendClientMessage(playerid, 0xF60000AA, "Max password tries exceeded!!");
Kick(playerid);
}
mysql_free_result();
}
else if(rows > 0)
{
if(mysql_fetch_row(line))
{
new data[3][55];
new data2[5];
sscanf(line, "p<|>s[50]s[300]dddds[50]ds[100]", data[0], largestring, data2[0], data2[1], data2[2], data2[3], data[2], data2[4], estring);
stringempty(estring);
stringempty(largestring);
SetPVarInt(playerid, "Kills", data2[0]);
SetPVarInt(playerid, "Logged", 1);
SetPVarInt(playerid, "Deaths", data2[1]);
SetPlayerScore(playerid, data2[2]);
GivePlayerMoney(playerid, data2[3]);
SetPVarInt(playerid, "AdminLevel", data2[4]);
SendClientMessage(playerid, 0x0000D9AA, "Logged in!");
mysql_free_result();
GetPlayerIp(playerid, PIP, 18);
format(Query, sizeof(Query), "UPDATE `playerinfo` SET IP = '%s' WHERE user='%s'", PIP, escpname(playerid));
mysql_query(Query);
}
}
}
}
return 1;
}
public OnPlayerRequestSpawn(playerid)
{
if(GetPVarInt(playerid, "Logged") == 0)
{
format(Query, sizeof(Query), "SELECT `user` FROM `playerinfo` WHERE `user` = '%s' LIMIT 1" , escpname(playerid));
mysql_query(Query);
mysql_store_result();
if(!mysql_num_rows()) ShowPlayerDialog(playerid, 14600, DIALOG_STYLE_INPUT , "Register", "This account is not registered, please register!", "OK", "Cancel");
else ShowPlayerDialog(playerid, 15000, DIALOG_STYLE_INPUT , "Login", "This account is registered, please login", "OK", "Cancel");
return 0;
}
return 1;
}
public OnPlayerSpawn(playerid)
{
if(GetPVarInt(playerid, "Logged") == 1 && GetPVarInt(playerid, "MoneyGiven") > 0)
{
GivePlayerMoney(playerid, GetPVarInt(playerid, "MoneyGiven"));
SetPVarInt(playerid, "MoneyGiven", 0);
}
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
SetPVarInt(playerid, "Deaths", GetPVarInt(playerid, "Deaths") + 1);
if(killerid != INVALID_PLAYER_ID) SetPVarInt(playerid, "Kills", GetPVarInt(playerid, "Kills") + 1);
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
if(GetPVarInt(playerid, "Logged") == 1)
{
format(Query, sizeof(Query), "UPDATE `playerinfo` SET `score` = '%d',`money` = '%d', `kills` = '%d', `deaths` = '%d' WHERE `user` = '%s'", GetPlayerScore(playerid), GetPlayerMoney(playerid), GetPVarInt(playerid, "Kills"), GetPVarInt(playerid, "Deaths"), escpname(playerid));
mysql_query(Query);
}
return 1;
}
CMD:admins(playerid, params[])
{
new count;
foreach(Player, i)
{
if(!PlayerAdmin(i)) continue;
count++;
if(strlen(largestring) != 0) format(largestring, sizeof(largestring), "%s \r\n%s(%d) - Level (%d)", largestring, PlayerName(i), i, GetAdminLevel(i));
else format(largestring, sizeof(largestring), "%s(%d) - Level (%d)", PlayerName(i), i, GetAdminLevel(i));
}
if(count == 0) return SendClientMessage(playerid, 0xFF0000, "No admins online!");
else ShowPlayerDialog(playerid, DIALOG_ADMINS, DIALOG_STYLE_MSGBOX, "Admins", largestring, "Ok", "Cancel");
stringempty(largestring);
return 1;
}
CMD:makeadmin(playerid, params[])
{
if(GetPVarInt(playerid, "AdminLevel") == 5) return SendErrorMessage(playerid, "You are already max level!");
format(Query, sizeof(Query), "UPDATE `playerinfo` SET `adminlvl` = 5 WHERE `user` = '%s'", escpname(playerid));
mysql_query(Query);
mysql_free_result();
SetPVarInt(playerid, "AdminLevel", 5);
SendClientMessage(playerid, 0xCC00FF, "You have set {CC00FF}yourself{FFFFFF} to level 5 admin");
return 1;
}
CMD:score(playerid, params[])
{
SetPlayerScore(playerid, 10000);
GivePlayerMoney(playerid, 1000000);
return 1;
}
CMD:reports(playerid, params[])
{
levelerror(1);
if(!strlen(reports[0])) return SendClientMessage(playerid, 0xFF0000AA, "There have been no reports");
for(new x; x<5; x++)
{
if(strlen(reports[x]) != 0)
{
format(largestring, sizeof(largestring), "%s \r\n%s", largestring, reports[x][7]);
}
}
ShowPlayerDialog(playerid, DIALOG_REPORTS, DIALOG_STYLE_MSGBOX, "Last five reported Players", largestring, "Ok", "Cancel");
stringempty(largestring);
return 1;
}
CMD:muted(playerid, params[])
{
levelerror(1);
foreach(Player, i)
{
if(GetPVarInt(i, "Muted") == 1)
plid++;
format(largestring, sizeof(largestring), "%s \r\n %s(%d)", largestring, PlayerName(i), i);
}
if(plid == 0) return SendErrorMessage(playerid, "Nobody is currently muted!");
else ShowPlayerDialog(playerid, DIALOG_MUTES, DIALOG_STYLE_MSGBOX, "Muted Players", largestring, "Ok", "Cancel");
stringempty(largestring);
return 1;
}
CMD:acmds(playerid, params[])
{
levelerror(1);
if(GetAdminLevel(playerid) == 1) SendClientMessage(playerid, 0xCC00FF, "Level 1: {FFFFFF} /reports, /muted, /acmds, admin chat (#)");
if(GetAdminLevel(playerid) == 2)
{
SendClientMessage(playerid, 0xCC00FF, "Level 1: {FFFFFF} /reports, /muted, /acmds, admin chat (#)");
SendClientMessage(playerid, 0xCC00FF, "Level 2: {FFFFFF} /ip, /akill, /slap, /mute, /unmute");
}
if(GetAdminLevel(playerid) == 3)
{
SendClientMessage(playerid, 0xCC00FF, "Level 1: {FFFFFF} /reports, /muted, /acmds, admin chat (#)");
SendClientMessage(playerid, 0xCC00FF, "Level 2: {FFFFFF} /ip, /akill, /slap, /mute, /unmute");
SendClientMessage(playerid, 0xCC00FF, "Level 3: {FFFFFF} /explode, /goto, /freeze, /unfreeze, /vkill, /kick");
}
if(GetAdminLevel(playerid) == 4)
{
SendClientMessage(playerid, 0xCC00FF, "Level 1: {FFFFFF} /reports, /muted, /acmds, admin chat (#)");
SendClientMessage(playerid, 0xCC00FF, "Level 2: {FFFFFF} /ip, /akill, /slap, /mute, /unmute");
SendClientMessage(playerid, 0xCC00FF, "Level 3: {FFFFFF} /explode, /goto, /freeze, /unfreeze, /vkill, /kick");
SendClientMessage(playerid, 0xCC00FF, "Level 4: {FFFFFF} /get, /ban, /unban");
}
if(GetAdminLevel(playerid) == 5)
{
SendClientMessage(playerid, 0xCC00FF, "Level 1: {FFFFFF} /reports, /muted, /acmds, admin chat (#)");
SendClientMessage(playerid, 0xCC00FF, "Level 2: {FFFFFF} /ip, /akill, /slap, /mute, /unmute");
SendClientMessage(playerid, 0xCC00FF, "Level 3: {FFFFFF} /explode, /goto, /freeze, /unfreeze, /vkill, /kick");
SendClientMessage(playerid, 0xCC00FF, "Level 4: {FFFFFF} /get, /ban, /unban");
SendClientMessage(playerid, 0xCC00FF, "Level 5: {FFFFFF} /setlevel");
}
return 1;
}
public OnPlayerText(playerid, text[])
{
if(PlayerAdmin(playerid) && text[0] == '#')
{
format(string, sizeof(string), "%s(%d): %s", PlayerName(playerid), playerid, text[1]);
SendMessageToAllAdmins(string, 0xCC00FF);
return 0;
}
if(GetPVarInt(playerid, "muted") == 1)
{
SendErrorMessage(playerid, "You are muted, you cannot talk.");
return 0;
}
return 1;
}
CMD:changepass(playerid, params[])
{
if (!strlen(params)) return SendErrorMessage(playerid, "Usage: /changepass <password>");
if (GetPVarInt(playerid, "Logged") != 1) return SendErrorMessage(playerid, "You are not logged in!");
if (strlen(params) > 99) return SendErrorMessage(playerid, "Password must be between 1 - 100 characters!");
WP_Hash(largestring, sizeof(largestring), params);
format(Query, sizeof(Query), "UPDATE `playerinfo` SET `password` = '%s' WHERE `user` = '%s'", largestring , escpname(playerid));
mysql_query(Query);
mysql_free_result();
SendClientMessage(playerid, 0xFFFFFF, "Password has been saved!");
return 1;
}
CMD:setlevel(playerid, params[])
{
new Level;
levelerror(5);
if(sscanf(params, "ud", plid, Level)) return SendErrorMessage(playerid, "Usage: /setlevel <id> <level>");
if (Level < 0 || Level > 5) return SendErrorMessage(playerid, "Admin levels are between 1 - 5");
format(Query, sizeof(Query), "UPDATE `playerinfo` SET `adminlvl` = %d WHERE `user` = '%s'", Level, escpname(plid));
mysql_query(Query);
mysql_free_result();
format(string, sizeof(string), "You have set {FF00AA}%s(%d){FFFFFF} admin level to %d", PlayerName(plid), plid, Level);
SendClientMessage(playerid, 0xFFFFFF, string);
if(GetPVarInt(plid, "AdminLevel") < Level) format(string, sizeof(string), "You have been {CC00FF}promoted{FFFFFF} to level %d admin by admin %s(%d)", Level, PlayerName(playerid), playerid);
if(GetPVarInt(plid, "AdminLevel") > Level) format(string, sizeof(string), "You have been {FF00AA}demoted{FFFFFF} to level %d admin by admin %s(%d)", Level, PlayerName(playerid), playerid);
SendClientMessage(plid, 0xFFFFFF, string);
SetPVarInt(plid, "AdminLevel", Level);
return 1;
}
CMD:setemail(playerid, params[])
{
if (!strlen(params)) return SendErrorMessage(playerid, "Usage: /setemail <email>");
if (GetPVarInt(playerid, "Logged") != 1) return SendErrorMessage(playerid, "You are not logged in!");
if (strlen(params) > 149 || strlen(params) < 5) return SendErrorMessage(playerid, "Email must be between 5 - 150 characters!");
format(Query, sizeof(Query), "UPDATE `playerinfo` SET `email` = '%s' WHERE `user` = '%s'", escstring(params) , escpname(playerid));
mysql_query(Query);
mysql_free_result();
SendClientMessage(playerid, 0xFFFFFF, "Email has been saved!");
return 1;
}
CMD:ip(playerid, params[])
{
levelerror(2);
if (!strlen(params)) return SendErrorMessage(playerid, "Usage: /ip <id>");
plid = strval(params);
if (!IsPlayerConnected(plid)) return SendErrorMessage(playerid, "Player Not Connected!");
GetPlayerIp(plid, PIP, sizeof(PIP));
format(string, sizeof(string), "IP of %s: {FFFFFF}%s", PlayerName(plid), PIP);
SendClientMessage(playerid, 0x66FF33, string);
return 1;
}
CMD:akill(playerid, params[])
{
levelerror(2);
if (!strlen(params)) return SendErrorMessage(playerid, "Usage: /kill <id>");
plid = strval(params);
if (!IsPlayerConnected(plid)) return SendErrorMessage(playerid, "Player Not Connected!");
SetPlayerHealth(plid, 0);
format(string, sizeof(string), "You have been killed by admin {FFFFFF}%s(%d)", PlayerName(playerid), playerid);
SendErrorMessage(plid, string);
format(string, sizeof(string), "You have killed {FFFFFF}%s(%d)", PlayerName(plid), plid);
SendClientMessage(playerid, 0x66FF33, string);
return 1;
}
CMD:vkill(playerid, params[])
{
levelerror(3);
if (!strlen(params)) return SendErrorMessage(playerid, "Usage: /vkill <vid>");
plid = strval(params);
format(string, sizeof(string), "You have destroyed vehicle ID {FFFFFF}%d", plid);
SendClientMessage(playerid, 0x66FF33, string);
DestroyVehicle(plid);
return 1;
}
CMD:explode(playerid, params[])
{
levelerror(3);
if (!strlen(params)) return SendErrorMessage(playerid, "Usage: /explode <id>");
plid = strval(params);
if (!IsPlayerConnected(plid)) return SendErrorMessage(playerid, "Player Not Connected!");
format(string, sizeof(string), "You have exploded {FFFFFF}%s(%d)", PlayerName(plid), plid);
SendClientMessage(playerid, 0x66FF33, string);
GetPlayerPos(plid, posxx[0], posxx[1], posxx[2]);
CreateExplosion(posxx[0], posxx[1], posxx[2], 1, 2);
return 1;
}
CMD:slap(playerid, params[])
{
levelerror(2);
if (!strlen(params)) return SendErrorMessage(playerid, "Usage: /slap <id>");
plid = strval(params);
if (!IsPlayerConnected(plid)) return SendErrorMessage(playerid, "Player Not Connected!");
format(string, sizeof(string), "You have slapped {FFFFFF}%s(%d)", PlayerName(plid), plid);
SendClientMessage(playerid, 0x66FF33, string);
GetPlayerPos(plid, posxx[0], posxx[1], posxx[2]);
SetPlayerPos(plid, posxx[0], posxx[1], posxx[2]+40);
return 1;
}
CMD:goto(playerid, params[])
{
levelerror(3);
if (!strlen(params)) return SendErrorMessage(playerid, "Usage: /goto <id>");
plid = strval(params);
if (!IsPlayerConnected(plid)) return SendErrorMessage(playerid, "Player Not Connected!");
format(string, sizeof(string), "You have teleported to {FFFFFF}%s(%d)", PlayerName(plid), plid);
SendClientMessage(playerid, 0x66FF33, string);
SendPlayerToAnother(playerid, plid);
return 1;
}
CMD:get(playerid, params[])
{
levelerror(4);
if (!strlen(params)) return SendErrorMessage(playerid, "Usage: /get <id>");
plid = strval(params);
if (!IsPlayerConnected(plid)) return SendErrorMessage(playerid, "Player Not Connected!");
format(string, sizeof(string), "You have teleported {FFFFFF}%s(%d){66FF33} to you", PlayerName(plid), plid);
SendClientMessage(playerid, 0x66FF33, string);
format(string, sizeof(string), "You have been teleported to {FFFFFF}%s(%d)", PlayerName(playerid), playerid);
SendPlayerToAnother(plid, playerid);
return 1;
}
CMD:kick(playerid, params[])
{
levelerror(3);
if(sscanf(params, "us[200]", plid, estring)) return SendErrorMessage(playerid, "Usage: /kick <id> <reason>");
if (!IsPlayerConnected(plid)) return SendErrorMessage(playerid, "Player Not Connected!");
format(string, sizeof(string), "You have kicked {FFFFFF}%s(%d)", PlayerName(plid), plid);
SendClientMessage(playerid, 0x66FF33, string);
format(largestring, sizeof(largestring), "You have been kicked from the server by admin %s(%d) \r\nReason:%s", escpname(playerid), playerid, estring);
ShowPlayerDialog(plid, DIALOG_KICK, DIALOG_STYLE_MSGBOX, "You have been kicked", largestring, "Ok", "Cancel");
Kick(plid);
return 1;
}
CMD:freeze(playerid, params[])
{
levelerror(3);
if (!strlen(params)) return SendErrorMessage(playerid, "Usage: /freeze <id>");
plid = strval(params);
if (!IsPlayerConnected(plid)) return SendErrorMessage(playerid, "Player Not Connected!");
format(string, sizeof(string), "You have frozen {FFFFFF}%s(%d)", PlayerName(plid), plid);
SendClientMessage(playerid, 0x66FF33, string);
format(string, sizeof(string), "You have been frozen by admin %s(%d)", PlayerName(playerid), playerid);
SendErrorMessage(plid, string);
TogglePlayerControllable(plid, false);
return 1;
}
CMD:unfreeze(playerid, params[])
{
levelerror(3);
if (!strlen(params)) return SendErrorMessage(playerid, "Usage: /unfreeze <id>");
plid = strval(params);
if (!IsPlayerConnected(plid)) return SendErrorMessage(playerid, "Player Not Connected!");
format(string, sizeof(string), "You have unfrozen {FFFFFF}%s(%d)", PlayerName(plid), plid);
SendClientMessage(playerid, 0x66FF33, string);
format(string, sizeof(string), "You have been unfrozen by {FFFFFF}admin %s(%d)", PlayerName(playerid), playerid);
SendClientMessage(plid, 0x66FF33, string);
TogglePlayerControllable(plid, true);
return 1;
}
CMD:ban(playerid, params[])
{
levelerror(4);
if (sscanf(params, "us[200]", plid, estring)) return SendErrorMessage(playerid, "Usage: /ban <id> <reason>");
if (!IsPlayerConnected(plid)) return SendErrorMessage(playerid, "Player Not Connected!");
format(string, sizeof(string), "You have banned {FFFFFF}%s(%d)", PlayerName(plid), plid);
SendClientMessage(playerid, 0x66FF33, string);
format(largestring, sizeof(largestring), "Admin %s banned you from the server\r\nReason:%s", PlayerName(playerid), estring);
ShowPlayerDialog(plid, DIALOG_KICK, DIALOG_STYLE_MSGBOX, "You have been banned", largestring, "Ok", "Cancel");
GetPlayerIp(plid, PIP, 50);
new Hour, Minute, Second, Year, Month, Day;
gettime(Hour, Minute, Second);
getdate(Year, Month, Day);
format(string, sizeof(string), "%02d:%02d:%02d on %02d/%02d/%d", Hour, Minute, Second, Day, Month, Year);
format(Query, sizeof(Query), "INSERT INTO `banlog` (`time`, `name`, `ip`, `reason`, `admin`, `banned`) VALUES ('%s', '%s', '%s', '%s', '%s', 1)", string, escpname(plid), PIP, escstring(estring), escpname(playerid));
mysql_query(Query);
mysql_free_result();
Kick(plid);
return 1;
}
CMD:unban(playerid, params[])
{
levelerror(4);
if (!strlen(params)) return SendErrorMessage(playerid, "Usage: /unban <name>");
format(Query, sizeof(Query), "SELECT `name` FROM `banlog` WHERE name = '%s' AND banned = 1 LIMIT 1", escstring(params));
mysql_query(Query);
mysql_store_result();
if(!mysql_num_rows())
{
format(string, sizeof(string), "Nobody under the name of %s is banned!", params);
mysql_free_result();
return SendErrorMessage(playerid, string);
}
else if(mysql_num_rows() != 0)
{
format(Query, sizeof(Query), "UPDATE `banlog` SET `banned` = 0 WHERE name = '%s'", escstring(params));
mysql_query(Query);
mysql_store_result();
format(string, sizeof(string), "%s has been unbanned!", params);
SendClientMessage(playerid, 0x66FF33, string);
}
return 1;
}
CMD:mute(playerid, params[])
{
levelerror(2);
if (!strlen(params)) return SendErrorMessage(playerid, "Usage: /mute <id>");
plid = strval(params);
if (!IsPlayerConnected(plid)) return SendErrorMessage(playerid, "Player Not Connected!");
if (GetPVarInt(playerid, "muted") == 1) return SendErrorMessage(playerid, "Player is already muted");
if (plid == playerid) return SendErrorMessage(playerid, "You cannot mute yourself");
SetPVarInt(plid, "muted", 1);
format(string, sizeof(string), "You have muted player %s(%d)", PlayerName(plid), plid);
SendClientMessage(playerid, 0x66FF33, string);
format(string, sizeof(string), "Admin %s(%d) has {FF00AA}muted {FFFFFF}you", PlayerName(playerid), playerid);
SendClientMessage(plid, 0xFFFFFF, string);
return 1;
}
CMD:unmute(playerid, params[])
{
levelerror(2);
if (!strlen(params)) return SendErrorMessage(playerid, "Usage: /unmute <id>");
plid = strval(params);
if (!IsPlayerConnected(plid)) return SendErrorMessage(playerid, "Player Not Connected!");
if (GetPVarInt(plid, "muted") == 0) return SendErrorMessage(playerid, "Player isn't muted");
SetPVarInt(plid, "muted", 0);
format(string, sizeof(string), "You have unmuted player %s(%d)", PlayerName(plid), plid);
SendClientMessage(playerid, 0x66FF33, string);
format(string, sizeof(string), "Admin %s(%d) has {00FF33}unmuted {FFFFFF}you", PlayerName(playerid), playerid);
SendClientMessage(plid, 0xFFFFFF, string);
return 1;
}
CMD:report(playerid, params[])
{
if (sscanf(params, "us[200]", plid, estring)) return SendClientMessage(playerid, 0xFF0000AA, "Usage: /report <playerid> <reason>");
if (!IsPlayerConnected(plid)) return SendClientMessage(playerid, 0xFF0000AA, "The player you have tried to report is not connected!");
if (plid == playerid) return SendClientMessage(playerid, 0xFF0000AA, "You cannot report yourself!");
format(string, sizeof(string), "REPORT: %s(%d) has reported %s(%d) for %s", PlayerName(playerid), playerid, PlayerName(plid), plid, estring);
SendMessageToAllAdmins(string, 0xFF0000AA);
SendClientMessage(playerid, 0x99FF66, "Your report has been sent.");
if(reportnumber != 5)
{
format(reports[reportnumber], 100, "%s", string);
reportnumber++;
return 1;
}
if(reportnumber == 5)
{
reportnumber = 0;
format(reports[reportnumber], 100, "%s", string);
reportnumber ++;
}
return 1;
}
stock escpname(playerid)
{
new escname[24];
GetPlayerName(playerid, Pname, 24);
mysql_real_escape_string(Pname, escname);
return escname;
}
stock escstring(stri[])
{
new escstr[200];
mysql_real_escape_string(stri, escstr);
return escstr;
}
stock PlayerName(pid)
{
GetPlayerName(pid, Pname, 24);
return Pname;
}
stock SendMessageToAllAdmins(message[], color)
{
foreach(Player, i)
{
if(PlayerAdmin(i))
{
SendClientMessage(i, color, message);
}
}
return 1;
}
stock SendPlayerToAnother(sendingplayer, receivingplayer)
{
GetPlayerPos(receivingplayer, posxx[0], posxx[1], posxx[2]);
SetPlayerPos(sendingplayer, posxx[0], posxx[1]+2, posxx[2]);
SetPlayerVirtualWorld(sendingplayer, GetPlayerVirtualWorld(receivingplayer));
SetPlayerInterior(sendingplayer, GetPlayerInterior(receivingplayer));
return 1;
}
stock bancheck(playerid)
{
GetPlayerIp(playerid, PIP, sizeof(PIP));
format(Query, sizeof(Query), "SELECT * FROM `banlog` WHERE (`name` = '%s' OR `ip` = '%s') AND `banned` = 1 LIMIT 1", escpname(playerid), PIP);
mysql_query(Query);
mysql_store_result();
if(mysql_num_rows() != 0)
{
new Name2[24];
while(mysql_fetch_row(Query))
{
mysql_fetch_field_row(string, "reason");
mysql_fetch_field_row(Pname, "admin");
mysql_fetch_field_row(estring, "time");
mysql_fetch_field_row(PIP, "ip");
mysql_fetch_field_row(Name2, "name");
}
format(largestring, sizeof(largestring), "You are currently banned from this server. \r\nUser:%s \r\nIP:%s \r\nTime:%s \r\nAdmin:%s\r\nReason:%s", Name2, PIP, estring, Pname, string);
ShowPlayerDialog(plid, DIALOG_BANNED, DIALOG_STYLE_MSGBOX, "You are banned from this server", largestring, "Ok", "Cancel");
Kick(playerid);
}
mysql_free_result();
return 1;
}
stock PlayerAdmin(pid)
{
if( GetPVarInt(pid, "AdminLevel" ) > 0) return 1;
return 0;
}
echo Executing Server Config... lanmode 0 rcon_password maxplayers 500 port 7777 hostname Julius95's Server gamemode0 grandlarc 1 filterscripts gl_realtime knpc tkadmin plugins irc sscanf mysql whirlpool crashdetect announce 1 query 1 weburl julius95.yolasite.com onfoot_rate 40 incar_rate 40 weapon_rate 40 stream_distance 300.0 stream_rate 1000 maxnpc 200 logtimeformat [%H:%M:%S]
//----------------------------------------------------------
//
// GRAND LARCENY 1.0
// A freeroam gamemode for SA-MP 0.3
//
//----------------------------------------------------------
#include <a_samp>
#include <core>
#include <float>
#include "../include/gl_common.inc"
#include "../include/gl_spawns.inc"
#pragma tabsize 0
//----------------------------------------------------------
#define COLOR_WHITE 0xFFFFFFFF
#define COLOR_NORMAL_PLAYER 0xFFBB7777
#define CITY_LOS_SANTOS 0
#define CITY_SAN_FIERRO 1
#define CITY_LAS_VENTURAS 2
new total_vehicles_from_files=0;
// Class selection globals
new gPlayerCitySelection[MAX_PLAYERS];
new gPlayerHasCitySelected[MAX_PLAYERS];
new gPlayerLastCitySelectionTick[MAX_PLAYERS];
new Text:txtClassSelHelper;
new Text:txtLosSantos;
new Text:txtSanFierro;
new Text:txtLasVenturas;
new thisanimid=0;
new lastanimid=0;
//----------------------------------------------------------
main()
{
print("\n---------------------------------------");
print("Running Grand Larceny - by the SA-MP team\n");
print("---------------------------------------\n");
}
//----------------------------------------------------------
public OnPlayerConnect(playerid)
{
GameTextForPlayer(playerid,"~w~Grand Larceny",3000,4);
SendClientMessage(playerid,COLOR_WHITE,"Welcome to {88AA88}G{FFFFFF}rand {88AA88}L{FFFFFF}arceny");
// class selection init vars
gPlayerCitySelection[playerid] = -1;
gPlayerHasCitySelected[playerid] = 0;
gPlayerLastCitySelectionTick[playerid] = GetTickCount();
//SetPlayerColor(playerid,COLOR_NORMAL_PLAYER);
//Kick(playerid);
/*
Removes vending machines
RemoveBuildingForPlayer(playerid, 1302, 0.0, 0.0, 0.0, 6000.0);
RemoveBuildingForPlayer(playerid, 1209, 0.0, 0.0, 0.0, 6000.0);
RemoveBuildingForPlayer(playerid, 955, 0.0, 0.0, 0.0, 6000.0);
RemoveBuildingForPlayer(playerid, 1775, 0.0, 0.0, 0.0, 6000.0);
RemoveBuildingForPlayer(playerid, 1776, 0.0, 0.0, 0.0, 6000.0);
*/
/*
new ClientVersion[32];
GetPlayerVersion(playerid, ClientVersion, 32);
printf("Player %d reports client version: %s", playerid, ClientVersion);*/
return 1;
}
//----------------------------------------------------------
public OnPlayerSpawn(playerid)
{
if(IsPlayerNPC(playerid)) return 1;
new randSpawn = 0;
SetPlayerInterior(playerid,0);
TogglePlayerClock(playerid,0);
ResetPlayerMoney(playerid);
GivePlayerMoney(playerid, 30000);
if(CITY_LOS_SANTOS == gPlayerCitySelection[playerid]) {
randSpawn = random(sizeof(gRandomSpawns_LosSantos));
SetPlayerPos(playerid,
gRandomSpawns_LosSantos[randSpawn][0],
gRandomSpawns_LosSantos[randSpawn][1],
gRandomSpawns_LosSantos[randSpawn][2]);
SetPlayerFacingAngle(playerid,gRandomSpawns_LosSantos[randSpawn][3]);
}
else if(CITY_SAN_FIERRO == gPlayerCitySelection[playerid]) {
randSpawn = random(sizeof(gRandomSpawns_SanFierro));
SetPlayerPos(playerid,
gRandomSpawns_SanFierro[randSpawn][0],
gRandomSpawns_SanFierro[randSpawn][1],
gRandomSpawns_SanFierro[randSpawn][2]);
SetPlayerFacingAngle(playerid,gRandomSpawns_SanFierro[randSpawn][3]);
}
else if(CITY_LAS_VENTURAS == gPlayerCitySelection[playerid]) {
randSpawn = random(sizeof(gRandomSpawns_LasVenturas));
SetPlayerPos(playerid,
gRandomSpawns_LasVenturas[randSpawn][0],
gRandomSpawns_LasVenturas[randSpawn][1],
gRandomSpawns_LasVenturas[randSpawn][2]);
SetPlayerFacingAngle(playerid,gRandomSpawns_LasVenturas[randSpawn][3]);
}
//SetPlayerColor(playerid,COLOR_NORMAL_PLAYER);
SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL_SILENCED,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_DESERT_EAGLE,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_SHOTGUN,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_SAWNOFF_SHOTGUN,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_SPAS12_SHOTGUN,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_MICRO_UZI,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_MP5,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_AK47,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_M4,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_SNIPERRIFLE,200);
GivePlayerWeapon(playerid,WEAPON_COLT45,100);
//GivePlayerWeapon(playerid,WEAPON_MP5,100);
TogglePlayerClock(playerid, 0);
return 1;
}
//----------------------------------------------------------
public OnPlayerDeath(playerid, killerid, reason)
{
new playercash;
// if they ever return to class selection make them city
// select again first
gPlayerHasCitySelected[playerid] = 0;
if(killerid == INVALID_PLAYER_ID) {
ResetPlayerMoney(playerid);
} else {
playercash = GetPlayerMoney(playerid);
if(playercash > 0) {
GivePlayerMoney(killerid, playercash);
ResetPlayerMoney(playerid);
}
}
return 1;
}
//----------------------------------------------------------
ClassSel_SetupCharSelection(playerid)
{
if(gPlayerCitySelection[playerid] == CITY_LOS_SANTOS) {
SetPlayerInterior(playerid,11);
SetPlayerPos(playerid,508.7362,-87.4335,998.9609);
SetPlayerFacingAngle(playerid,0.0);
SetPlayerCameraPos(playerid,508.7362,-83.4335,998.9609);
SetPlayerCameraLookAt(playerid,508.7362,-87.4335,998.9609);
}
else if(gPlayerCitySelection[playerid] == CITY_SAN_FIERRO) {
SetPlayerInterior(playerid,3);
SetPlayerPos(playerid,-2673.8381,1399.7424,918.3516);
SetPlayerFacingAngle(playerid,181.0);
SetPlayerCameraPos(playerid,-2673.2776,1394.3859,918.3516);
SetPlayerCameraLookAt(playerid,-2673.8381,1399.7424,918.3516);
}
else if(gPlayerCitySelection[playerid] == CITY_LAS_VENTURAS) {
SetPlayerInterior(playerid,3);
SetPlayerPos(playerid,349.0453,193.2271,1014.1797);
SetPlayerFacingAngle(playerid,286.25);
SetPlayerCameraPos(playerid,352.9164,194.5702,1014.1875);
SetPlayerCameraLookAt(playerid,349.0453,193.2271,1014.1797);
}
}
//----------------------------------------------------------
// Used to init textdraws of city names
ClassSel_InitCityNameText(Text:txtInit)
{
TextDrawUseBox(txtInit, 0);
TextDrawLetterSize(txtInit,1.25,3.0);
TextDrawFont(txtInit, 0);
TextDrawSetShadow(txtInit,0);
TextDrawSetOutline(txtInit,1);
TextDrawColor(txtInit,0xEEEEEEFF);
TextDrawBackgroundColor(txtClassSelHelper,0x000000FF);
}
//----------------------------------------------------------
ClassSel_InitTextDraws()
{
// Init our observer helper text display
txtLosSantos = TextDrawCreate(10.0, 380.0, "Los Santos");
ClassSel_InitCityNameText(txtLosSantos);
txtSanFierro = TextDrawCreate(10.0, 380.0, "San Fierro");
ClassSel_InitCityNameText(txtSanFierro);
txtLasVenturas = TextDrawCreate(10.0, 380.0, "Las Venturas");
ClassSel_InitCityNameText(txtLasVenturas);
// Init our observer helper text display
txtClassSelHelper = TextDrawCreate(10.0, 415.0,
" Press ~b~~k~~GO_LEFT~ ~w~or ~b~~k~~GO_RIGHT~ ~w~to switch cities.~n~ Press ~r~~k~~PED_FIREWEAPON~ ~w~to select.");
TextDrawUseBox(txtClassSelHelper, 1);
TextDrawBoxColor(txtClassSelHelper,0x222222BB);
TextDrawLetterSize(txtClassSelHelper,0.3,1.0);
TextDrawTextSize(txtClassSelHelper,400.0,40.0);
TextDrawFont(txtClassSelHelper, 2);
TextDrawSetShadow(txtClassSelHelper,0);
TextDrawSetOutline(txtClassSelHelper,1);
TextDrawBackgroundColor(txtClassSelHelper,0x000000FF);
TextDrawColor(txtClassSelHelper,0xFFFFFFFF);
}
//----------------------------------------------------------
ClassSel_SetupSelectedCity(playerid)
{
if(gPlayerCitySelection[playerid] == -1) {
gPlayerCitySelection[playerid] = CITY_LOS_SANTOS;
}
if(gPlayerCitySelection[playerid] == CITY_LOS_SANTOS) {
SetPlayerInterior(playerid,0);
SetPlayerCameraPos(playerid,1630.6136,-2286.0298,110.0);
SetPlayerCameraLookAt(playerid,1887.6034,-1682.1442,47.6167);
TextDrawShowForPlayer(playerid,txtLosSantos);
TextDrawHideForPlayer(playerid,txtSanFierro);
TextDrawHideForPlayer(playerid,txtLasVenturas);
}
else if(gPlayerCitySelection[playerid] == CITY_SAN_FIERRO) {
SetPlayerInterior(playerid,0);
SetPlayerCameraPos(playerid,-1300.8754,68.0546,129.4823);
SetPlayerCameraLookAt(playerid,-1817.9412,769.3878,132.6589);
TextDrawHideForPlayer(playerid,txtLosSantos);
TextDrawShowForPlayer(playerid,txtSanFierro);
TextDrawHideForPlayer(playerid,txtLasVenturas);
}
else if(gPlayerCitySelection[playerid] == CITY_LAS_VENTURAS) {
SetPlayerInterior(playerid,0);
SetPlayerCameraPos(playerid,1310.6155,1675.9182,110.7390);
SetPlayerCameraLookAt(playerid,2285.2944,1919.3756,68.2275);
TextDrawHideForPlayer(playerid,txtLosSantos);
TextDrawHideForPlayer(playerid,txtSanFierro);
TextDrawShowForPlayer(playerid,txtLasVenturas);
}
}
//----------------------------------------------------------
ClassSel_SwitchToNextCity(playerid)
{
gPlayerCitySelection[playerid]++;
if(gPlayerCitySelection[playerid] > CITY_LAS_VENTURAS) {
gPlayerCitySelection[playerid] = CITY_LOS_SANTOS;
}
PlayerPlaySound(playerid,1052,0.0,0.0,0.0);
gPlayerLastCitySelectionTick[playerid] = GetTickCount();
ClassSel_SetupSelectedCity(playerid);
}
//----------------------------------------------------------
ClassSel_SwitchToPreviousCity(playerid)
{
gPlayerCitySelection[playerid]--;
if(gPlayerCitySelection[playerid] < CITY_LOS_SANTOS) {
gPlayerCitySelection[playerid] = CITY_LAS_VENTURAS;
}
PlayerPlaySound(playerid,1053,0.0,0.0,0.0);
gPlayerLastCitySelectionTick[playerid] = GetTickCount();
ClassSel_SetupSelectedCity(playerid);
}
//----------------------------------------------------------
ClassSel_HandleCitySelection(playerid)
{
new Keys,ud,lr;
GetPlayerKeys(playerid,Keys,ud,lr);
if(gPlayerCitySelection[playerid] == -1) {
ClassSel_SwitchToNextCity(playerid);
return;
}
// only allow new selection every ~500 ms
if( (GetTickCount() - gPlayerLastCitySelectionTick[playerid]) < 500 ) return;
if(Keys & KEY_FIRE) {
gPlayerHasCitySelected[playerid] = 1;
TextDrawHideForPlayer(playerid,txtClassSelHelper);
TextDrawHideForPlayer(playerid,txtLosSantos);
TextDrawHideForPlayer(playerid,txtSanFierro);
TextDrawHideForPlayer(playerid,txtLasVenturas);
TogglePlayerSpectating(playerid,0);
return;
}
if(lr > 0) {
ClassSel_SwitchToNextCity(playerid);
}
else if(lr < 0) {
ClassSel_SwitchToPreviousCity(playerid);
}
}
//----------------------------------------------------------
public OnPlayerRequestClass(playerid, classid)
{
if(IsPlayerNPC(playerid)) return 1;
if(gPlayerHasCitySelected[playerid]) {
ClassSel_SetupCharSelection(playerid);
return 1;
} else {
if(GetPlayerState(playerid) != PLAYER_STATE_SPECTATING) {
TogglePlayerSpectating(playerid,1);
TextDrawShowForPlayer(playerid, txtClassSelHelper);
gPlayerCitySelection[playerid] = -1;
}
}
return 0;
}
//----------------------------------------------------------
public OnGameModeInit()
{
SetGameModeText("Grand Larceny");
ShowPlayerMarkers(PLAYER_MARKERS_MODE_GLOBAL);
ShowNameTags(1);
SetNameTagDrawDistance(40.0);
EnableStuntBonusForAll(0);
DisableInteriorEnterExits();
SetWeather(2);
SetWorldTime(11);
//UsePlayerPedAnims();
//ManualVehicleEngineAndLights();
//LimitGlobalChatRadius(300.0);
ClassSel_InitTextDraws();
// Player Class
AddPlayerClass(281,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(282,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(283,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(284,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(285,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(286,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(287,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(288,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(289,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(265,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(266,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(267,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(268,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(269,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(270,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(1,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(2,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(3,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(4,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(5,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(6,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(8,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(42,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(65,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
//AddPlayerClass(74,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(86,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(119,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(149,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(208,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(273,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(289,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(47,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(48,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(49,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(50,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(51,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(52,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(53,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(54,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(55,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(56,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(57,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(58,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(68,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(69,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(70,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(71,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(72,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(73,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(75,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(76,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(78,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(79,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(80,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(81,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(82,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(83,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(84,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(85,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(87,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(88,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(89,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(91,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(92,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(93,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(95,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(96,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(97,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(98,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(99,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
// SPECIAL
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/trains.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/pilots.txt");
// LAS VENTURAS
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_law.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_airport.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_gen.txt");
// SAN FIERRO
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_law.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_airport.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_gen.txt");
// LOS SANTOS
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_law.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_airport.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_gen_inner.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_gen_outer.txt");
// OTHER AREAS
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/whetstone.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/bone.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/flint.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/tierra.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/red_county.txt");
printf("Total vehicles from files: %d",total_vehicles_from_files);
return 1;
}
//----------------------------------------------------------
public OnPlayerUpdate(playerid)
{
if(!IsPlayerConnected(playerid)) return 0;
if(IsPlayerNPC(playerid)) return 1;
// changing cities by inputs
if( !gPlayerHasCitySelected[playerid] &&
GetPlayerState(playerid) == PLAYER_STATE_SPECTATING ) {
ClassSel_HandleCitySelection(playerid);
return 1;
}
// No weapons in interiors
if(GetPlayerInterior(playerid) != 0 && GetPlayerWeapon(playerid) != 0) {
SetPlayerArmedWeapon(playerid,0); // fists
return 0; // no syncing until they change their weapon
}
// Don't allow minigun
if(GetPlayerWeapon(playerid) == WEAPON_MINIGUN) {
Kick(playerid);
return 0;
}
/* No jetpacks allowed
if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_USEJETPACK) {
Kick(playerid);
return 0;
}*/
/* For testing animations
new msg[128+1];
new animlib[32+1];
new animname[32+1];
thisanimid = GetPlayerAnimationIndex(playerid);
if(lastanimid != thisanimid)
{
GetAnimationName(thisanimid,animlib,32,animname,32);
format(msg, 128, "anim(%d,%d): %s %s", lastanimid, thisanimid, animlib, animname);
lastanimid = thisanimid;
SendClientMessage(playerid, 0xFFFFFFFF, msg);
}*/
return 1;
}
//----------------------------------------------------------
---------- ---------- Loaded log file: "server_log.txt". ---------- SA-MP Dedicated Server ---------------------- v0.3x, ©2005-2013 SA-MP Team [08:27:10] [08:27:10] Server Plugins [08:27:10] -------------- [08:27:10] Loading plugin: irc [08:27:10] *** IRC Plugin v1.4.2 by Incognito loaded *** [08:27:10] Loaded. [08:27:10] Loading plugin: sscanf [08:27:10] [08:27:10] =============================== [08:27:10] sscanf plugin loaded. [08:27:10] © 2009 Alex "******" Cole [08:27:10] =============================== [08:27:10] Loaded. [08:27:10] Loading plugin: mysql [08:27:10] > MySQL plugin R6-2 successfully loaded. [08:27:10] Loaded. [08:27:10] Loading plugin: whirlpool [08:27:10] [08:27:10] ================== [08:27:10] [08:27:10] Whirlpool loaded [08:27:10] [08:27:10] ================== [08:27:10] [08:27:10] Loaded. [08:27:10] Loading plugin: crashdetect [08:27:10] crashdetect v4.8.5 is OK. [08:27:10] Loaded. [08:27:10] Loaded 5 plugins. [08:27:10] [08:27:10] Ban list [08:27:10] -------- [08:27:10] Loaded: samp.ban [08:27:10] [08:27:10] [08:27:10] Filterscripts [08:27:10] --------------- [08:27:10] Loading filterscript 'tkadmin.amx'... [08:27:31] Loaded 1 filterscripts. [08:27:31] Loaded 3 vehicles from: vehicles/trains.txt [08:27:31] Loaded 3 vehicles from: vehicles/pilots.txt [08:27:31] Loaded 15 vehicles from: vehicles/lv_law.txt [08:27:31] Loaded 39 vehicles from: vehicles/lv_airport.txt [08:27:32] Loaded 255 vehicles from: vehicles/lv_gen.txt [08:27:32] Loaded 38 vehicles from: vehicles/sf_law.txt [08:27:32] Loaded 35 vehicles from: vehicles/sf_airport.txt [08:27:32] Loaded 353 vehicles from: vehicles/sf_gen.txt [08:27:32] Loaded 24 vehicles from: vehicles/ls_law.txt [08:27:32] Loaded 37 vehicles from: vehicles/ls_airport.txt [08:27:32] Loaded 98 vehicles from: vehicles/ls_gen_inner.txt [08:27:32] Loaded 389 vehicles from: vehicles/ls_gen_outer.txt [08:27:32] Loaded 71 vehicles from: vehicles/whetstone.txt [08:27:32] Loaded 168 vehicles from: vehicles/bone.txt [08:27:32] Loaded 61 vehicles from: vehicles/flint.txt [08:27:32] Loaded 96 vehicles from: vehicles/tierra.txt [08:27:32] Loaded 96 vehicles from: vehicles/red_county.txt [08:27:32] Total vehicles from files: 1781 [08:27:32] --------------------------------------- [08:27:32] Running Grand Larceny - by the SA-MP team [08:27:32] --------------------------------------- [08:27:32] Number of vehicle models: 173 [08:27:57] Incoming connection: 192.168.1.65:53890 [08:28:41] Incoming connection: 192.168.1.65:53892 [08:28:41] [join] [ATM]Julius95 has joined the server (0:192.168.1.65) [08:28:41] [debug] Server crashed while executing tkadmin.amx [08:28:41] [debug] AMX backtrace: [08:28:41] [debug] #0 native mysql_real_escape_string () [01e96af0] from mysql.DLL [08:28:41] [debug] #1 0000751c in ?? () from tkadmin.amx [08:28:41] [debug] #2 000078d0 in ?? () from tkadmin.amx [08:28:41] [debug] #3 00001270 in public Itter_OnPlayerConnect () from tkadmin.amx [08:28:41] [debug] #4 native CallLocalFunction () [00471e90] from samp-server.exe [08:28:41] [debug] #5 0000017c in public OnPlayerConnect () from tkadmin.amx [08:28:41] [debug] System backtrace: [08:28:42] [debug] #0 75414951 in ?? () from C:\Windows\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6161_none_50934f2ebcb7eb57\MSVCR90.dll [08:28:42] [debug] #1 75414996 in ?? () from C:\Windows\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6161_none_50934f2ebcb7eb57\MSVCR90.dll [08:28:42] [debug] #2 01e95b71 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\mysql.DLL [08:28:42] [debug] #3 01e95d7d in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\mysql.DLL [08:28:42] [debug] #4 01e98bd8 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\mysql.DLL [08:28:42] [debug] #5 01e96bd6 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\mysql.DLL [08:28:42] [debug] #6 004010b6 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe [08:28:42] [debug] #7 6dc539e2 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [08:28:42] [debug] #8 6dc55e26 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [08:28:42] [debug] #9 6dc4bf3f in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [08:28:42] [debug] #10 6dc53a0e in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [08:28:42] [debug] #11 0047219e in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe [08:28:42] [debug] #12 004010b6 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe [08:28:42] [debug] #13 6dc539e2 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [08:28:42] [debug] #14 6dc55e26 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [08:28:42] [debug] #15 6dc4bf3f in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [08:28:42] [debug] #16 6dc53a0e in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [08:28:42] [debug] #17 0046a25f in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe [08:28:42] [debug] #18 00465dbd in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe
-------------------------- SA-MP Server: 0.3x Exception At Address: 0x75431BB0 Module: (MSVCR90.dll) Registers: EAX: 0x74DF9E9A EBX: 0x022FD4C6 ECX: 0x7FFFFFFE EDX: 0x00000073 ESI: 0x00000000 EDI: 0x74DF9E9A EBP: 0x0018CAD0 ESP: 0x0018C84C EFLAGS: 0x00010202 Stack: +0000: 0x00762A90 0x00000000 0x00000000 0x00000109 +0010: 0x00000000 0x00000000 0x00000007 0x02F87FE0 +0020: 0x02F80000 0x02F89FE0 0x02DE09E0 0x02F81970 +0030: 0x02F807D0 0x00000001 0x0018CAF4 0x00000000 +0040: 0x00000000 0x00000000 0x022FD4C6 0x00000000 +0050: 0x00000000 0x00000000 0x3F43C2BD 0x0000001C +0060: 0x0018CC88 0x00000000 0x74DF9E9A 0xFFFFFFFF +0070: 0x73000109 0x00000000 0x00000180 0x02F8307C +0080: 0x00000001 0x000001FF 0x75415B00 0x02F82FE8 +0090: 0x00000380 0x02F87FE8 0x00000040 0x00000400 +00A0: 0x6ED718FC 0x00000201 0x00000000 0x0018C904 +00B0: 0x75402E2B 0x02F86EA0 0x00000000 0x04000004 +00C0: 0x02DE1D38 0x0018C94C 0x754157B4 0x75477408 +00D0: 0x00000000 0x000007FF 0x0000000C 0x04000400 +00E0: 0x02F800C4 0x00000001 0x0018C920 0x00000002 +00F0: 0x00000008 0x02F87FE8 0x02F87FE8 0x02F87FE3 +0100: 0x00000000 0x00D7CF2B 0x02F80000 0x01D718FC +0110: 0x0018C8A4 0x00762A90 0x77C3FC2A 0x769EBECB +0120: 0x000002B8 0x0018C9A4 0x0018C9AC 0x00000008 +0130: 0x0000000E 0xFFFFFFFF 0x00000003 0x7547D6A0 -------------------------- Loaded Modules: samp-server.exe A: 0x00400000 - 0x004F5000 (C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe) ntdll.dll A: 0x77C20000 - 0x77DA0000 (C:\Windows\SysWOW64\ntdll.dll) kernel32.dll A: 0x77710000 - 0x77820000 (C:\Windows\syswow64\kernel32.dll) KERNELBASE.dll A: 0x769E0000 - 0x76A26000 (C:\Windows\syswow64\KERNELBASE.dll) SHELL32.dll A: 0x76AC0000 - 0x7770A000 (C:\Windows\syswow64\SHELL32.dll) msvcrt.dll A: 0x76890000 - 0x7693C000 (C:\Windows\syswow64\msvcrt.dll) SHLWAPI.dll A: 0x757E0000 - 0x75837000 (C:\Windows\syswow64\SHLWAPI.dll) GDI32.dll A: 0x765D0000 - 0x76660000 (C:\Windows\syswow64\GDI32.dll) USER32.dll A: 0x764D0000 - 0x765D0000 (C:\Windows\syswow64\USER32.dll) ADVAPI32.dll A: 0x76340000 - 0x763E0000 (C:\Windows\syswow64\ADVAPI32.dll) sechost.dll A: 0x75A70000 - 0x75A89000 (C:\Windows\SysWOW64\sechost.dll) RPCRT4.dll A: 0x75A90000 - 0x75B80000 (C:\Windows\syswow64\RPCRT4.dll) SspiCli.dll A: 0x75780000 - 0x757E0000 (C:\Windows\syswow64\SspiCli.dll) CRYPTBASE.dll A: 0x75770000 - 0x7577C000 (C:\Windows\syswow64\CRYPTBASE.dll) LPK.dll A: 0x76830000 - 0x7683A000 (C:\Windows\syswow64\LPK.dll) USP10.dll A: 0x76940000 - 0x769DD000 (C:\Windows\syswow64\USP10.dll) WSOCK32.dll A: 0x736A0000 - 0x736A7000 (C:\Windows\system32\WSOCK32.dll) WS2_32.dll A: 0x75A30000 - 0x75A65000 (C:\Windows\syswow64\WS2_32.dll) NSI.dll A: 0x77BF0000 - 0x77BF6000 (C:\Windows\syswow64\NSI.dll) WINMM.dll A: 0x736B0000 - 0x736E2000 (C:\Windows\system32\WINMM.dll) IMM32.DLL A: 0x75C00000 - 0x75C60000 (C:\Windows\system32\IMM32.DLL) MSCTF.dll A: 0x75960000 - 0x75A2C000 (C:\Windows\syswow64\MSCTF.dll) PSAPI.DLL A: 0x75CC0000 - 0x75CC5000 (C:\Windows\syswow64\PSAPI.DLL) irc.DLL A: 0x704B0000 - 0x704F9000 (C:\Users\Julius\Desktop\UltimateStunting\plugins\irc.DLL) MSVCP90.dll A: 0x6ED70000 - 0x6EDFE000 (C:\Windows\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6161_none_50934f2ebcb7eb57\MSVCP90.dll) MSVCR90.dll A: 0x753E0000 - 0x75483000 (C:\Windows\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6161_none_50934f2ebcb7eb57\MSVCR90.dll) sscanf.DLL A: 0x00840000 - 0x0084B000 (C:\Users\Julius\Desktop\UltimateStunting\plugins\sscanf.DLL) mysql.DLL A: 0x022F0000 - 0x02303000 (C:\Users\Julius\Desktop\UltimateStunting\plugins\mysql.DLL) LIBMYSQL.dll A: 0x03090000 - 0x031D1000 (C:\Users\Julius\Desktop\UltimateStunting\LIBMYSQL.dll) NLAapi.dll A: 0x73240000 - 0x73250000 (C:\Windows\system32\NLAapi.dll) napinsp.dll A: 0x73230000 - 0x73240000 (C:\Windows\system32\napinsp.dll) pnrpnsp.dll A: 0x73210000 - 0x73222000 (C:\Windows\system32\pnrpnsp.dll) mswsock.dll A: 0x73E50000 - 0x73E8C000 (C:\Windows\System32\mswsock.dll) DNSAPI.dll A: 0x73C70000 - 0x73CB4000 (C:\Windows\system32\DNSAPI.dll) winrnr.dll A: 0x73200000 - 0x73208000 (C:\Windows\System32\winrnr.dll) mdnsNSP.dll A: 0x6F980000 - 0x6F9A1000 (C:\Program Files (x86)\Bonjour\mdnsNSP.dll) Iphlpapi.DLL A: 0x754E0000 - 0x754FC000 (C:\Windows\system32\Iphlpapi.DLL) WINNSI.DLL A: 0x754D0000 - 0x754D7000 (C:\Windows\system32\WINNSI.DLL) rasadhlp.dll A: 0x73C60000 - 0x73C66000 (C:\Windows\system32\rasadhlp.dll) whirlpool.DLL A: 0x02330000 - 0x0233C000 (C:\Users\Julius\Desktop\UltimateStunting\plugins\whirlpool.DLL) MSVCR80.dll A: 0x73AB0000 - 0x73B4B000 (C:\Windows\WinSxS\x86_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.6195_none_d09154e044272b9a\MSVCR80.dll) wshtcpip.dll A: 0x73D00000 - 0x73D05000 (C:\Windows\System32\wshtcpip.dll) uxtheme.dll A: 0x730B0000 - 0x73130000 (C:\Windows\system32\uxtheme.dll) rpchrome150browserrecordhelper.dll A: 0x6C860000 - 0x6C869000 (C:\ProgramData\Real\RealPlayer\BrowserRecordPlugin\Chrome\Hook\rpchrome150browserrecordhelper.dll) tv_w32.dll A: 0x72B90000 - 0x72BAA000 (C:\Program Files (x86)\TeamViewer\Version8\tv_w32.dll) VERSION.dll A: 0x756A0000 - 0x756A9000 (C:\Windows\system32\VERSION.dll) CRTDLL.dll A: 0x6C240000 - 0x6C267000 (C:\Windows\system32\CRTDLL.dll) COMCTL32.dll A: 0x73B70000 - 0x73BF4000 (C:\Windows\WinSxS\x86_microsoft.windows.common-controls_6595b64144ccf1df_5.82.7601.17514_none_ec83dffa859149af\COMCTL32.dll) PROPSYS.dll A: 0x726D0000 - 0x727C5000 (C:\Windows\system32\PROPSYS.dll) OLEAUT32.dll A: 0x76A30000 - 0x76ABF000 (C:\Windows\syswow64\OLEAUT32.dll) comctl32.dll A: 0x73500000 - 0x7369E000 (C:\Windows\WinSxS\x86_microsoft.windows.common-controls_6595b64144ccf1df_6.0.7601.17514_none_41e6975e2bd6f2b2\comctl32.dll) apphelp.dll A: 0x725C0000 - 0x7260C000 (C:\Windows\system32\apphelp.dll) CLBCatQ.DLL A: 0x76170000 - 0x761F3000 (C:\Windows\syswow64\CLBCatQ.DLL) iertutil.dll A: 0x75E00000 - 0x75FFE000 (C:\Windows\syswow64\iertutil.dll) urlmon.dll A: 0x76200000 - 0x76337000 (C:\Windows\syswow64\urlmon.dll) WININET.dll A: 0x75CD0000 - 0x75DC5000 (C:\Windows\syswow64\WININET.dll) CRYPT32.dll A: 0x75840000 - 0x7595E000 (C:\Windows\syswow64\CRYPT32.dll) MSASN1.dll A: 0x76000000 - 0x7600C000 (C:\Windows\syswow64\MSASN1.dll) SETUPAPI.dll A: 0x76660000 - 0x767FD000 (C:\Windows\syswow64\SETUPAPI.dll) CFGMGR32.dll A: 0x76800000 - 0x76827000 (C:\Windows\syswow64\CFGMGR32.dll) DEVOBJ.dll A: 0x76480000 - 0x76492000 (C:\Windows\syswow64\DEVOBJ.dll) ntmarta.dll A: 0x736F0000 - 0x73711000 (C:\Windows\system32\ntmarta.dll) WLDAP32.dll A: 0x76840000 - 0x76885000 (C:\Windows\syswow64\WLDAP32.dll)
#include <a_samp>
main() {
function1();
}
function1() {
function2();
}
function2() {
new buf[10];
fread(File:123, buf);
}
---------- Loaded log file: "server_log.txt". ---------- SA-MP Dedicated Server ---------------------- v0.3x, ©2005-2013 SA-MP Team [08:27:10] [08:27:10] Server Plugins [08:27:10] -------------- [08:27:10] Loading plugin: irc [08:27:10] *** IRC Plugin v1.4.2 by Incognito loaded *** [08:27:10] Loaded. [08:27:10] Loading plugin: sscanf [08:27:10] [08:27:10] =============================== [08:27:10] sscanf plugin loaded. [08:27:10] © 2009 Alex "******" Cole [08:27:10] =============================== [08:27:10] Loaded. [08:27:10] Loading plugin: mysql [08:27:10] > MySQL plugin R6-2 successfully loaded. [08:27:10] Loaded. [08:27:10] Loading plugin: whirlpool [08:27:10] [08:27:10] ================== [08:27:10] [08:27:10] Whirlpool loaded [08:27:10] [08:27:10] ================== [08:27:10] [08:27:10] Loaded. [08:27:10] Loading plugin: crashdetect [08:27:10] crashdetect v4.8.5 is OK. [08:27:10] Loaded. [08:27:10] Loaded 5 plugins. [08:27:10] [08:27:10] Ban list [08:27:10] -------- [08:27:10] Loaded: samp.ban [08:27:10] [08:27:10] [08:27:10] Filterscripts [08:27:10] --------------- [08:27:10] Loading filterscript 'tkadmin.amx'... [08:27:31] Loaded 1 filterscripts. [08:27:31] Loaded 3 vehicles from: vehicles/trains.txt [08:27:31] Loaded 3 vehicles from: vehicles/pilots.txt [08:27:31] Loaded 15 vehicles from: vehicles/lv_law.txt [08:27:31] Loaded 39 vehicles from: vehicles/lv_airport.txt [08:27:32] Loaded 255 vehicles from: vehicles/lv_gen.txt [08:27:32] Loaded 38 vehicles from: vehicles/sf_law.txt [08:27:32] Loaded 35 vehicles from: vehicles/sf_airport.txt [08:27:32] Loaded 353 vehicles from: vehicles/sf_gen.txt [08:27:32] Loaded 24 vehicles from: vehicles/ls_law.txt [08:27:32] Loaded 37 vehicles from: vehicles/ls_airport.txt [08:27:32] Loaded 98 vehicles from: vehicles/ls_gen_inner.txt [08:27:32] Loaded 389 vehicles from: vehicles/ls_gen_outer.txt [08:27:32] Loaded 71 vehicles from: vehicles/whetstone.txt [08:27:32] Loaded 168 vehicles from: vehicles/bone.txt [08:27:32] Loaded 61 vehicles from: vehicles/flint.txt [08:27:32] Loaded 96 vehicles from: vehicles/tierra.txt [08:27:32] Loaded 96 vehicles from: vehicles/red_county.txt [08:27:32] Total vehicles from files: 1781 [08:27:32] --------------------------------------- [08:27:32] Running Grand Larceny - by the SA-MP team [08:27:32] --------------------------------------- [08:27:32] Number of vehicle models: 173 [08:27:57] Incoming connection: 192.168.1.65:53890 [08:28:41] Incoming connection: 192.168.1.65:53892 [08:28:41] [join] [ATM]Julius95 has joined the server (0:192.168.1.65) [08:28:41] [debug] Server crashed while executing tkadmin.amx [08:28:41] [debug] AMX backtrace: [08:28:41] [debug] #0 native mysql_real_escape_string () [01e96af0] from mysql.DLL [08:28:41] [debug] #1 0000751c in ?? () from tkadmin.amx [08:28:41] [debug] #2 000078d0 in ?? () from tkadmin.amx [08:28:41] [debug] #3 00001270 in public Itter_OnPlayerConnect () from tkadmin.amx [08:28:41] [debug] #4 native CallLocalFunction () [00471e90] from samp-server.exe [08:28:41] [debug] #5 0000017c in public OnPlayerConnect () from tkadmin.amx [08:28:41] [debug] System backtrace: [08:28:42] [debug] #0 75414951 in ?? () from C:\Windows\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6161_none_50934f2ebcb7eb57\MSVCR90.dll [08:28:42] [debug] #1 75414996 in ?? () from C:\Windows\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6161_none_50934f2ebcb7eb57\MSVCR90.dll [08:28:42] [debug] #2 01e95b71 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\mysql.DLL [08:28:42] [debug] #3 01e95d7d in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\mysql.DLL [08:28:42] [debug] #4 01e98bd8 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\mysql.DLL [08:28:42] [debug] #5 01e96bd6 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\mysql.DLL [08:28:42] [debug] #6 004010b6 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe [08:28:42] [debug] #7 6dc539e2 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [08:28:42] [debug] #8 6dc55e26 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [08:28:42] [debug] #9 6dc4bf3f in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [08:28:42] [debug] #10 6dc53a0e in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [08:28:42] [debug] #11 0047219e in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe [08:28:42] [debug] #12 004010b6 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe [08:28:42] [debug] #13 6dc539e2 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [08:28:42] [debug] #14 6dc55e26 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [08:28:42] [debug] #15 6dc4bf3f in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [08:28:42] [debug] #16 6dc53a0e in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [08:28:42] [debug] #17 0046a25f in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe [08:28:42] [debug] #18 00465dbd in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe ---------- Loaded log file: "server_log.txt". ---------- SA-MP Dedicated Server ---------------------- v0.3x, ©2005-2013 SA-MP Team [10:07:40] [10:07:40] Server Plugins [10:07:40] -------------- [10:07:40] Loading plugin: irc [10:07:40] *** IRC Plugin v1.4.2 by Incognito loaded *** [10:07:40] Loaded. [10:07:40] Loading plugin: sscanf [10:07:40] [10:07:40] =============================== [10:07:40] sscanf plugin loaded. [10:07:40] © 2009 Alex "******" Cole [10:07:40] =============================== [10:07:40] Loaded. [10:07:40] Loading plugin: mysql [10:07:40] > MySQL plugin R6-2 successfully loaded. [10:07:40] Loaded. [10:07:40] Loading plugin: whirlpool [10:07:40] [10:07:40] ================== [10:07:40] [10:07:40] Whirlpool loaded [10:07:40] [10:07:40] ================== [10:07:40] [10:07:40] Loaded. [10:07:40] Loading plugin: crashdetect [10:07:40] crashdetect v4.8.5 is OK. [10:07:40] Loaded. [10:07:40] Loaded 5 plugins. [10:07:40] [10:07:40] Ban list [10:07:40] -------- [10:07:40] Loaded: samp.ban [10:07:40] [10:07:40] [10:07:40] Filterscripts [10:07:40] --------------- [10:07:40] Loading filterscript 'tkadmin.amx'... [10:08:01] Loaded 1 filterscripts. [10:08:02] [debug] Server crashed while executing crashdetect.amx [10:08:02] [debug] AMX backtrace: [10:08:02] [debug] #0 native fread () [004057a0] from samp-server.exe [10:08:02] [debug] #1 000000b8 in function2 () at C:\Users\Julius\Desktop\UltimateStunting\gamemodes\crashdetect.pwn:13 [10:08:02] [debug] #2 00000048 in function1 () at C:\Users\Julius\Desktop\UltimateStunting\gamemodes\crashdetect.pwn:8 [10:08:02] [debug] #3 00000024 in main () at C:\Users\Julius\Desktop\UltimateStunting\gamemodes\crashdetect.pwn:4 [10:08:02] [debug] System backtrace: [10:08:02] [debug] #0 00492860 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe [10:08:02] [debug] #1 00492e90 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe [10:08:02] [debug] #2 00404f44 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe [10:08:02] [debug] #3 00405832 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe [10:08:02] [debug] #4 004057e0 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe [10:08:02] [debug] #5 004010b6 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe [10:08:02] [debug] #6 6dc439e2 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [10:08:02] [debug] #7 6dc45e26 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [10:08:02] [debug] #8 6dc3bf3f in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [10:08:02] [debug] #9 6dc43a0e in ?? () from C:\Users\Julius\Desktop\UltimateStunting\plugins\crashdetect.DLL [10:08:02] [debug] #10 0046e1b9 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe [10:08:02] [debug] #11 65646f6d in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe [10:08:02] [debug] #12 72632f73 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe [10:08:02] [debug] #13 64687361 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe [10:08:02] [debug] #14 63657465 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe [10:08:02] [debug] #15 6d612e74 in ?? () from C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe
-------------------------- SA-MP Server: 0.3x Exception At Address: 0x6D612E74 Module: (Unknown) Registers: EAX: 0x0000009F EBX: 0x0000000A ECX: 0x004E25A8 EDX: 0x046DE5AC ESI: 0x0000009F EDI: 0x0000009B EBP: 0x63657465 ESP: 0x004F2428 EFLAGS: 0x00010216 Stack: +0000: 0x00000078 0x00000000 0x00000000 0x00000000 +0010: 0x00000000 0x00000000 0x00000000 0x00000000 +0020: 0x00000000 0x00000000 0x00000000 0x00000000 +0030: 0x00000000 0x00000000 0x00000000 0x00000000 +0040: 0x00000000 0x00000000 0x00000000 0x00000000 +0050: 0x00000000 0x00000000 0x00000000 0x00000000 +0060: 0x00000000 0x00000000 0x00000000 0x00000000 +0070: 0x00000000 0x00000000 0x00000000 0x00000000 +0080: 0x00000000 0x00000000 0x00000000 0x00000000 +0090: 0x00000000 0x00000000 0x00000000 0x00000000 +00A0: 0x00000000 0x00000000 0x00000000 0x00000000 +00B0: 0x00000000 0x00000000 0x00000000 0x00000000 +00C0: 0x00000000 0x00000000 0x00000000 0x00000000 +00D0: 0x00000000 0x00000000 0x00000000 0x00000000 +00E0: 0x00000000 0x00000000 0x00000000 0x4AA58AC2 +00F0: 0x00000000 0x01FFC660 0x00000000 0x00000000 +0100: 0x00000000 0x00000000 0x00000000 0x00000000 +0110: 0x00000000 0x00000000 0x00000000 0x0000003E +0120: 0x00000000 0x00000000 0x00000000 0x00000000 +0130: 0x00000000 0x00000000 0x00000000 0x00000000 -------------------------- Loaded Modules: samp-server.exe A: 0x00400000 - 0x004F5000 (C:\Users\Julius\Desktop\UltimateStunting\samp-server.exe) ntdll.dll A: 0x77C20000 - 0x77DA0000 (C:\Windows\SysWOW64\ntdll.dll) kernel32.dll A: 0x77710000 - 0x77820000 (C:\Windows\syswow64\kernel32.dll) KERNELBASE.dll A: 0x769E0000 - 0x76A26000 (C:\Windows\syswow64\KERNELBASE.dll) SHELL32.dll A: 0x76AC0000 - 0x7770A000 (C:\Windows\syswow64\SHELL32.dll) msvcrt.dll A: 0x76890000 - 0x7693C000 (C:\Windows\syswow64\msvcrt.dll) SHLWAPI.dll A: 0x757E0000 - 0x75837000 (C:\Windows\syswow64\SHLWAPI.dll) GDI32.dll A: 0x765D0000 - 0x76660000 (C:\Windows\syswow64\GDI32.dll) USER32.dll A: 0x764D0000 - 0x765D0000 (C:\Windows\syswow64\USER32.dll) ADVAPI32.dll A: 0x76340000 - 0x763E0000 (C:\Windows\syswow64\ADVAPI32.dll) sechost.dll A: 0x75A70000 - 0x75A89000 (C:\Windows\SysWOW64\sechost.dll) RPCRT4.dll A: 0x75A90000 - 0x75B80000 (C:\Windows\syswow64\RPCRT4.dll) SspiCli.dll A: 0x75780000 - 0x757E0000 (C:\Windows\syswow64\SspiCli.dll) CRYPTBASE.dll A: 0x75770000 - 0x7577C000 (C:\Windows\syswow64\CRYPTBASE.dll) LPK.dll A: 0x76830000 - 0x7683A000 (C:\Windows\syswow64\LPK.dll) USP10.dll A: 0x76940000 - 0x769DD000 (C:\Windows\syswow64\USP10.dll) WSOCK32.dll A: 0x736A0000 - 0x736A7000 (C:\Windows\system32\WSOCK32.dll) WS2_32.dll A: 0x75A30000 - 0x75A65000 (C:\Windows\syswow64\WS2_32.dll) NSI.dll A: 0x77BF0000 - 0x77BF6000 (C:\Windows\syswow64\NSI.dll) WINMM.dll A: 0x736B0000 - 0x736E2000 (C:\Windows\system32\WINMM.dll) IMM32.DLL A: 0x75C00000 - 0x75C60000 (C:\Windows\system32\IMM32.DLL) MSCTF.dll A: 0x75960000 - 0x75A2C000 (C:\Windows\syswow64\MSCTF.dll) PSAPI.DLL A: 0x75CC0000 - 0x75CC5000 (C:\Windows\syswow64\PSAPI.DLL) irc.DLL A: 0x6DAA0000 - 0x6DAE9000 (C:\Users\Julius\Desktop\UltimateStunting\plugins\irc.DLL) MSVCP90.dll A: 0x6ED70000 - 0x6EDFE000 (C:\Windows\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6161_none_50934f2ebcb7eb57\MSVCP90.dll) MSVCR90.dll A: 0x753E0000 - 0x75483000 (C:\Windows\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6161_none_50934f2ebcb7eb57\MSVCR90.dll) sscanf.DLL A: 0x02080000 - 0x0208B000 (C:\Users\Julius\Desktop\UltimateStunting\plugins\sscanf.DLL) mysql.DLL A: 0x02D60000 - 0x02D73000 (C:\Users\Julius\Desktop\UltimateStunting\plugins\mysql.DLL) LIBMYSQL.dll A: 0x02FE0000 - 0x03121000 (C:\Users\Julius\Desktop\UltimateStunting\LIBMYSQL.dll) NLAapi.dll A: 0x73240000 - 0x73250000 (C:\Windows\system32\NLAapi.dll) napinsp.dll A: 0x73230000 - 0x73240000 (C:\Windows\system32\napinsp.dll) pnrpnsp.dll A: 0x73210000 - 0x73222000 (C:\Windows\system32\pnrpnsp.dll) mswsock.dll A: 0x73E50000 - 0x73E8C000 (C:\Windows\System32\mswsock.dll) DNSAPI.dll A: 0x73C70000 - 0x73CB4000 (C:\Windows\system32\DNSAPI.dll) winrnr.dll A: 0x73200000 - 0x73208000 (C:\Windows\System32\winrnr.dll) mdnsNSP.dll A: 0x6F980000 - 0x6F9A1000 (C:\Program Files (x86)\Bonjour\mdnsNSP.dll) Iphlpapi.DLL A: 0x754E0000 - 0x754FC000 (C:\Windows\system32\Iphlpapi.DLL) WINNSI.DLL A: 0x754D0000 - 0x754D7000 (C:\Windows\system32\WINNSI.DLL) rasadhlp.dll A: 0x73C60000 - 0x73C66000 (C:\Windows\system32\rasadhlp.dll) whirlpool.DLL A: 0x02DA0000 - 0x02DAC000 (C:\Users\Julius\Desktop\UltimateStunting\plugins\whirlpool.DLL) MSVCR80.dll A: 0x73AB0000 - 0x73B4B000 (C:\Windows\WinSxS\x86_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.6195_none_d09154e044272b9a\MSVCR80.dll) MSVCP100.dll A: 0x6DA30000 - 0x6DA99000 (C:\Windows\system32\MSVCP100.dll) MSVCR100.dll A: 0x71390000 - 0x7144F000 (C:\Windows\system32\MSVCR100.dll) wshtcpip.dll A: 0x73D00000 - 0x73D05000 (C:\Windows\System32\wshtcpip.dll)
#include <a_samp> main() { function1(); } function1() { function2(); } function2() { new buf[10]; fread(File:123, buf); }
Remove this piece of code from your gamemode (that cause your server to crash)
Код:
#include <a_samp> main() { function1(); } function1() { function2(); } function2() { new buf[10]; fread(File:123, buf); } |
"fread(File:123, buf);"
You are trying to read from a file handle that doesn't exist. |