23.10.2012, 18:23
Ive ******d everywhere and couldnt find a solution...
I get these error messages:
pawno\include\dutils.inc(22) : error 017: undefined symbol "MAX_PLAYERS"
pawno\include\dutils.inc(401) : error 017: undefined symbol "strlen"
pawno\include\dutils.inc(401) : warning 215: expression has no effect
pawno\include\dutils.inc(401) : error 001: expected token: ";", but found ")"
pawno\include\dutils.inc(401) : error 029: invalid expression, assumed zero
pawno\include\dutils.inc(401) : fatal error 107: too many error messages on one line
Thanks ahead of time to anyone who posts possible solutions.
Код:
#include <dutils> #include <a_samp> #include <dini> #pragma unused ret_memcpy #pragma unused strtok #define FILTERSCRIPT #if defined FILTERSCRIPT #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1 #define COLOR_GREY 0xAFAFAFAA #define COLOR_ACTIVEBORDER 0xB4B4B4FF #define COLOR_ACTIVECAPTION 0x99B4D1FF #define COLOR_ACTIVECAPTIONTEXT 0x000000FF #define COLOR_ALICEBLUE 0xF0F8FFFF #define COLOR_ANTIQUEWHITE 0xFAEBD7FF #define COLOR_APPWORKSPACE 0xABABABFF #define COLOR_AQUA 0x00FFFFFF #define COLOR_AQUAMARINE 0x7FFFD4FF #define COLOR_AZURE 0xF0FFFFFF #define COLOR_BEIGE 0xF5F5DCFF #define COLOR_BISQUE 0xFFE4C4FF #define COLOR_BLACK 0x000000FF #define COLOR_BLANCHEDALMOND 0xFFEBCDFF #define COLOR_BLUE 0x0000FFFF #define COLOR_BLUEVIOLET 0x8A2BE2FF #define COLOR_BROWN 0xA52A2AFF #define COLOR_BURLYWOOD 0xDEB887FF #define COLOR_BUTTONFACE 0xF0F0F0FF #define COLOR_BUTTONHIGHLIGHT 0xFFFFFFFF #define COLOR_BUTTONSHADOW 0xA0A0A0FF #define COLOR_CADETBLUE 0x5F9EA0FF #define COLOR_CHARTREUSE 0x7FFF00FF #define COLOR_CHOCOLATE 0xD2691EFF #define COLOR_CONTROL 0xF0F0F0FF #define COLOR_CONTROLDARK 0xA0A0A0FF #define COLOR_CONTROLDARKDARK 0x696969FF #define COLOR_CONTROLLIGHT 0xE3E3E3FF #define COLOR_CONTROLLIGHTLIGHT 0xFFFFFFFF #define COLOR_CONTROLTEXT 0x000000FF #define COLOR_CORAL 0xFF7F50FF #define COLOR_CORNFLOWERBLUE 0x6495EDFF #define COLOR_CORNSILK 0xFFF8DCFF #define COLOR_CRIMSON 0xDC143CFF #define COLOR_CYAN 0x00FFFFFF #define COLOR_DARKBLUE 0x00008BFF #define COLOR_DARKCYAN 0x008B8BFF #define COLOR_DARKGOLDENROD 0xB8860BFF #define COLOR_DARKGRAY 0xA9A9A9FF #define COLOR_DARKGREEN 0x006400FF #define COLOR_DARKKHAKI 0xBDB76BFF #define COLOR_DARKMAGENTA 0x8B008BFF #define COLOR_DARKOLIVEGREEN 0x556B2FFF #define COLOR_DARKORANGE 0xFF8C00FF #define COLOR_DARKORCHID 0x9932CCFF #define COLOR_DARKRED 0x8B0000FF #define COLOR_DARKSALMON 0xE9967AFF #define COLOR_DARKSEAGREEN 0x8FBC8BFF #define COLOR_DARKSLATEBLUE 0x483D8BFF #define COLOR_DARKSLATEGRAY 0x2F4F4FFF #define COLOR_DARKTURQUOISE 0x00CED1FF #define COLOR_DARKVIOLET 0x9400D3FF #define COLOR_DEEPPINK 0xFF1493FF #define COLOR_DEEPSKYBLUE 0x00BFFFFF #define COLOR_DESKTOP 0x000000FF #define COLOR_DIMGRAY 0x696969FF #define COLOR_DODGERBLUE 0x1E90FFFF #define COLOR_FIREBRICK 0xB22222FF #define COLOR_FLORALWHITE 0xFFFAF0FF #define COLOR_FORESTGREEN 0x228B22FF #define COLOR_FUCHSIA 0xFF00FFFF #define COLOR_GAINSBORO 0xDCDCDCFF #define COLOR_GHOSTWHITE 0xF8F8FFFF #define COLOR_GOLD 0xFFD700FF #define COLOR_GOLDENROD 0xDAA520FF #define COLOR_GRADIENTACTIVECAPTION 0xB9D1EAFF #define COLOR_GRADIENTINACTIVECAPTION 0xD7E4F2FF #define COLOR_GRAY 0x808080FF #define COLOR_GRAYTEXT 0x808080FF #define COLOR_GREEN 0x008000FF #define COLOR_GREENYELLOW 0xADFF2FFF #define COLOR_HIGHLIGHT 0x3399FFFF #define COLOR_HIGHLIGHTTEXT 0xFFFFFFFF #define COLOR_HONEYDEW 0xF0FFF0FF #define COLOR_HOTPINK 0xFF69B4FF #define COLOR_HOTTRACK 0x0066CCFF #define COLOR_INACTIVEBORDER 0xF4F7FCFF #define COLOR_INACTIVECAPTION 0xBFCDDBFF #define COLOR_INACTIVECAPTIONTEXT 0x434E54FF #define COLOR_INDIANRED 0xCD5C5CFF #define COLOR_INDIGO 0x4B0082FF #define COLOR_INFO 0xFFFFE1FF #define COLOR_INFOTEXT 0x000000FF #define COLOR_IVORY 0xFFFFF0FF #define COLOR_KHAKI 0xF0E68CFF #define COLOR_LAVENDER 0xE6E6FAFF #define COLOR_LAVENDERBLUSH 0xFFF0F5FF #define COLOR_LAWNGREEN 0x7CFC00FF #define COLOR_LEMONCHIFFON 0xFFFACDFF #define COLOR_LIGHTBLUE 0xADD8E6FF #define COLOR_LIGHTCORAL 0xF08080FF #define COLOR_LIGHTCYAN 0xE0FFFFFF #define COLOR_LIGHTGOLDENRODYELLOW 0xFAFAD2FF #define COLOR_LIGHTGRAY 0xD3D3D3FF #define COLOR_LIGHTGREEN 0x90EE90FF #define COLOR_LIGHTPINK 0xFFB6C1FF #define COLOR_LIGHTSALMON 0xFFA07AFF #define COLOR_LIGHTSEAGREEN 0x20B2AAFF #define COLOR_LIGHTSKYBLUE 0x87CEFAFF #define COLOR_LIGHTSLATEGRAY 0x778899FF #define COLOR_LIGHTSTEELBLUE 0xB0C4DEFF #define COLOR_LIGHTYELLOW 0xFFFFE0FF #define COLOR_LIME 0x00FF00FF #define COLOR_LIMEGREEN 0x32CD32FF #define COLOR_LINEN 0xFAF0E6FF #define COLOR_MAGENTA 0xFF00FFFF #define COLOR_MAROON 0x800000FF #define COLOR_MEDIUMAQUAMARINE 0x66CDAAFF #define COLOR_MEDIUMBLUE 0x0000CDFF #define COLOR_MEDIUMORCHID 0xBA55D3FF #define COLOR_MEDIUMPURPLE 0x9370DBFF #define COLOR_MEDIUMSEAGREEN 0x3CB371FF #define COLOR_MEDIUMSLATEBLUE 0x7B68EEFF #define COLOR_MEDIUMSPRINGGREEN 0x00FA9AFF #define COLOR_MEDIUMTURQUOISE 0x48D1CCFF #define COLOR_MEDIUMVIOLETRED 0xC71585FF #define COLOR_MENU 0xF0F0F0FF #define COLOR_MENUBAR 0xF0F0F0FF #define COLOR_MENUHIGHLIGHT 0x3399FFFF #define COLOR_MENUTEXT 0x000000FF #define COLOR_MIDNIGHTBLUE 0x191970FF #define COLOR_MINTCREAM 0xF5FFFAFF #define COLOR_MISTYROSE 0xFFE4E1FF #define COLOR_MOCCASIN 0xFFE4B5FF #define COLOR_NAVAJOWHITE 0xFFDEADFF #define COLOR_NAVY 0x000080FF #define COLOR_OLDLACE 0xFDF5E6FF #define COLOR_OLIVE 0x808000FF #define COLOR_OLIVEDRAB 0x6B8E23FF #define COLOR_ORANGE 0xFFA500FF #define COLOR_ORANGERED 0xFF4500FF #define COLOR_ORCHID 0xDA70D6FF #define COLOR_PALEGOLDENROD 0xEEE8AAFF #define COLOR_PALEGREEN 0x98FB98FF #define COLOR_PALETURQUOISE 0xAFEEEEFF #define COLOR_PALEVIOLETRED 0xDB7093FF #define COLOR_PAPAYAWHIP 0xFFEFD5FF #define COLOR_PEACHPUFF 0xFFDAB9FF #define COLOR_PERU 0xCD853FFF #define COLOR_PINK 0xFFC0CBFF #define COLOR_PLUM 0xDDA0DDFF #define COLOR_POWDERBLUE 0xB0E0E6FF #define COLOR_PURPLE 0x800080FF #define COLOR_RED 0xFF0000FF #define COLOR_ROSYBROWN 0xBC8F8FFF #define COLOR_ROYALBLUE 0x4169E1FF #define COLOR_SADDLEBROWN 0x8B4513FF #define COLOR_SALMON 0xFA8072FF #define COLOR_SANDYBROWN 0xF4A460FF #define COLOR_SCROLLBAR 0xC8C8C8FF #define COLOR_SEAGREEN 0x2E8B57FF #define COLOR_SEASHELL 0xFFF5EEFF #define COLOR_SIENNA 0xA0522DFF #define COLOR_SILVER 0xC0C0C0FF #define COLOR_SKYBLUE 0x87CEEBFF #define COLOR_SLATEBLUE 0x6A5ACDFF #define COLOR_SLATEGRAY 0x708090FF #define COLOR_SNOW 0xFFFAFAFF #define COLOR_SPRINGGREEN 0x00FF7FFF #define COLOR_STEELBLUE 0x4682B4FF #define COLOR_TAN 0xD2B48CFF #define COLOR_TEAL 0x008080FF #define COLOR_THISTLE 0xD8BFD8FF #define COLOR_TOMATO 0xFF6347FF #define COLOR_TRANSPARENT 0xFFFFFF00 #define COLOR_TURQUOISE 0x40E0D0FF #define COLOR_VIOLET 0xEE82EEFF #define COLOR_WHEAT 0xF5DEB3FF #define COLOR_WHITE 0xFFFFFFFF #define COLOR_WHITESMOKE 0xF5F5F5FF #define COLOR_WINDOW 0xFFFFFFFF #define COLOR_WINDOWFRAME 0x646464FF #define COLOR_WINDOWTEXT 0x000000FF #define COLOR_YELLOW 0xFFFF00FF #define COLOR_YELLOWGREEN 0x9ACD32FF #define STEALTH_ORANGE 0xFF880000 #define STEALTH_OLIVE 0x66660000 #define STEALTH_GREEN 0x33DD1100 #define STEALTH_PINK 0xFF22EE00 #define STEALTH_BLUE 0x0077BB00 #endif enum PLAYER_MAIN { PLAYER_NAME[MAX_PLAYER_NAME], PLAYER_IP[16], PLAYER_REGGED, PLAYER_PASS, PLAYER_LEVEL, PLAYER_MONEY, } gPlayerInfo[MAX_PLAYERS][PLAYER_MAIN]; gPlayerLogged[MAX_PLAYERS]; enum COMMANDS_MAIN { KICK, BAN } new gCommands[COMMANDS_MAIN]; public OnFilterScriptInit() { print("\n************************************"); print("* *"); print("* Admin Filterscript by Hipflop *"); print("* *"); print("************************************\n"); // Level 0 = Player // Level 1 = Trusted Player // Level 2 = VIP // Level 3 = Moderator // Level 4 = Administrator // Level 5 = Server owner if(!fexist(CommandFile)) { dini_Create(CommandFile); dini_IntSet(CommandFile, "Kick", 2); dini_IntSet(CommandFile, "Ban", 3); } gCommands[KICK] = dini_Int(CommandFile, "Kick"); gCommands[BAN] = dini_Int(CommandFile, "Ban"); return 1; } public OnPlayerConnect(playerid) { new file[100], name[MAX_PLAYER_NAME]; GetPlayerName(playerid, name, sizeof(name)); format(file, sizeof(file), PlayerFile, name); if(!fexist(file)) { ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Register", "Please fill in your username and a password.", "Register", "Exit"); } else if(fexist(file)) { ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Login", "Please fill in your password.", "Login", "Exit"); } return 1; } public OnPlayerDisconnect(playerid, reason) { new file[100]; format(file, sizeof(file), PlayerFile, gPlayerInfo[playerid][PLAYER_NAME]); dini_Set(file, "Name", gPlayerInfo[playerid][PLAYER_NAME]); dini_Set(file, "Ip", gPlayerInfo[playerid][PLAYER_IP]); dini_IntSet(file, "Registered", gPlayerInfo[playerid][PLAYER_REGGED]); dini_IntSet(file, "Password", gPlayerInfo[playerid][PLAYER_PASS]); dini_IntSet(file, "Level", gPlayerInfo[playerid][PLAYER_LEVEL]); dini_IntSet(file, "Money", GetPlayerMoney(playerid)); gPlayerLogged[playerid] = 0; return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == 1) { if(response) { if(strlen(inputtext)) { new file[100], name[MAX_PLAYER_NAME], ip[16], string[128]; GetPlayerName(playerid, name, sizeof(name)); GetPlayerIp(playerid, ip, sizeof(ip)); format(file, sizeof(file), PlayerFile, name); dini_Create(file); dini_Set(file, "Name", name); dini_Set(file, "Ip", ip); dini_IntSet(file, "Registered", 1); dini_IntSet(file, "Password", num_hash(inputtext)); dini_IntSet(file, "Level", 0); dini_IntSet(file, "Money", 50); format(string, sizeof(string), "[SYSTEM] You succesfully registered the player %s.", name); SendClientMessage(playerid, COLOR_LIGHTGREEN, string); strcat(gPlayerInfo[playerid][PLAYER_NAME], dini_Get(file, "Name")); strcat(gPlayerInfo[playerid][PLAYER_IP], dini_Get(file, "Ip")); gPlayerInfo[playerid][PLAYER_PASS] = dini_Int(file, "Password"); gPlayerInfo[playerid][PLAYER_LEVEL] = dini_Int(file, "Level"); GivePlayerMoney(playerid, dini_Int(file, "Money")); gPlayerLogged[playerid] = 1; } else if(!strlen(inputtext)) { SendClientMessage(playerid, COLOR_RED, "[SYSTEM] You must fill in a password!"); ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Register", "Please fill in your username as a password.", "Register", "Exit"); } } else if(!response) { SendClientMessage(playerid, COLOR_RED, "[SYSTEM] You need to register in order to play!"); Kick(playerid); } } if(dialogid == 2) { if(response) { if(strlen(inputtext)) { new file[100], name[MAX_PLAYER_NAME], string[128]; GetPlayerName(playerid, name, sizeof(name)); format(file, sizeof(file), PlayerFile, name); if(num_hash(inputtext) == dini_Int(file, "Password")) { strcat(gPlayerInfo[playerid][PLAYER_NAME], dini_Get(file, "Name")); strcat(gPlayerInfo[playerid][PLAYER_IP], dini_Get(file, "Ip")); gPlayerInfo[playerid][PLAYER_PASS] = dini_Int(file, "Password"); gPlayerInfo[playerid][PLAYER_LEVEL] = dini_Int(file, "Level"); GivePlayerMoney(playerid, dini_Int(file, "Money")); gPlayerLogged[playerid] = 1; format(string, sizeof(string), "[SYSTEM] Welcome back, %s", name); SendClientMessage(playerid, COLOR_LIGHTGREEN, string); } else if(num_hash(inputtext) != dini_Int(file, "Password")) { SendClientMessage(playerid, COLOR_RED, "[SYSTEM] Wrong password!"); ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Logon", "Please fill in your password.", "Logon", "Exit"); } } else if(!strlen(inputtext)) { SendClientMessage(playerid, COLOR_RED, "[SYSTEM] You must fill in your password!"); ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Logon", "Please fill in your password.", "Logon", "Exit"); } } else if(!response) { SendClientMessage(playerid, COLOR_RED, "[SYSTEM] You need to logon in order to play!"); Kick(playerid); } } return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { dcmd(kick, 4, cmdtext); dcmd(ban, 3, cmdtext); return 0; } dcmd_kick(playerid, params[]) { if(gPlayerInfo[playerid][PLAYER_LEVEL] < gCommands[KICK]) { new string[128]; format(string, sizeof(string), "You must be a level %d administrator to use that command!", gCommands[KICK]); SendClientMessage(playerid, COLOR_ORANGE, string); } else { new tmp[256], tmp2[256], index, id; tmp = strtok(params, index); tmp2 = strtok(params, index); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_ORANGE, "[KICK] Usage: /kick [ID] [REASON]"); } else if(!strlen(tmp2)) { SendClientMessage(playerid, COLOR_ORANGE, "[KICK] Usage: /kick [ID] [REASON]"); } else { id = strval(tmp); if(!IsPlayerConnected(id)) { SendClientMessage(playerid, COLOR_ORANGE, "[KICK] That player is not connected."); } else if(id == playerid) { SendClientMessage(playerid, COLOR_ORANGE, "[KICK] You can't kick yourself."); } else if(gPlayerInfo[id][PLAYER_LEVEL] > gPlayerInfo[playerid][PLAYER_LEVEL]) { SendClientMessage(playerid, COLOR_ORANGE, "[KICK] That player has a higher level than you."); } else { new string[256], name[MAX_PLAYER_NAME]; GetPlayerName(id, name, sizeof(name)); if(id >= 0 && id <= 9) { format(string, sizeof(string), "[KICK] You have been kicked. Reason: %s.", params[2]); SendClientMessage(id, COLOR_ORANGE, string); Kick(id); format(string, sizeof(string), "[KICK] Player %s has been kicked. Reason: %s.", name, params[2]); SendClientMessageToAll(COLOR_ORANGE, string); } else if(id >= 10 && id <= 99) { format(string, sizeof(string), "[KICK] You have been kicked. Reason: %s.", params[3]); SendClientMessage(id, COLOR_ORANGE, string); Kick(id); format(string, sizeof(string), "[KICK] Player %s has been kicked. Reason: %s.", name, params[3]); SendClientMessageToAll(COLOR_ORANGE, string); } } } } return 1; }
pawno\include\dutils.inc(22) : error 017: undefined symbol "MAX_PLAYERS"
pawno\include\dutils.inc(401) : error 017: undefined symbol "strlen"
pawno\include\dutils.inc(401) : warning 215: expression has no effect
pawno\include\dutils.inc(401) : error 001: expected token: ";", but found ")"
pawno\include\dutils.inc(401) : error 029: invalid expression, assumed zero
pawno\include\dutils.inc(401) : fatal error 107: too many error messages on one line
Thanks ahead of time to anyone who posts possible solutions.