Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <zcmd>
- #define red 0xFF0000FF
- #define green 0xFF0000
- #define TIME 25
- #if defined READ
- #define POSITIONX
- #define POSITIONY
- #define POSITIONZ
- #endif
- #if !defined READ
- #error "Black Wolf, define the POSTIONX, POSITIONY and Z with your coords and do #define READ at top.");
- #endif
- new mggame = 0;
- new pmggame[MAX_PLAYERS];
- public OnFilterScriptInit()
- {
- SetTimer("Mgmini", TIME*60000, true);
- printf("Minigun game loaded successfully!");
- return 1;
- }
- public OnFilterScriptExit()
- {
- for(new i; i< GetMaxPlayers(); i++)
- {
- if(!IsPlayerConnected(i)); continue;
- pmggame[i] = 0;
- SetPlayerAmmo(i, 38, 0);
- SpawnPlayer(i);
- break;
- }
- printf("Minigun game unloaded!");
- return 1;
- }
- forward Mgmini();
- public Mgmini()
- {
- if(mggame == 1)
- {
- for(new i; i< GetMaxPlayers(); i++)
- {
- if(!IsPlayerConnected(playerid)); continue;
- if(pmggame[i] == 1)
- {
- pmggame[i] = 0;
- SetPlayerAmmo(i, 38, 0);
- SpawnPlayer(i);
- break;
- }
- }
- SendClientMessageToAll(red, "Minigun game has been stoped. Wait for the next 25 minutes.");
- mggame = 0;
- }
- if(mggame == 0)
- {
- SendClientMessageToAll(green, "Minigun game has been started. Use /mgmini {FF0000}to join minigun game.");
- mggame = 1;
- for(new i; i< GetMaxPlayers(); i++)
- {
- if(!IsPlayerConnected(i)); continue;
- pmggame[i] = 0; break;
- }
- }
- printf("DEBUG:Minigun timer has worked perfectly.");
- return 1;
- }
- CMD:mgmini(playerid, params[])
- {
- if(mggame == 1)
- {
- if(pmggame[playerid] == 1) return SendClientMessage(playerid, red, "You are already in a minigun game. Use /leavemgmini to leave.");
- pmggame[playerid] = 1;
- new str[128], Lname[MAX_PLAYER_NAME];
- GetPlayerName(playerid, Lname, sizeof(Lname));
- format(str, sizeof(str), "%s (ID:%d) has joined the minigun game. {FF0000}/mgmini", Lname, playerid);
- SendClientMessageToAll(green, str);
- ResetPlayerWeapons(playerid);
- GivePlayerWeapon(playerid, 38, 99999);
- SetPlayerPos(playerid, POSITIONX, POSITIONY, POSITIONZ);
- }
- else return SendClientMessage(playerid, red, "Minigun game has not yet started. Please wait...");
- return 1;
- }
- CMD:leavemgmini(playerid, params[])
- {
- if(pmggame[playerid] == 1)
- {
- new str[128], Lname[MAX_PLAYER_NAME];
- GetPlayerName(playerid, Lname, sizeof(Lname));
- SetPlayerAmmo(playerid, 38, 0);
- format(str, sizeof(str), "%s (ID:%d) {FFFFFF}has left the {FF0000}minigun game.", Lname, playerid);
- SendClientMessageToAll(green, str);
- pmggame[playerid] = 0;
- SpawnPlayer(playerid);
- }
- else return SendClientMessage(playerid, red, "You are not in a minigun game to use this command.");
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- if(pmggame[killerid] == 1 && pmggame[playerid] == 1)
- {
- new string[128], Lname[MAX_PLAYER_NAME], Pname[MAX_PLAYER_NAME];
- GetPlayerName(killerid, Lname, sizeof(Lname));
- GetPlayerName(playerid, Pname, sizeof(Pname));
- format(string, sizeof(string), "[MINIGUN-GAME]%s(ID:%d) has killed %s(ID:%d)", Lname, killerid, Pname, playerid);
- SendClientMessageToAll(green, string);
- ResetPlayerWeapons(playerid);
- }
- pmggame[playerid] = 0;
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- pmggame[playerid] = 0;
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- pmggame[playerid] = 0;
- return 1;
- }
- public OnPlayerCommandText(playerid, text[])
- {
- if(pmggame[playerid] == 1)
- {
- if(strcmp, cmdtext, "/leavemgmini", true) return SendClientMessage(playerid, red, "You cannot use any commands while you are in Minigun game. Use /leavemgmini");
- return 1;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement