Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <DOF2>
- #define SendFMsg(%0,%1,%2,%3) format(Str, sizeof Str, %2, %3) && SendClientMessage(%0, %1, Str)
- #define SendFMsgToAll(%0,%1,%2) format(Str, sizeof Str, %1, %2) && SendClientMessageToAll(%0, Str)
- #define IsActManager(%0) if(DOF2_FileExists(ActFile(%0)))
- #define D_SAct1 27
- #define D_SAct2 28
- #define D_SAct3 29
- #define D_SAct4 30
- new Str[256];
- enum A_ACT
- {
- ON = 0,
- INCAR = 0,
- PLAYERS = 0,
- LOCKED = 0,
- MSG[500],
- Float:X,
- Float:Y,
- Float:Z
- };
- new Act[A_ACT];
- enum P_ACT
- {
- IN = 0,
- FREEZED = 0
- };
- new PAct[MAX_PLAYERS][P_ACT];
- new Float:pX, Float:pY, Float:pZ;
- enum ACT_CMDS
- {
- CMD[64],
- INFO[128]
- };
- new ActCmds[][ACT_CMDS] =
- {
- {"/SAct"}, {"ìéöåø ôòéìåú"},
- {"/StopAct"}, {"ìäôñé÷ ôòéìåú"},
- {"/JoinAct"}, {"äöèøôåú ìôòéìåú"},
- {"/KAct"}, {"ìäòéó ùç÷ï îäôòéìåú"},
- {"/WAct"}, {"ìúú ðù÷ ìëì äùç÷ðéí áôòéìåú"},
- {"/WPAct"}, {"ìúú ðù÷ ìùç÷ï îñåééí áôòéìåú"},
- {"/RWAct"}, {"ìàôñ ìùç÷ðéí áôòéìåú àú ëì äðù÷éí"},
- {"/LockAct"}, {"ìðòåì àå ìôúåç ôòéìåú"},
- {"/FreezePAct"}, {"ìä÷ôéà àå ìáèì ôøéæ ìëì äùç÷ðéí áôòéìåú"},
- {"/MsgAct"}, {"ìäåãéò òì ôòéìåú ÷ééîú"}
- };
- #define FILTERSCRIPT
- public OnFilterScriptInit()
- {
- print("\n--------------------------------------");
- print(" Blank Filterscript by your name here");
- print("--------------------------------------\n");
- return 1;
- }
- public OnFilterScriptExit()
- {
- DOF2_Exit();
- DOF2_SaveFile();
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- if(PAct[playerid][IN] == 1)
- {
- Act[PLAYERS]--;
- PAct[playerid][IN] = 0;
- PAct[playerid][FREEZED] = 0;
- }
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- if(PAct[playerid][IN] == 1)
- {
- Act[PLAYERS]--;
- PAct[playerid][IN] = 0;
- PAct[playerid][FREEZED] = 0;
- SendClientMessage(playerid, 0xFF0000AA, "{9DFF00}[{FF9500}ôòéìåú éãðéú{9DFF00}]{9D00FF}» éöàú îäôòéìåú îëéååï ùðäøâú");
- }
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- new cmd[4][256], idx, id;
- cmd[0] = strtok(cmdtext, idx), cmd[1] = strtok(cmdtext, idx), cmd[2] = strtok(cmdtext, idx), cmd[3] = strtok(cmdtext, idx), id = strval(cmd[1]);
- if(PAct[playerid][IN] == 1) return SendClientMessage(playerid, 0xFF0000AA, "{9DFF00}[{FF9500}ôòéìåú éãðéú{9DFF00}]{9D00FF}» àéðê éëåì ìáöò ô÷åãåú ëàùø àúä áôòéìåú");
- if(strcmp(cmd[0], "/GiveActManager", true) == 0)
- {
- id = strval(cmd[1]);
- if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "ô÷åãä æàú àê åø÷ ìàãîéï!!!!");
- if(!strlen(cmd[1])) return SendClientMessage(playerid, 0xFF0000AA, "Usage: /GiveActManager [ID]");
- if(!IsPlayerConnected(id)) return SendClientMessage(playerid, 0xFF0000AA, "äàééãé ùöééðú ùâåé");
- if(DOF2_FileExists(ActFile(id))) return SendFMsg(playerid, 0xFF0000AA, "ëáø àçøàé öååú ôòéìåéåú \"%s\" äùç÷ï", GetName(id));
- DOF2_CreateFile(ActFile(id));
- SendFMsg(playerid, 0xFF0000AA, "ëàçøàé öååú ôòéìåéåú \"%s\" ùîú àú äùç÷ï", GetName(id));
- SendFMsg(id, 0xFF0000AA, "ùí àåúê ëàçøàé öååú ôòéìåéåú \"%s\" äàãîéï", GetName(playerid));
- DOF2_SaveFile();
- return 1;
- }
- if(strcmp(cmdtext, "/SAct", true) == 0)
- {
- IsActManager(playerid)
- {
- if(Act[ON] == 1) return SendClientMessage(playerid, 0xFF0000AA, "éù ëáø ôòéìåú ôåòìú!!!!");
- ShowPlayerDialog(playerid, D_SAct1, DIALOG_STYLE_MSGBOX, "{FF8800}/SAct - ôòéìåú éãðéú", "{FF0000}äàí úøöä ùôòéìåú æå úäéä áøëá ?", "1 = øëá", "2 = áìé øëá");
- }
- else return SendClientMessage(playerid, 0xFF0000AA, "ô÷åãä æàú àê åø÷ ìàçøàé / öååú ôòéìåéåú!!!!");
- return 1;
- }
- if(strcmp(cmdtext, "/JoinAct", true) == 0)
- {
- if(Act[ON] == 0) return SendClientMessage(playerid, 0xFF0000AA, "àéï ôòéìåú éãðéú ôåòìú!!!!");
- if(Act[LOCKED] == 1) return SendClientMessage(playerid, 0xFF0000AA, "äôòéìåú ëøâò ðòåìä");
- if(PAct[playerid][IN] == 1) return SendClientMessage(playerid, 0xFF0000AA, "àúä ëáø ðîöà áôòéìåú!");
- Act[PLAYERS]++;
- PAct[playerid][IN] = 1;
- for(new i = 0, j = GetMaxPlayers(); i < j; i++) if(IsPlayerConnected(i) && IsPlayerAdmin(playerid)) return SendFMsg(i, 0xFF0000AA, "äöèøó ìôòéìåú \"%s\" äùç÷ï", GetName(playerid));
- SendClientMessage(playerid, 0xFF0000AA, "äöèøôú áäöìçä ìôòéìåú");
- SetPlayerPos(playerid, Act[X], Act[Y], Act[Z]);
- TogglePlayerControllable(playerid, 0), PAct[playerid][FREEZED] = 1;
- return 1;
- }
- if(strcmp(cmdtext, "/KAct", true) == 0)
- {
- IsActManager(playerid)
- {
- if(Act[ON] == 0) return SendClientMessage(playerid, 0xFF0000AA, "àéï ôòéìåú éãðéú ôåòìú!!!!");
- if(Act[PLAYERS] < 1) return SendClientMessage(playerid, 0xFF0000AA, "àéï ùç÷ðéí áôòéìåú!!!!");
- if(!IsPlayerConnected(id) || PAct[id][IN] == 0) return SendClientMessage(playerid, 0xFF0000AA, "ùç÷ï æä àéðå îçåáø / áôòéìåú");
- PAct[id][IN] = 0;
- SpawnPlayer(id);
- SendFMsg(playerid, 0xFF0000AA, "îäôéòìåú \"%s\" äåöàú àú äùç÷ï", GetName(id));
- SendFMsg(id, 0xFF0000AA, "äåöéà àåúê îäôòéìåú \"%s\" äàãîéï", GetName(playerid));
- }
- else return SendClientMessage(playerid, 0xFF0000AA, "ô÷åãä æàú àê åø÷ ìàçøàé / öååú ôòéìåéåú!!!!");
- return 1;
- }
- if(strcmp(cmd[0], "/WAct", true) == 0)
- {
- IsActManager(playerid)
- {
- if(Act[ON] == 0) return SendClientMessage(playerid, 0xFF0000AA, "àéï ôòéìåú éãðéú ôåòìú!!!!");
- if(Act[PLAYERS] < 1) return SendClientMessage(playerid, 0xFF0000AA, "àéï ùç÷ðéí áôòéìåú!!!!");
- if(!strlen(cmd[1]) || !strlen(cmd[2])) return SendClientMessage(playerid, 0xFF0000AA, "Usage: /WAct [WeaponID] [Ammo]");
- new WName[45];
- if(strval(cmd[1]) == -1 || strval(cmd[1]) == 19 || strval(cmd[1]) == 20 || strval(cmd[1]) == 21 || strval(cmd[1]) > 46) return SendClientMessage(playerid, 0xFF0000AA, "Syntax Error: \"Invalid WEAPON ID\".");
- GetWeaponName(strval(cmd[2]), WName, sizeof(WName));
- if(strval(cmd[1]) == 39) for(new i = 0, j = GetMaxPlayers(); i < j; i++) if(IsPlayerConnected(i) && PAct[i][IN] == 1) GivePlayerWeapon(i, strval(cmd[1]), strval(cmd[2]));
- if(strval(cmd[1]) == 18) WName = "Molotov";
- for(new i = 0, j = GetMaxPlayers(); i < j; i++) if(IsPlayerConnected(i) && PAct[i][IN] == 1) GivePlayerWeapon(i, strval(cmd[1]), strval(cmd[2]));
- for(new i = 0, j = GetMaxPlayers(); i < j; i++) if(IsPlayerConnected(i) && PAct[i][IN] == 1) SendFMsg(i, 0xFF0000AA, "{9DFF00}[{FF9500}ôòéìåú éãðéú{9DFF00}]{9D00FF}» ìëì äùç÷ðéí áôòéìåú \"%d\" òí \"%s\" äáéà àú äðù÷ \"%s\" äàãîéï", strval(cmd[2]), WName, GetName(playerid));
- SendFMsg(playerid, 0xFF0000AA, "{9DFF00}[{FF9500}ôòéìåú éãðéú{9DFF00}]{9D00FF}» ëãåøéí ìëì äùç÷ðéí áôòéìåú \"%d\" òí \"%s\" äáàú àú äðù÷", strval(cmd[2]), WName);
- }
- else return SendClientMessage(playerid, 0xFF0000AA, "ô÷åãä æàú àê åø÷ ìàçøàé / öååú ôòéìåéåú!!!!");
- return 1;
- }
- if(strcmp(cmd[0], "/WPAct", true) == 0)
- {
- IsActManager(playerid)
- {
- if(Act[ON] == 0) return SendClientMessage(playerid, 0xFF0000AA, "àéï ôòéìåú éãðéú ôåòìú!!!!");
- if(Act[PLAYERS] < 1) return SendClientMessage(playerid, 0xFF0000AA, "àéï ùç÷ðéí áôòéìåú!!!!");
- id = strval(cmd[1]);
- if(!strlen(cmd[1]) || !strlen(cmd[2]) || !strlen(cmd[3])) return SendClientMessage(playerid, 0xFF0000AA, "Usage: /WPAct [ID] [WeaponID] [Ammo]");
- if(!IsPlayerConnected(id) || PAct[id][IN] == 0) return SendClientMessage(playerid, 0xFF0000AA, "ùç÷ï æä àéðå îçåáø / áôòéìåú");
- new WName[45];
- if(strval(cmd[2]) == -1 || strval(cmd[2]) == 19 || strval(cmd[2]) == 20 || strval(cmd[2]) == 21 || strval(cmd[2]) > 46) return SendClientMessage(playerid, 0xFF0000AA, "Syntax Error: \"Invalid WEAPON ID\".");
- GetWeaponName(strval(cmd[2]), WName, sizeof(WName));
- if(strval(cmd[2]) == 39) GivePlayerWeapon(id, strval(cmd[2]), strval(cmd[3]));
- if(strval(cmd[2]) == 18) WName = "Molotov";
- GivePlayerWeapon(id, strval(cmd[2]), strval(cmd[3]));
- SendFMsg(id, 0xFF0000AA, "{9DFF00}[{FF9500}ôòéìåú éãðéú{9DFF00}]{9D00FF}» \"%d\" òí \"%s\" äáéà ìê àú äðù÷ \"%s\" äàãîéï", strval(cmd[3]), WName, GetName(playerid));
- SendFMsg(playerid, 0xFF0000AA, "{9DFF00}[{FF9500}ôòéìåú éãðéú{9DFF00}]{9D00FF}» \"%s\" ëãåøéí ìùç÷ï \"%d\" òí \"%s\" äáàú àú äðù÷", GetName(id), strval(cmd[3]), WName);
- }
- else return SendClientMessage(playerid, 0xFF0000AA, "ô÷åãä æàú àê åø÷ ìàçøàé / öååú ôòéìåéåú!!!!");
- return 1;
- }
- if(strcmp(cmd[0], "/RWAct", true) == 0)
- {
- IsActManager(playerid)
- {
- if(Act[ON] == 0) return SendClientMessage(playerid, 0xFF0000AA, "àéï ôòéìåú éãðéú ôåòìú!!!!");
- if(Act[PLAYERS] < 1) return SendClientMessage(playerid, 0xFF0000AA, "àéï ùç÷ðéí áôòéìåú!!!!");
- for(new i = 0, j = GetMaxPlayers(); i < j; i++) if(IsPlayerConnected(i) && PAct[i][IN] == 1) ResetPlayerWeapons(i), SendFMsg(i, 0xFF0000AA, "{9DFF00}[{FF9500}ôòéìåú éãðéú{9DFF00}]{9D00FF}» àéôñ àú äðù÷éí ìëåìí áôòéìåú \"%s\" äàãîéï", GetName(playerid));
- SendClientMessage(playerid, 0xFF0000AA, "{9DFF00}[{FF9500}ôòéìåú éãðéú{9DFF00}]{9D00FF}» àéôñú àú äðù÷éí ìëåì îé ùáôòéìåú");
- }
- else return SendClientMessage(playerid, 0xFF0000AA, "ô÷åãä æàú àê åø÷ ìàçøàé / öååú ôòéìåéåú!!!!");
- return 1;
- }
- if(strcmp(cmdtext, "/StopAct", true) == 0)
- {
- IsActManager(playerid)
- {
- if(Act[ON] == 0) return SendClientMessage(playerid, 0xFF0000AA, "àéï ôòéìåú éãðéú ôåòìú!!!!");
- for(new i = 0, j = GetMaxPlayers(); i < j; i++) if(IsPlayerConnected(i) && PAct[i][IN] == 1) return SpawnPlayer(i), PAct[i][IN] = 1;
- Act[PLAYERS] = 0;
- Act[ON] = 0;
- Act[INCAR] = 0;
- Act[LOCKED] = 0;
- SendFMsgToAll(0xFF0000AA, "{9DFF00}[{FF9500}ôòéìåú éãðéú{9DFF00}]{9D00FF}» ñâø àú äôòéìåú äéãðéú \"%s\" äàãîéï", GetName(playerid));
- }
- else return SendClientMessage(playerid, 0xFF0000AA, "ô÷åãä æàú àê åø÷ ìàçøàé / öååú ôòéìåéåú!!!!");
- return 1;
- }
- if(strcmp(cmdtext, "/LockAct", true) == 0)
- {
- IsActManager(playerid)
- {
- if(Act[ON] == 0) return SendClientMessage(playerid, 0xFF0000AA, "àéï ôòéìåú éãðéú ôåòìú!!!!");
- if(Act[PLAYERS] < 1) return SendClientMessage(playerid, 0xFF0000AA, "àéï ùç÷ðéí áôòéìåú!!!!");
- Act[LOCKED] = Act[LOCKED] == 1 ? 0 : 1;
- SendFMsgToAll(0xFF0000AA, "{9DFF00}[{FF9500}ôòéìåú éãðéú{9DFF00}]{9D00FF}» àú äôòéìåú %s \"%s\" äàãîéï", Act[LOCKED] == 1 ? ("ðòì") : ("ôúç"), GetName(playerid));
- }
- else return SendClientMessage(playerid, 0xFF0000AA, "ô÷åãä æàú àê åø÷ ìàçøàé / öååú ôòéìåéåú!!!!");
- return 1;
- }
- if(strcmp(cmdtext, "/FreezePAct", true) == 0)
- {
- IsActManager(playerid)
- {
- if(Act[ON] == 0) return SendClientMessage(playerid, 0xFF0000AA, "àéï ôòéìåú éãðéú ôåòìú!!!!");
- if(Act[PLAYERS] < 1) return SendClientMessage(playerid, 0xFF0000AA, "àéï ùç÷ðéí áôòéìåú!!!!");
- for(new i = 0, j = GetMaxPlayers(); i < j; i++) if(IsPlayerConnected(i) && PAct[i][IN] == 1 && PAct[i][FREEZED] == 1) TogglePlayerControllable(i, 0), SendFMsg(i, 0xFF0000AA, "{9DFF00}[{FF9500}ôòéìåú éãðéú{9DFF00}]{9D00FF}» áéèì ìëì äùç÷ðéí áôòéìåú àú äôøéæ\"%s\" äàãîéï", GetName(playerid));
- SendClientMessage(playerid, 0xFF0000AA, "{9DFF00}[{FF9500}ôòéìåú éãðéú{9DFF00}]{9D00FF}» áéèìú àú äôøéæ ìùç÷ðéí áôòéìåú");
- }
- else return SendClientMessage(playerid, 0xFF0000AA, "ô÷åãä æàú àê åø÷ ìàçøàé / öååú ôòéìåéåú!!!!");
- return 1;
- }
- if(strcmp(cmdtext, "/MsgAct", true) == 0)
- {
- IsActManager(playerid)
- {
- if(Act[ON] == 0) return SendClientMessage(playerid, 0xFF0000AA, "àéï ôòéìåú éãðéú ôåòìú!!!!");
- SendFMsgToAll(0xFFFFFFAA, "{9DFF00}[{FF9500}ôòéìåú éãðéú{9DFF00}]{9D00FF}» äôòéì àú äôòéìåú äéãðéú \"%s\" äàãîéï", GetName(playerid));
- SendClientMessageToAll(0xFFFFFFAA, "{9DFF00}[{FF9500}ôòéìåú éãðéú{9DFF00}]{9D00FF}» /JoinAct - ìäöèøôåú ä÷ù/é");
- SendFMsgToAll(0xFFFFFFAA, "{9DFF00}[{FF9500}ôòéìåú éãðéú{9DFF00}]{9D00FF}» %s", Act[MSG]);
- }
- else return SendClientMessage(playerid, 0xFF0000AA, "ô÷åãä æàú àê åø÷ ìàçøàé / öååú ôòéìåéåú!!!!");
- return 1;
- }
- if(strcmp(cmdtext, "/ActHelp", true) == 0)
- {
- if(!IsPlayerAdmin(playerid) || !DOF2_FileExists(ActFile(playerid))) return SendClientMessage(playerid, 0xFF0000AA, "ô÷åãä æàú àê åø÷ ìàçøàé / öååú ôòéìåéåú / àãîéï!!!!");
- new _StR_G[500], sss;
- format(_StR_G, sizeof _StR_G, "");
- for(new i = 0; i < sizeof ActCmds; i++)
- {
- format(_StR_G, sizeof _StR_G, "%s {FF0000}%d. {5CE851}%s {FFFF00}- {51E8D6}%s\n", _StR_G, sss, ActCmds[i][CMD], ActCmds[i][INFO]);
- ShowPlayerDialog(playerid, D_SAct4, DIALOG_STYLE_MSGBOX, "{FF8800}/ActHelp - ô÷åãåú äîòøëú", _StR_G, "àéùåø", "");
- sss++;
- }
- return 1;
- }
- return 0;
- }
- public OnPlayerExitVehicle(playerid, vehicleid)
- {
- if(PAct[playerid][IN] == 1 && Act[INCAR] == 1) return SpawnPlayer(playerid), Act[PLAYERS]--, PAct[playerid][IN] = 1, SendClientMessage(playerid, 0xFF0000AA, "éöàú îäôòéìåú îëéååï ùéöàú îäøëá");
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid == D_SAct1)
- {
- if(response) return Act[INCAR] = 1, ShowPlayerDialog(playerid, D_SAct2, DIALOG_STYLE_MSGBOX, "{FF8800}/SAct - ôòéìåú éãðéú", "{FF0000}ôòéìåú áøëá = ëïn\n{FFFF00}äàí àúä øåöä ùäôòéìåú úäéä ðòåìä ?", "1 = ðòåì", "2 = ôúåç");
- else return Act[INCAR] = 0, ShowPlayerDialog(playerid, D_SAct2, DIALOG_STYLE_MSGBOX, "{FF8800}/SAct - ôòéìåú éãðéú", "{FF0000}ôòéìåú áøëá = ìàn\n{FFFF00}äàí àúä øåöä ùäôòéìåú úäéä ðòåìä ?", "1 = ðòåì", "2 = ôúåç");
- }
- if(dialogid == D_SAct2)
- {
- if(response) return Act[LOCKED] = 1, ShowPlayerDialog(playerid, D_SAct3, DIALOG_STYLE_INPUT, "{FF8800}/SAct - ôòéìåú éãðéú", "{FF0000}ðòåì = ëï\n{FFFF00}àðà ä÷ìã àú äîéãò òì äôòéìåú", "àéùåø", "");
- else return Act[LOCKED] = 0, ShowPlayerDialog(playerid, D_SAct3, DIALOG_STYLE_INPUT, "{FF8800}/SAct - ôòéìåú éãðéú", "{FF0000}ðòåì = ìà\n{FFFF00}àðà ä÷ìã àú äîéãò òì äôòéìåú", "àéùåø", "");
- }
- if(dialogid == D_SAct3)
- {
- if(response)
- {
- format(Act[MSG], 500, inputtext);
- GetPlayerPos(playerid, pX, pY, pZ);
- Act[X] = pX, Act[Y] = pY, Act[Z] = pZ;
- Act[ON] = 1;
- SendFMsgToAll(0xFFFFFFAA, "{9DFF00}[{FF9500}ôòéìåú éãðéú{9DFF00}]{9D00FF}» äôòéì àú äôòéìåú äéãðéú \"%s\" äàãîéï", GetName(playerid));
- SendClientMessageToAll(0xFFFFFFAA, "{9DFF00}[{FF9500}ôòéìåú éãðéú{9DFF00}]{9D00FF}» /JoinAct - ìäöèøôåú ä÷ù/é");
- SendFMsgToAll(0xFFFFFFAA, "{9DFF00}[{FF9500}ôòéìåú éãðéú{9DFF00}]{9D00FF}» %s", Act[MSG]);
- }
- }
- return 1;
- }
- stock strtok(const source[], &index)
- {
- new
- variableStart;
- while (source[index] && source[index] <= 0x20)
- index ++;
- variableStart = index;
- while (source[index] && source[index] > 0x20)
- index ++;
- new
- szResult[20];
- memcpy(szResult, source[variableStart], 0, 4 * (index - variableStart), 20);
- return szResult;
- }
- stock strrest(str[], &index) {
- new result[128];
- strmid(result, str, index, strlen(str));
- return result;
- }
- stock ActFile(playerid)
- {
- new F[64];
- format(F, sizeof F, "Act/Users/%s.ini", GetName(playerid));
- return F;
- }
- stock GetName(playerid)
- {
- new N[MAX_PLAYER_NAME + 1];
- GetPlayerName(playerid, N, sizeof N);
- return N;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement