Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <dini>
- #include <sscanf2>
- #include <zcmd>
- #include <foreach>
- //Helpful >:)
- #define SetPlayerHoldingObject(%1,%2,%3,%4,%5,%6,%7,%8,%9) SetPlayerAttachedObject(%1,MAX_PLAYER_ATTACHED_OBJECTS-1,%2,%3,%4,%5,%6,%7,%8,%9)
- #define StopPlayerHoldingObject(%1) RemovePlayerAttachedObject(%1,MAX_PLAYER_ATTACHED_OBJECTS-1)
- #define IsPlayerHoldingObject(%1) IsPlayerAttachedObjectSlotUsed(%1,MAX_PLAYER_ATTACHED_OBJECTS-1)
- //Some useful things
- //==============================================================================
- #define MAX_WARNINGS 3
- #define MAX_RANKS 21
- #define USE_FLOGIN
- #define ZOMBIE 1 // Zombie
- #define HUNTER 2 // Zombie
- #define CHARGER 3 // Zombie
- #define HUMAN 4 // Human
- #define MEDIC 5 // Human
- #define ARMY 6 // Human
- //==============================================================================
- //Color defines
- #define blue 0x375FFFFF
- #define red 0xFF0000AA
- #define green 0x33FF33AA
- #define yellow 0xFFFF00AA
- #define grey 0xC0C0C0AA
- #define blue1 0x2641FEAA
- #define lightblue 0x33CCFFAA
- #define orange 0xFF9900AA
- #define black 0x2C2727AA
- #define pink 0xFF66FFAA
- #define purple 0xcc55ccff
- #define white 0xFFFFFFAA
- #define green1 0x33AA33AA
- #define brown 0xA52A2AAA
- #define gold 0xFFDC00FF
- #define lime 0x37FF00FF
- // Teams
- #define TEAM_ZOMBIE 0 // Zombie
- #define TEAM_HUNTER 1 // Zombie
- #define TEAM_CHARGER 2 // Zombie
- #define TEAM_HUMAN 3 // Human
- #define TEAM_MEDIC 4 // Human
- #define TEAM_ARMY 5 // Human
- // Weapons
- #define AK 30 // ak47
- #define DEAGLE 24 // Deagle
- #define TEC9 32 // TEC9
- #define M4 31 // M4
- #define SMG 28 // MICRO SMG
- #define NOWEAPON 0 // UNARMED
- #define KNIFE 4 // KNIFE
- #define CHAINSAW 9 // CHAINSAW
- #define SMG2 29 // SMG 2
- #define PISTOL 22 // 9mm
- #define SPISTOL 23 // silence 9MM
- #define SHOTGUN 25 // SHOTGUN
- #define SSHOTGUN 26 // Sawnoff SHOTGUN
- //Skins
- #define SKIN_C 137 // Charger
- #define SKIN_H 230 // hunter
- #define SKIN_Z 162 // Regular Zombie
- //Colors
- #define COLOR_YELLOW 0xFFFF00AA
- #define COLOR_WHITE 0xFFFFFFAA
- #define COLOR_BLUE 0x0000BBAA
- #define COLOR_LIGHTBLUE 0x33CCFFAA
- #define COLOR_ORANGE 0xFF9900AA
- #define COLOR_RED 0xAA3333AA
- #define COLOR_GREEN 0x33AA33AA
- #define Z_COLOR 0xFB0000FF
- #define H_COLOR 0x0000BBAA
- // Defines
- #define WEAPON_TYPE_NONE (0)
- #define WEAPON_TYPE_HEAVY (1)
- #define WEAPON_TYPE_LIGHT (2)
- #define WEAPON_TYPE_MELEE (3)
- #define TIMER 150000
- #define COLOR_GOLD 0xF6C861AA
- #define TimeLimit 360000
- #pragma tabsize 0
- #define RELEASED(%0) \
- (((newkeys & (%0)) != (%0)) && ((oldkeys & (%0)) == (%0)))
- #define PRESSED(%0) \
- (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
- //Forwards
- forward InfectedRandom();
- forward D1(playerid);
- forward D2(playerid);
- forward D3(playerid);
- forward DS(playerid);
- forward rMessage();
- forward NoZombieWeapons(playerid);
- forward Unfreeze(playerid);
- forward TurningInfected(playerid);
- forward Float:GetDistanceBetweenPlayers(p1,p2);
- forward GetClosestPlayer(p1);
- //Dialogs
- #define Dialog_Weaps 61 // Trader weapon shop
- //Varaibles
- new OldWeapon[MAX_PLAYERS];
- new HoldingWeapon[MAX_PLAYERS];
- new Text:HealthBar[MAX_PLAYERS];
- new InfectedT[MAX_PLAYERS];
- new rMessageList[][] =
- {
- "[Tip] Welcome to Frag gamers Zombie-Mod v3.0.",
- "[Tip] Warning: Military(army) people get extra 10 hp.",
- "[Tip] Visit our forums www.fraggamers.netii.net.",
- "[Tip] WARNING! Hunter Zombies jump high",
- "[Tip] This gamemode is based on Zombie VS Humans Fun game type.",
- "[Tip] Any further questions as a admin or type /help."
- };
- new rCheckList[sizeof(rMessageList)];
- new gTeam[MAX_PLAYERS];
- //PlayerInfo
- enum PlayerData
- {
- Logged,
- Registered,
- Level,
- Froze,
- Cash,
- Score,
- Colour,
- God,
- GodCar,
- Warnings,
- Kills,
- Deaths,
- InDuel,
- Duty,
- pRank,
- Privileges,
- isHuman,
- isZombie,
- PlayerY,
- };
- new PlayerInfo[MAX_PLAYERS][PlayerData];
- //Private Messages
- enum PM_Data
- {
- LastMSG,
- NoPM,
- };
- new PrivMSG[MAX_PLAYERS][PM_Data];
- //Countdown
- new CountDown = -1;
- //others
- new bool:swimming[MAX_PLAYERS];
- new SpectatedPlayer[MAX_PLAYERS];
- new bool:IsPlayerSpectating[MAX_PLAYERS];
- public OnFilterScriptInit()
- {
- print("\n--------------------------------------");
- print(" Admin System");
- print("--------------------------------------\n");
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- PrivMSG[i][LastMSG] = INVALID_PLAYER_ID;
- PrivMSG[i][NoPM] = 1;
- }
- }
- //FilterScriptInit Timers
- SetTimer("FAdminUpdate", 500, true);
- return 1;
- }
- public OnFilterScriptExit()
- {
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- PrivMSG[i][LastMSG] = INVALID_PLAYER_ID;
- PrivMSG[i][NoPM] = 1;
- }
- }
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- PlayerInfo[i][Logged] = 0;
- PlayerInfo[i][Registered] = 0;
- PlayerInfo[i][Level] = 0;
- PlayerInfo[i][Froze] = 0;
- PlayerInfo[i][Cash] = 0;
- PlayerInfo[i][Score] = 0;
- PlayerInfo[i][Colour] = 0;
- PlayerInfo[i][God] = 0;
- PlayerInfo[i][GodCar] = 0;
- PlayerInfo[i][Warnings] = 0;
- PlayerInfo[i][Kills] = 0;
- PlayerInfo[i][Deaths] = 0;
- PlayerInfo[i][InDuel] = 0;
- PlayerInfo[i][Duty] = 0;
- PlayerInfo[i][pRank] = 0;
- PlayerInfo[i][Privileges] = 0;
- }
- return 1;
- }
- //
- main()
- {
- print("\n****************************************");
- print(" Zombie-Mod - Kitten & willsuckformoney");
- print("([--------------------------------------])\n");
- }
- public OnGameModeInit()
- {
- SetGameModeText(" Zombie-Mod ");
- AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
- //AddPlayerClass(162, 0.0, 0.0, 0.0, 0.0, 0, 0, 0, 0, 0, 0);
- SetTimer("rMessage", TIMER, true);
- SetTimer("NoZombieWeapons",1000,true);
- SetTimer("PayRanks",600000,true);
- SetNameTagDrawDistance(5);
- SetTeamCount(2);
- ShowNameTags(1);
- ShowPlayerMarkers(0);
- UsePlayerPedAnims();
- AllowInteriorWeapons(1);
- DisableInteriorEnterExits();
- SetWorldTime(0);
- for(new i; i<MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- OnPlayerConnect(i);
- }
- }
- return 1;
- }
- public OnGameModeExit()
- {
- for(new i=0;i<MAX_PLAYERS;i++)
- if(IsPlayerConnected(i))
- StopPlayerHoldingObject(i);
- for(new i=0;i<MAX_PLAYERS;i++)
- if(IsPlayerConnected(i))
- StopPlayerHoldingObject(i);
- for(new i; i<MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- TextDrawDestroy(HealthBar[i]);
- }
- }
- return 1;
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
- SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
- SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
- return 1;
- }
- //
- public OnPlayerConnect(playerid)
- {
- #if defined USE_FLOGIN
- pInf(playerid);
- new n[MAX_PLAYER_NAME], file[256];
- GetPlayerName(playerid,n,sizeof(n));
- format(file,sizeof(file),"FAdmin/Users/%s.ini",n);
- if (!dini_Exists(file)) {
- //ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "F-Admin Register/Login", "Welcome, This Server is Using FAdmin Created By FrosTiC. Please Register Here.", "Register", "Leave");
- SendClientMessage(playerid,yellow,"You Are Not Registered, Please /register So Your Stats Will Save");
- }
- if(fexist(file)) {
- //ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "F-Admin Register/Login", "Welcome Back, This Name is Registered, Type in Your Password Below", "Login", "Leave");
- PlayerInfo[playerid][Registered] = 1;
- SendClientMessage(playerid,yellow,"You Are Registered, Please /login To Login");
- }
- SetTimerEx("SavePlayer",180000,true,"i",playerid);
- #endif
- HealthBar[playerid] = TextDrawCreate(549.000000,52.000000,"..........");
- TextDrawAlignment(HealthBar[playerid],1);
- TextDrawBackgroundColor(HealthBar[playerid],0x00ff00ff);
- TextDrawFont(HealthBar[playerid],3);
- TextDrawLetterSize(HealthBar[playerid],0.569999,2.549999);
- TextDrawColor(HealthBar[playerid],0x00ff0033);
- TextDrawSetOutline(HealthBar[playerid],1);
- TextDrawSetProportional(HealthBar[playerid],1);
- TextDrawSetShadow(HealthBar[playerid],1);
- SetPVarInt(playerid,"Alive",0);
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- new n[MAX_PLAYER_NAME], str[128];
- TextDrawDestroy(HealthBar[playerid]);
- #if defined USE_FLOGIN
- new file[256];
- GetPlayerName(playerid,n,sizeof(n));
- format(file,sizeof(file),"FAdmin/Users/%s.ini",n);
- dini_IntSet(file,"Logged",0);
- if(PlayerInfo[playerid][Froze] == 1) return dini_IntSet(file,"Froze",1);
- #endif
- switch (reason) {
- case 0: format(str, sizeof(str), "** %s (%d) has left the server (Timeout)", n, playerid);
- case 1: format(str, sizeof(str), "** %s (%d) has left the server (Leaving)", n, playerid);
- case 2: format(str, sizeof(str), "** %s (%d) has left the server (Kicked)", n, playerid);
- }
- SendClientMessageToAll(grey, str);
- SetPVarInt(playerid,"Alive",0);
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- SetPVarInt(playerid,"Alive",0);
- PlayerInfo[killerid][Kills]++;
- PlayerInfo[playerid][Deaths]--;
- SendDeathMessage(killerid, playerid, reason);
- SetPlayerScore(killerid,GetPlayerScore(killerid)+2);
- GivePlayerMoney(killerid, 15000);
- GameTextForPlayer(killerid, "~w~1+~n~~g~+$15000!!",6000,4);
- TogglePlayerSpectating(playerid, 1);
- PlayerSpectatePlayer(playerid, killerid);
- SetTimerEx("D1", 0, false,"d",playerid);
- TextDrawHideForPlayer(playerid,HealthBar[playerid]);
- if(PlayerInfo[playerid][Kills] == 25) return PlayerInfo[playerid][pRank] = 2;
- if(PlayerInfo[playerid][Kills] == 75) return PlayerInfo[playerid][pRank] = 3;
- if(PlayerInfo[playerid][Kills] == 150) return PlayerInfo[playerid][pRank] = 4;
- if(PlayerInfo[playerid][Kills] == 250) return PlayerInfo[playerid][pRank] = 5;
- if(PlayerInfo[playerid][Kills] == 400) return PlayerInfo[playerid][pRank] = 6;
- if(PlayerInfo[playerid][Kills] == 600) return PlayerInfo[playerid][pRank] = 7;
- if(PlayerInfo[playerid][Kills] == 750) return PlayerInfo[playerid][pRank] = 8;
- if(PlayerInfo[playerid][Kills] == 1000) return PlayerInfo[playerid][pRank] = 9;
- if(PlayerInfo[playerid][Kills] == 1300) return PlayerInfo[playerid][pRank] = 10;
- if(PlayerInfo[playerid][Kills] == 1650) return PlayerInfo[playerid][pRank] = 11;
- if(PlayerInfo[playerid][Kills] == 2050) return PlayerInfo[playerid][pRank] = 12;
- if(PlayerInfo[playerid][Kills] == 2500) return PlayerInfo[playerid][pRank] = 13;
- if(PlayerInfo[playerid][Kills] == 3000) return PlayerInfo[playerid][pRank] = 14;
- if(PlayerInfo[playerid][Kills] == 3550) return PlayerInfo[playerid][pRank] = 15;
- if(PlayerInfo[playerid][Kills] == 4200) return PlayerInfo[playerid][pRank] = 16;
- if(PlayerInfo[playerid][Kills] == 4950) return PlayerInfo[playerid][pRank] = 17;
- if(PlayerInfo[playerid][Kills] == 5700) return PlayerInfo[playerid][pRank] = 18;
- if(PlayerInfo[playerid][Kills] == 6500) return PlayerInfo[playerid][pRank] = 19;
- if(PlayerInfo[playerid][Kills] == 7550) return PlayerInfo[playerid][pRank] = 20;
- if(PlayerInfo[playerid][Kills] == 9000) return PlayerInfo[playerid][pRank] = 21;
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- SetPVarInt(playerid,"Alive",1);
- TextDrawSetString(HealthBar[playerid],"..........");
- TextDrawShowForPlayer(playerid,HealthBar[playerid]);
- if(PlayerInfo[playerid][isHuman] == 1) return SetPlayerHealth(playerid,100);
- if(PlayerInfo[playerid][pRank] == 1)
- {
- if(PlayerInfo[playerid][isZombie] == 1) return SetPlayerHealth(playerid,60);
- GivePlayerWeapon(playerid,SPISTOL,150);
- }
- else if(PlayerInfo[playerid][pRank] == 2)
- {
- if(PlayerInfo[playerid][isZombie] == 1) return SetPlayerHealth(playerid,65);
- GivePlayerWeapon(playerid,SPISTOL,200);
- }
- else if(PlayerInfo[playerid][pRank] == 3)
- {
- if(PlayerInfo[playerid][isZombie] == 1) return SetPlayerHealth(playerid,70);
- GivePlayerWeapon(playerid,SPISTOL,250);
- }
- else if(PlayerInfo[playerid][pRank] == 4)
- {
- if(PlayerInfo[playerid][isZombie] == 1) return SetPlayerHealth(playerid,75);
- GivePlayerWeapon(playerid,SPISTOL,300);
- }
- else if(PlayerInfo[playerid][pRank] == 5)
- {
- if(PlayerInfo[playerid][isZombie] == 1) return SetPlayerHealth(playerid,80);
- GivePlayerWeapon(playerid,PISTOL,150);
- SetPlayerSkillLevel(playerid,0,1);
- }
- else if(PlayerInfo[playerid][pRank] == 6)
- {
- if(PlayerInfo[playerid][isZombie] == 1) return SetPlayerHealth(playerid,85);
- GivePlayerWeapon(playerid,PISTOL,200);
- SetPlayerSkillLevel(playerid,0,1);
- }
- else if(PlayerInfo[playerid][pRank] == 7)
- {
- if(PlayerInfo[playerid][isZombie] == 1) return SetPlayerHealth(playerid,90);
- GivePlayerWeapon(playerid,PISTOL,250);
- SetPlayerSkillLevel(playerid,0,1);
- }
- else if(PlayerInfo[playerid][pRank] == 8)
- {
- if(PlayerInfo[playerid][isZombie] == 1) return SetPlayerHealth(playerid,95);
- GivePlayerWeapon(playerid,PISTOL,300);
- SetPlayerSkillLevel(playerid,0,1);
- }
- else if(PlayerInfo[playerid][pRank] == 9)
- {
- if(PlayerInfo[playerid][isZombie] == 1) return SetPlayerHealth(playerid,100);
- GivePlayerWeapon(playerid,PISTOL,350);
- SetPlayerSkillLevel(playerid,0,1);
- }
- else if(PlayerInfo[playerid][pRank] == 10)
- {
- if(PlayerInfo[playerid][isZombie] == 1)
- {
- SetPlayerHealth(playerid,100);
- SetPlayerArmour(playerid,5);
- }
- GivePlayerWeapon(playerid,SHOTGUN,150);
- SetPlayerSkillLevel(playerid,3,5);
- }
- else if(PlayerInfo[playerid][pRank] == 11)
- {
- if(PlayerInfo[playerid][isZombie] == 1)
- {
- SetPlayerHealth(playerid,100);
- SetPlayerArmour(playerid,5);
- }
- GivePlayerWeapon(playerid,SHOTGUN,150);
- SetPlayerSkillLevel(playerid,3,5);
- }
- else if(PlayerInfo[playerid][pRank] == 12)
- {
- if(PlayerInfo[playerid][isZombie] == 1)
- {
- SetPlayerHealth(playerid,100);
- SetPlayerArmour(playerid,10);
- }
- GivePlayerWeapon(playerid,SHOTGUN,200);
- SetPlayerSkillLevel(playerid,3,5);
- }
- else if(PlayerInfo[playerid][pRank] == 13)
- {
- if(PlayerInfo[playerid][isZombie] == 1)
- {
- SetPlayerHealth(playerid,100);
- SetPlayerArmour(playerid,15);
- }
- GivePlayerWeapon(playerid,SHOTGUN,250);
- SetPlayerSkillLevel(playerid,3,5);
- }
- else if(PlayerInfo[playerid][pRank] == 14)
- {
- if(PlayerInfo[playerid][isZombie] == 1)
- {
- SetPlayerHealth(playerid,100);
- SetPlayerArmour(playerid,20);
- }
- GivePlayerWeapon(playerid,SHOTGUN,300);
- SetPlayerSkillLevel(playerid,3,5);
- }
- else if(PlayerInfo[playerid][pRank] == 15)
- {
- if(PlayerInfo[playerid][isZombie] == 1)
- {
- SetPlayerHealth(playerid,100);
- SetPlayerArmour(playerid,25);
- }
- GivePlayerWeapon(playerid,SHOTGUN,350);
- SetPlayerSkillLevel(playerid,3,5);
- }
- else if(PlayerInfo[playerid][pRank] == 16)
- {
- if(PlayerInfo[playerid][isZombie] == 1)
- {
- SetPlayerHealth(playerid,100);
- SetPlayerArmour(playerid,30);
- }
- GivePlayerWeapon(playerid,DEAGLE,150);
- SetPlayerSkillLevel(playerid,2,5);
- }
- else if(PlayerInfo[playerid][pRank] == 17)
- {
- if(PlayerInfo[playerid][isZombie] == 1)
- {
- SetPlayerHealth(playerid,100);
- SetPlayerArmour(playerid,35);
- }
- GivePlayerWeapon(playerid,DEAGLE,200);
- SetPlayerSkillLevel(playerid,2,5);
- }
- else if(PlayerInfo[playerid][pRank] == 18)
- {
- if(PlayerInfo[playerid][isZombie] == 1)
- {
- SetPlayerHealth(playerid,100);
- SetPlayerArmour(playerid,40);
- }
- GivePlayerWeapon(playerid,DEAGLE,250);
- SetPlayerSkillLevel(playerid,2,5);
- }
- else if(PlayerInfo[playerid][pRank] == 19)
- {
- if(PlayerInfo[playerid][isZombie] == 1)
- {
- SetPlayerHealth(playerid,100);
- SetPlayerArmour(playerid,45);
- }
- GivePlayerWeapon(playerid,DEAGLE,300);
- SetPlayerSkillLevel(playerid,2,5);
- }
- else if(PlayerInfo[playerid][pRank] == 20)
- {
- if(PlayerInfo[playerid][isZombie] == 1)
- {
- SetPlayerHealth(playerid,100);
- SetPlayerArmour(playerid,50);
- GivePlayerWeapon(playerid,4,1);
- }
- GivePlayerWeapon(playerid,DEAGLE,350);
- SetPlayerSkillLevel(playerid,2,5);
- }
- else if(PlayerInfo[playerid][pRank] == 21)
- {
- if(PlayerInfo[playerid][isZombie] == 1)
- {
- SetPlayerHealth(playerid,100);
- SetPlayerArmour(playerid,100);
- GivePlayerWeapon(playerid,4,1);
- }
- GivePlayerWeapon(playerid,AK,500);
- GivePlayerWeapon(playerid,DEAGLE,500);
- GivePlayerWeapon(playerid,M4,500);
- GivePlayerWeapon(playerid,KNIFE,500);
- GivePlayerWeapon(playerid,CHAINSAW,500);
- GivePlayerWeapon(playerid,SMG2,500);
- GivePlayerWeapon(playerid,PISTOL,500);
- GivePlayerWeapon(playerid,SSHOTGUN,500);
- SetPlayerArmour(playerid,10.5);
- }
- return 1;
- }
- public OnPlayerText(playerid, text[])
- {
- new senderName[MAX_PLAYER_NAME];
- new pstring[256];
- GetPlayerName(playerid, senderName, sizeof(senderName));
- format(pstring, sizeof(pstring),"[ID:%d]:%s", playerid, text);
- SendPlayerMessageToAll(white, pstring);
- if(text[1] == '/' && text[2] == 'q') {
- new string[128]; GetPlayerName(playerid,string,sizeof(string));
- format(string,sizeof(string),"%s has attempted to make a /q joke (%s)",string, text); SendAdminMessage(blue, string);
- return 0;
- }
- if(text[0] == '#' && PlayerInfo[playerid][Level] >= 1) {
- new string[128]; GetPlayerName(playerid,string,sizeof(string));
- format(string,sizeof(string),"Admin Chat: %s: %s",string,text[1]); SendAdminMessage(gold, string);
- return 0;
- }
- if(strfind(text, "~", true) != -1 || !text[0]) return 0;
- SetPVarInt(playerid,"textspam",GetPVarInt(playerid,"textspam")+1);
- SetTimerEx("clearspam",5000,false,"d",playerid);
- if(GetPVarInt(playerid,"textspam") == 5) {
- new string[128], tname[MAX_PLAYER_NAME];
- GetPlayerName(playerid,tname,sizeof(tname));
- format(string,sizeof(string),"F-Anti: %s (%d) has been Kicked for Excess Flood (Text Spam)", tname,playerid);
- SendClientMessageToAll(gold,string);
- CallRemoteFunction("KickIncrease","d",playerid);
- Kick(playerid);
- }
- else if(GetPVarInt(playerid,"textspam") == 4) {
- SendClientMessage(playerid,red,"stop spamming or you will be kicked! (wait 5 seconds)");
- return 0;
- }
- return 1;
- }
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
- {//Controls for Spectate - Numpad4 - Previous || NumPAD 6 - Next
- if(newkeys == KEY_ANALOG_RIGHT && IsPlayerSpectating[playerid]) {
- SpectatePrevious(playerid);
- }
- if(newkeys == KEY_ANALOG_LEFT && IsPlayerSpectating[playerid]) {
- SpectateNext(playerid);
- }
- if(gTeam[playerid] != TEAM_HUNTER)
- {
- if(newkeys == KEY_JUMP)
- {
- new Float:X1 , Float:Y1 , Float:Z1 ;
- GetPlayerVelocity ( playerid, X1, Y1, Z1 );
- SetPlayerVelocity ( playerid, X1, Y1, Z1 + 10.5 );
- }
- }
- if(newkeys & KEY_WALK)
- {
- if(gTeam[playerid] == TEAM_ZOMBIE || TEAM_CHARGER || TEAM_HUNTER)
- {
- if(GetPlayerWeapon(playerid) == 4 || GetPlayerWeapon(playerid) == 9)
- {
- new victimid = GetClosestPlayer(playerid);
- foreach(Player, i)
- {
- if(i != playerid)
- {
- if(gTeam[i] == TEAM_HUMAN || gTeam[i] == TEAM_MEDIC || gTeam[i] == TEAM_ARMY)
- {
- new Float:X,Float:Y,Float:Z;
- GetPlayerPos(i, X,Y,Z);
- if(IsPlayerAimingAt(playerid, X,Y,Z,1))
- {
- printf("Working");
- new Float:health;
- GetPlayerHealth(victimid, health);
- SetPlayerHealth(victimid, health - 35.0);
- }
- }
- }
- }
- }
- }
- }
- return 1;
- }
- public OnPlayerUpdate(playerid)
- {
- if(GetPlayerState(playerid)==PLAYER_STATE_ONFOOT)
- {
- new weaponid=GetPlayerWeapon(playerid),oldweapontype=GetWeaponType(OldWeapon[playerid]);
- new weapontype=GetWeaponType(weaponid);
- if(HoldingWeapon[playerid]==weaponid) return StopPlayerHoldingObject(playerid);
- if(OldWeapon[playerid]!=weaponid)
- {
- new modelid=GetWeaponModel(OldWeapon[playerid]);
- if(modelid!=0 && oldweapontype!=WEAPON_TYPE_NONE && oldweapontype!=weapontype)
- {
- HoldingWeapon[playerid]=OldWeapon[playerid];
- switch(oldweapontype)
- {
- case WEAPON_TYPE_LIGHT:
- SetPlayerHoldingObject(playerid, modelid, 8,0.0,-0.1,0.15, -100.0, 0.0, 0.0);
- case WEAPON_TYPE_MELEE:
- SetPlayerHoldingObject(playerid, modelid, 7,0.0,0.0,-0.18, 100.0, 45.0, 0.0);
- case WEAPON_TYPE_HEAVY:
- SetPlayerHoldingObject(playerid, modelid, 1, 0.2,-0.125,-0.1,0.0,25.0,180.0);
- }
- }
- }
- if(oldweapontype!=weapontype)
- OldWeapon[playerid]=weaponid;
- }
- new Float:Health;
- GetPlayerHealth(playerid,Health);
- if(Health >= 90)
- {
- TextDrawSetString(HealthBar[playerid],"..........");
- return 1;
- }
- if(Health >= 80)
- {
- TextDrawSetString(HealthBar[playerid],".........");
- return 1;
- }
- if(Health >= 70)
- {
- TextDrawSetString(HealthBar[playerid],"........");
- return 1;
- }
- if(Health >= 60)
- {
- TextDrawSetString(HealthBar[playerid],".......");
- return 1;
- }
- if(Health >= 50)
- {
- TextDrawSetString(HealthBar[playerid],"......");
- return 1;
- }
- if(Health >= 40)
- {
- TextDrawSetString(HealthBar[playerid],".....");
- return 1;
- }
- if(Health >= 30)
- {
- TextDrawSetString(HealthBar[playerid],"....");
- return 1;
- }
- if(Health >= 20)
- {
- TextDrawSetString(HealthBar[playerid],"...");
- return 1;
- }
- if(Health >= 10)
- {
- TextDrawSetString(HealthBar[playerid],"..");
- return 1;
- }
- if(Health > 0)
- {
- TextDrawSetString(HealthBar[playerid],".");
- return 1;
- }
- return 1;
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- if(oldstate==PLAYER_STATE_ONFOOT)
- {
- StopPlayerHoldingObject(playerid);
- OldWeapon[playerid]=0;
- HoldingWeapon[playerid]=0;
- }
- if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER) {
- for(new i=0; i<MAX_PLAYERS; i++) {
- if(IsPlayerConnected(i) && IsPlayerSpectating[i] && SpectatedPlayer[i] == playerid) {
- new str[128];
- PlayerSpectateVehicle(i, GetPlayerVehicleID(SpectatedPlayer[i]));
- format(str, 128, "Spectating type changed, %s entered a vehicle.", GetName(playerid));
- SendClientMessage(i, pink, str);
- }
- }
- }
- if(newstate == PLAYER_STATE_ONFOOT) {
- for(new i=0; i<MAX_PLAYERS; i++) {
- if(IsPlayerConnected(i) && IsPlayerSpectating[i] && SpectatedPlayer[i] == playerid) {
- new str[128];
- PlayerSpectatePlayer(i, SpectatedPlayer[i]);
- format(str, 128, "Spectating type changed, %s left the vehicle.", GetName(playerid));
- SendClientMessage(i, pink, str);
- }
- }
- }
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- #if defined USE_FLOGIN
- if(dialogid == 1) {
- new file[256],n[MAX_PLAYER_NAME],string[128],tmp3[100], skin;
- GetPlayerName(playerid,n,MAX_PLAYER_NAME);
- format(file,sizeof(file),"FAdmin/Users/%s.ini",n);
- skin = GetPlayerSkin(playerid);
- if(!response) return SendClientMessage(playerid,yellow,"/register If You Ever Decide That You Want To Register");
- if (!strlen(inputtext)) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "F-Admin Register/Login", "Welcome, This Server is Using FAdmin Created By FrosTiC. Please Register Here.", "Register", "Leave");
- dini_Create(file);
- GetPlayerIp(playerid,tmp3,100); dini_Set(file,"ip",tmp3);
- dini_Set(file,"Password",inputtext); dini_IntSet(file,"Registered",1);
- dini_IntSet(file,"Logged",0); dini_IntSet(file,"Level",0);
- dini_IntSet(file,"Cash",0); dini_IntSet(file,"Score",0);
- dini_IntSet(file,"Froze",0); dini_IntSet(file,"Banned",0);
- dini_IntSet(file,"Kills",0); dini_IntSet(file,"Deaths",0);
- dini_IntSet(file,"Skin",skin); dini_IntSet(file,"Rank",0);
- PlayerInfo[playerid][Registered] = 1;
- format(string, 128, "Congratulations, You Have Registered With Nickname %s With Password %s", n, inputtext);
- SendClientMessage(playerid,yellow,string);
- }
- if (dialogid == 2) {
- new file[256],n[MAX_PLAYER_NAME];
- GetPlayerName(playerid,n,MAX_PLAYER_NAME);
- format(file,sizeof(file),"FAdmin/Users/%s.ini",n);
- if(!response) return SendClientMessage(playerid,yellow,"/login If You Ever Decide That You Want To Login");
- if (!strlen(inputtext)) return ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "F-Admin Register/Login", "Welcome Back, This Name is Registered, Type in Your Password Below", "Login", "Leave");
- new pass[256];
- pass = dini_Get(file,"Password");
- if(strcmp(inputtext,pass,false) != 0) {
- SendClientMessage(playerid,yellow,"Wrong Password!");
- ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "F-Admin Register/Login", "Welcome Back, This Name is Registered, Type in Your Password Below", "Login", "Leave");
- } else {
- LoginPlayer(playerid);
- SendClientMessage(playerid,yellow,"You Have Logged In and Your Stats Has Been Loaded");
- }
- }
- #endif
- if(dialogid==Dialog_Weaps)
- {
- if(response)
- {
- if(listitem==0)
- {
- if(GetPlayerMoney(playerid) < 2500)
- {
- SendClientMessage(playerid,COLOR_RED, "The Uzi costs $2500.You haven't enough money!");
- }
- GivePlayerMoney(playerid, 2500);
- SendClientMessage(playerid, COLOR_GREEN, "You bought Uzi!");
- GivePlayerWeapon(playerid, 28, 150);
- }
- if(listitem==1)
- {
- if(GetPlayerMoney(playerid) < 10000)
- {
- SendClientMessage(playerid,COLOR_RED, "The Ak47 costs $1800.You haven't enough money!");
- }
- GivePlayerMoney(playerid, -10000);
- SendClientMessage(playerid, COLOR_GREEN, "You bought Ak47!");
- GivePlayerWeapon(playerid, 30, 150);
- }
- if(listitem==2)
- {
- if(GetPlayerMoney(playerid) < 20000)
- {
- SendClientMessage(playerid,COLOR_RED, "The Sawn-Off costs $20000.You haven't enough money!");
- }
- GivePlayerMoney(playerid, -20000);
- SendClientMessage(playerid, COLOR_GREEN, "You bought Sawn-Off!");
- GivePlayerWeapon(playerid, 26, 150);
- }
- if(listitem==3)
- {
- if(GetPlayerMoney(playerid) < 3500)
- {
- SendClientMessage(playerid,COLOR_RED, "The Tec9 costs $3500.You haven't enough money!");
- }
- GivePlayerMoney(playerid, -3500);
- SendClientMessage(playerid, COLOR_GREEN, "You bought Tec9!");
- GivePlayerWeapon(playerid, 32, 150);
- }
- if(listitem==4)
- {
- if(GetPlayerMoney(playerid) < 20999)
- {
- SendClientMessage(playerid,COLOR_RED, "The SMG costs $20999.You haven't enough money!");
- }
- GivePlayerMoney(playerid, -20999);
- SendClientMessage(playerid, COLOR_GREEN, "You bought SMG!");
- GivePlayerWeapon(playerid, 29, 150);
- }
- if(listitem==5)
- {
- if(GetPlayerMoney(playerid) < 25000)
- {
- SendClientMessage(playerid,COLOR_RED, "The Combat Shotgun costs $34500.You haven't enough money!");
- }
- GivePlayerMoney(playerid, -25000);
- SendClientMessage(playerid, COLOR_GREEN, "You bought Combat Shotgun!");
- GivePlayerWeapon(playerid, 27, 150);
- }
- if(listitem==6)
- {
- if(GetPlayerMoney(playerid) < 1500000)
- {
- SendClientMessage(playerid,COLOR_RED,"The Rocket Launcher costs $150000!You haven't enough money!");
- }
- GivePlayerMoney(playerid,-1500000);
- SendClientMessage(playerid,COLOR_GREEN,"You bought Rocket Launcher!");
- GivePlayerWeapon(playerid,35,15);
- }
- if(listitem==7)
- {
- if(GetPlayerMoney(playerid) < 2000)
- {
- SendClientMessage(playerid,COLOR_RED,"You don't have enough money for heal yourself!");
- }
- GivePlayerMoney(playerid,-2000);
- SetPlayerHealth(playerid,100);
- SetPlayerArmour(playerid,100);
- }
- }
- }
- return 1;
- }
- /*==============================================================================
- =============================Timers/Extras======================================
- ================================================================================*/
- stock pName(playerid)
- {
- new aname[MAX_PLAYER_NAME];
- GetPlayerName(playerid, aname, sizeof(aname));
- return aname;
- }
- stock IsNumeric(string[])
- {
- for (new i = 0, j = strlen(string); i < j; i++)
- {
- if (string[i] > '9' || string[i] < '0') return 0;
- }
- return 1;
- }
- stock GetWeaponIDFromName(WeaponName[])
- {
- if(strfind("molotov",WeaponName,true)!=-1) return 18;
- for(new i = 0; i <= 46; i++)
- {
- switch(i)
- {
- case 0,19,20,21,44,45: continue;
- default:
- {
- new name[32]; GetWeaponName(i,name,32);
- if(strfind(name,WeaponName,true) != -1) return i;
- }
- }
- }
- return -1;
- }
- stock IsValidWeapon(weaponid)
- {
- if (weaponid > 0 && weaponid < 19 || weaponid > 21 && weaponid < 47) return 1;
- return 0;
- }
- stock IsValidSkin(SkinID)
- {
- if((SkinID == 0)||(SkinID == 7)||(SkinID >= 9 && SkinID <= 41)||(SkinID >= 43 && SkinID <= 64)||(SkinID >= 66 && SkinID <= 73)||(SkinID >= 75 && SkinID <= 85)||(SkinID >= 87 && SkinID <= 118)||(SkinID >= 120 && SkinID <= 148)||(SkinID >= 150 && SkinID <= 207)||(SkinID >= 209 && SkinID <= 264)||(SkinID >= 274 && SkinID <= 288)||(SkinID >= 290 && SkinID <= 299)) return true;
- else return false;
- }
- stock SendERROR(playerid, error)
- {
- if(error == 1) return SendClientMessage(playerid,red,"ERROR: You are not a high enough level to use this command");
- if(error == 2) return SendClientMessage(playerid,red,"ERROR: Player is not connected");
- if(error == 3) return SendClientMessage(playerid,red,"ERROR: Player is not connected or is highest level admin");
- if(error == 4) return SendClientMessage(playerid,red,"ERROR: You are not in a vehicle");
- if(error == 5) return SendClientMessage(playerid,red,"ERROR: Player not Logged In");
- if(error == 6) return SendClientMessage(playerid,red,"ERROR: You are not logged in");
- if(error == 7) return SendClientMessage(playerid,red,"ERROR: Player is Not Alive (Dead or Hasn't Spawned)");
- return 1;
- }
- #if defined USE_FLOGIN
- stock pInf(playerid)
- {
- PlayerInfo[playerid][Froze] = 0; PlayerInfo[playerid][Duty] = 0;
- PlayerInfo[playerid][Logged] = 0; PlayerInfo[playerid][Registered] = 0;
- PlayerInfo[playerid][Level] = 0; PlayerInfo[playerid][Cash] = 0;
- PlayerInfo[playerid][Score] = 0; PlayerInfo[playerid][God] = 0;
- PlayerInfo[playerid][GodCar] = 0; PlayerInfo[playerid][Warnings] = 0;
- PlayerInfo[playerid][Kills] = 0; PlayerInfo[playerid][Deaths] = 0;
- PlayerInfo[playerid][InDuel] = 0; PlayerInfo[playerid][pRank] = 1;
- PlayerInfo[playerid][Privileges] = 0; PlayerInfo[playerid][isHuman] = 0;
- PlayerInfo[playerid][isZombie] = 0; PlayerInfo[playerid][PlayerY] = 0;
- PrivMSG[playerid][LastMSG] = INVALID_PLAYER_ID;
- PrivMSG[playerid][NoPM] = 1;
- return 1;
- }
- #endif
- stock SendAdminMessage(color,const string[])
- {
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i) == 1) if(PlayerInfo[i][Level] >= 1) SendClientMessage(i, color, string);
- }
- return 1;
- }
- stock FAmmo(playerid)
- {
- new slot, weap, ammo;
- for (slot = 0; slot < 14; slot++)
- {
- GetPlayerWeaponData(playerid, slot, weap, ammo);
- if(IsValidWeapon(weap))
- {
- GivePlayerWeapon(playerid, weap, 99999);
- }
- }
- return 1;
- }
- stock IsPlayerOnFoot(playerid)
- {
- if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT) return 1;
- return 0;
- }
- stock IsPlayerAlive(playerid)
- {
- if(GetPVarInt(playerid, "Alive") == 1) return 1;
- return 0;
- }
- stock IsPlayerSwimming(playerid)
- {
- if(swimming[playerid]) return 1;
- return 0;
- }
- stock GetName(i)
- {
- new name[24];
- GetPlayerName(i, name, 24);
- return name;
- }
- stock PlayerType(Type)
- {
- if(Type < 1 || Type > 6) return false;
- if(Type == 1)
- {
- PlayerInfo[playerid][PlayerY] = ZOMBIE;
- PlayerInfo[playerid][isZombie] = true;
- PlayerInfo[playerid][isHuman] = false;
- }
- else if(Type == 2)
- {
- PlayerInfo[playerid][PlayerY] = HUNTER;
- PlayerInfo[playerid][isZombie] = true;
- PlayerInfo[playerid][isHuman] = false;
- }
- else if(Type == 3)
- {
- PlayerInfo[playerid][PlayerY] = CHARGER;
- PlayerInfo[playerid][isZombie] = true;
- PlayerInfo[playerid][isHuman] = false;
- }
- else if(Type == 4)
- {
- PlayerInfo[playerid][PlayerY] = HUMAN;
- PlayerInfo[playerid][isHuman] = true;
- PlayerInfo[playerid][isZombie] = false;
- }
- else if(Type == 5)
- {
- PlayerInfo[playerid][PlayerY] = MEDIC;
- PlayerInfo[playerid][isHuman] = true;
- PlayerInfo[playerid][isZombie] = false;
- }
- else if(Type == 6)
- {
- PlayerInfo[playerid][PlayerY] = ARMY;
- PlayerInfo[playerid][isHuman] = true;
- PlayerInfo[playerid][isZombie] = false;
- }
- return 1;
- }
- stock Zombie(playerid)
- {
- ResetPlayerWeapons(playerid);
- SetPlayerTeam(playerid,0);
- SetPlayerColor(playerid,Z_COLOR);
- SetPlayerHealth(playerid,50);
- SetPlayerWeather(playerid,32);
- SetPlayerTime(playerid,24,0);
- GameTextForPlayer(playerid,"~r~Eat~n~~w~THE~n~~p~HUMANS~n~~w~BRAINS",6000,4);
- GivePlayerWeapon(playerid,KNIFE,500);
- new zskin = random(3);
- switch(zskin)
- {
- case 0:{SetPlayerSkin(playerid,SKIN_H); SetPlayerTeam(playerid,0); SendClientMessage(playerid,COLOR_GREEN,"Zombie Class: Hunter Powers: Jump height");}
- case 1:{SetPlayerSkin(playerid,SKIN_Z); SetPlayerTeam(playerid,0); SendClientMessage(playerid,COLOR_GREEN,"Zombie Class: Regular Zombie Powers: none");}
- case 2:{SetPlayerSkin(playerid,SKIN_C); SetPlayerTeam(playerid,0); SendClientMessage(playerid,COLOR_GREEN,"Zombie Class: Charger Powers: none");}
- }
- new RandomZWep = random(4);
- switch(RandomZWep)
- {
- case 0: GivePlayerWeapon(playerid,KNIFE,1);
- case 1: GivePlayerWeapon(playerid,CHAINSAW,1);
- case 2: GivePlayerWeapon(playerid,CHAINSAW,1); // added this so it doesnt only give knife
- case 3: GivePlayerWeapon(playerid,KNIFE,1); // added this so is doesnt only give knife
- }
- SendClientMessage(playerid,COLOR_RED,"--------INFECTION---------------------------------");
- SendClientMessage(playerid,COLOR_WHITE,"--------------------------------------------------");
- SendClientMessage(playerid,COLOR_WHITE,"--------------------------------------------------");
- SendClientMessage(playerid,COLOR_WHITE,"USE LEFT ALT TO MAKE HUMANS LOSE HP 35 HP Per hit");
- SendClientMessage(playerid,COLOR_WHITE,"--------------------------------------------------");
- SendClientMessage(playerid,COLOR_WHITE,"---------------------------------------------------");
- }
- stock Human(playerid)
- {
- ResetPlayerWeapons(playerid);
- SetPlayerTeam(playerid,1);
- SetPlayerColor(playerid,H_COLOR);
- SetPlayerHealth( playerid , 110 );
- SetPlayerWeather(playerid,32);
- GameTextForPlayer(playerid,"~r~GO~n~~w~SAVE~n~~p~THE~n~~w~WORLD",6000,4);
- new RandomSkinNClass = random(8);
- switch(RandomSkinNClass)
- {
- case 0:{SetPlayerSkin(playerid,275); SetPlayerTeam(playerid,3); SendClientMessage(playerid,COLOR_GREEN,"Human Class: Medic Power: Heal humans "); }
- case 1:{SetPlayerSkin(playerid,274); SetPlayerTeam(playerid,3); SendClientMessage(playerid,COLOR_GREEN,"Human Class: Medic Power: Heal humans "); }
- case 2:{SetPlayerSkin(playerid,2); SetPlayerTeam(playerid,3); SendClientMessage(playerid,COLOR_GREEN,"Human Class: Human Power: None "); }
- case 3:{SetPlayerSkin(playerid,252); SetPlayerTeam(playerid,3); SendClientMessage(playerid,COLOR_GREEN,"Human Class: Human Power: None "); }
- case 4:{SetPlayerSkin(playerid,104); SetPlayerTeam(playerid,3); SendClientMessage(playerid,COLOR_GREEN,"Human Class: Human Power: None "); }
- case 5:{SetPlayerSkin(playerid,93); SetPlayerTeam(playerid,3); SendClientMessage(playerid,COLOR_GREEN,"Human Class: Human Power: None ");}
- case 6:{SetPlayerSkin(playerid,287); SetPlayerTeam(playerid,3); SendClientMessage(playerid,COLOR_GREEN,"Human Class: Military (army) Power: Extra HP +10 hp"); SetPlayerHealth(playerid,110); }
- case 7:{SetPlayerSkin(playerid,285); SetPlayerTeam(playerid,3); SendClientMessage(playerid,COLOR_GREEN,"Human Class: Military (army) Power: Extra HP +10 hp"); SetPlayerHealth(playerid,110); }
- }
- }
- stock TurningInfected(playerid)
- {
- foreach(Player,i)
- {
- Zombie(i);
- KillTimer(InfectedT[i]);
- }
- return 1;
- }
- stock Float:GetDistanceBetweenPlayers(p1,p2)
- {
- new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
- if(!IsPlayerConnected(p1) || !IsPlayerConnected(p2))
- {
- return -1.00;
- }
- GetPlayerPos(p1,x1,y1,z1);
- GetPlayerPos(p2,x2,y2,z2);
- return floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
- }
- stock GetClosestPlayer(p1)
- {
- new x,Float:dis,Float:dis2,player;
- player = -1;
- dis = 99999.99;
- for (x=0;x<MAX_PLAYERS;x++)
- {
- if(IsPlayerConnected(x))
- {
- if(x != p1)
- {
- dis2 = GetDistanceBetweenPlayers(x,p1);
- if(dis2 < dis && dis2 != -1.00)
- {
- dis = dis2;
- player = x;
- }
- }
- }
- }
- return player;
- }
- stock IsPlayerBehindPlayer(playerid, targetid, Float:Offset)
- {
- new
- Float:pa,
- Float:ta;
- if(!IsPlayerConnected(playerid) || !IsPlayerConnected(targetid)) return 0;
- GetPlayerFacingAngle(playerid, pa);
- GetPlayerFacingAngle(targetid, ta);
- if(AngleInRangeOfAngle(pa, ta, dOffset) && IsPlayerFacingPlayer(playerid, targetid, dOffset)) return true;
- return false;
- }
- Float:DistanceCameraTargetToLocation(Float:CamX, Float:CamY, Float:CamZ, Float:ObjX, Float:ObjY, Float:ObjZ, Float:FrX, Float:FrY, Float:FrZ)
- {
- new Float:TGTDistance;
- TGTDistance = floatsqroot((CamX - ObjX) * (CamX - ObjX) + (CamY - ObjY) * (CamY - ObjY) + (CamZ - ObjZ) * (CamZ - ObjZ));
- new Float:tmpX, Float:tmpY, Float:tmpZ;
- tmpX = FrX * TGTDistance + CamX;
- tmpY = FrY * TGTDistance + CamY;
- tmpZ = FrZ * TGTDistance + CamZ;
- return floatsqroot((tmpX - ObjX) * (tmpX - ObjX) + (tmpY - ObjY) * (tmpY - ObjY) + (tmpZ - ObjZ) * (tmpZ - ObjZ));
- }
- stock IsPlayerAimingAt(playerid, Float:x, Float:y, Float:z, Float:radius)
- {
- new Float:cx,Float:cy,Float:cz,Float:fx,Float:fy,Float:fz;
- GetPlayerCameraPos(playerid, cx, cy, cz);
- GetPlayerCameraFrontVector(playerid, fx, fy, fz);
- return (radius >= DistanceCameraTargetToLocation(cx, cy, cz, x, y, z, fx, fy, fz));
- }
- /*==============================================================================
- =============================CallBacks<-->======================================
- ================================================================================*/
- forward GodUpdate(playerid);
- public GodUpdate(playerid)
- {
- if(PlayerInfo[playerid][God] == 1) {
- SetPlayerHealth(playerid,100000);
- }
- if(PlayerInfo[playerid][GodCar] == 1) {
- new Veh = GetPlayerVehicleID(playerid);
- RepairVehicle(Veh);
- }
- return 1;
- }
- forward countdown();
- public countdown()
- {
- if(CountDown==6) GameTextForAll("~b~~h~~h~Starting...",1000,6);
- CountDown--;
- if(CountDown==0)
- {
- GameTextForAll("~g~~h~~h~GO!",1000,6);
- CountDown = -1;
- for(new i = 0; i < MAX_PLAYERS; i++) {
- TogglePlayerControllable(i,true);
- PlayerPlaySound(i, 1057, 0.0, 0.0, 0.0);
- }
- return 0;
- }
- else
- {
- new text[7]; format(text,sizeof(text),"~w~%d",CountDown);
- for(new i = 0; i < MAX_PLAYERS; i++) {
- PlayerPlaySound(i, 1056, 0.0, 0.0, 0.0);
- }
- GameTextForAll(text,1000,6);
- }
- SetTimer("countdown",1000,0);
- return 0;
- }
- forward clearspam(playerid);
- public clearspam(playerid)
- {
- SetPVarInt(playerid,"textspam",0);
- }
- #if defined USE_FLOGIN
- LoginPlayer(playerid)
- {
- new file[256], n[MAX_PLAYER_NAME]; GetPlayerName(playerid,n,sizeof(n)); format(file,sizeof(file),"FAdmin/Users/%s.ini",n);
- PlayerInfo[playerid][Logged] = 1;
- PlayerInfo[playerid][Level] = dini_Int(file,"Level");
- PlayerInfo[playerid][Froze] = dini_Int(file,"Froze");
- PlayerInfo[playerid][Colour] = dini_Int(file,"Colour");
- PlayerInfo[playerid][Kills] = dini_Int(file,"Kills");
- PlayerInfo[playerid][Deaths] = dini_Int(file,"Deaths");
- PlayerInfo[playerid][pRank] = dini_Int(file,"Rank");
- ResetPlayerMoney(playerid); GivePlayerMoney(playerid, dini_Int(file,"Cash") );
- SetPlayerScore(playerid, dini_Int(file,"Score") );
- }
- forward SavePlayer(playerid);
- public SavePlayer(playerid)
- {
- new file[256], n[MAX_PLAYER_NAME], level, cash, score, color; level = PlayerInfo[playerid][Level], cash = GetPlayerMoney(playerid), score = GetPlayerScore(playerid), color = GetPlayerColor(playerid);
- new kills = PlayerInfo[playerid][Kills], deaths = PlayerInfo[playerid][Deaths];
- GetPlayerName(playerid,n,sizeof(n)); format(file,sizeof(file),"FAdmin/Users/%s.ini",n);
- dini_IntSet(file,"Level",level); dini_IntSet(file,"Cash",cash);
- dini_IntSet(file,"Score",score); dini_IntSet(file,"Colour",color);
- dini_IntSet(file,"Kills",kills); dini_IntSet(file,"Deaths",deaths);
- dini_IntSet(file,"Rank",PlayerInfo[playerid][pRank]);
- }
- #endif
- forward Freeze(id);
- public Freeze(id)
- {
- new n[MAX_PLAYER_NAME]; GetPlayerName(id,n,sizeof(n));
- new file[256]; format(file,sizeof(file),"FAdmin/Users/%s.ini",n);
- if(PlayerInfo[id][Froze] == 1) {
- TogglePlayerControllable(id, 1);
- SendClientMessage(id,lightblue,"You been auto unfrozed.");
- PlayerInfo[id][Froze] = 0;
- dini_IntSet(file,"Froze",0);
- }
- return 1;
- }
- forward FAdminUpdate(playerid);
- public FAdminUpdate(playerid)
- {
- if(GetPlayerAnimationIndex(playerid)) {
- new animlib[32];
- new animname[32];
- GetAnimationName(GetPlayerAnimationIndex(playerid),animlib,32,animname,32);
- if(strcmp(animlib, "SWIM", true) == 0 && !swimming[playerid]) {
- swimming[playerid] = true;
- } else if(strcmp(animlib, "SWIM", true) != 0 && swimming[playerid] && strfind(animname, "jump", true) == -1) {
- swimming[playerid] = false;
- }
- } else if(swimming[playerid]) {
- swimming[playerid] = false;
- }
- return 1;
- }
- forward SpectateOn(playerid);
- public SpectateOn(playerid)
- {
- TogglePlayerSpectating(playerid, 1);
- for(new i=0; i<MAX_PLAYERS; i++) {
- if(!IsPlayerConnected(i)) continue;
- SpectatedPlayer[playerid] = i;
- PlayerSpectatePlayer(playerid, i);
- }
- IsPlayerSpectating[playerid] = true;
- new str[128];
- format(str, 128, "You are now spectating %s (ID:%d).", GetName(SpectatedPlayer[playerid]), SpectatedPlayer[playerid]);
- SendClientMessage(playerid, pink, str);
- format(str,128,"~w~~n~~n~%s ~g~Money - $%d ~b~score - %d ~n~~w~Spectation - ~g~on",GetName(SpectatedPlayer[playerid]),GetPlayerMoney(SpectatedPlayer[playerid]),GetPlayerScore(SpectatedPlayer[playerid]));
- GameTextForPlayer(playerid,str,10000,3);
- }
- forward SpectateOff(playerid);
- public SpectateOff(playerid)
- {
- TogglePlayerSpectating(playerid, 0);
- SpectatedPlayer[playerid] = 0;
- IsPlayerSpectating[playerid] = false;
- SendClientMessage(playerid, pink, "You stopped spectating.");
- }
- forward SpectateNext(playerid);
- public SpectateNext(playerid)
- {
- SpectatedPlayer[playerid]++;
- for(new i=SpectatedPlayer[playerid]; i<MAX_PLAYERS; i++) {
- if(!IsPlayerConnected(i)) continue;
- if(IsPlayerInAnyVehicle(i)) {
- PlayerSpectateVehicle(playerid, GetPlayerVehicleID(i));
- } else {
- PlayerSpectatePlayer(playerid, i);
- }
- SpectatedPlayer[playerid] = i;
- break;
- }
- new str[128];
- format(str, 128, "You are now spectating %s (ID:%d).", GetName(SpectatedPlayer[playerid]), SpectatedPlayer[playerid]);
- SendClientMessage(playerid, pink, str);
- }
- forward SpectatePrevious(playerid);
- public SpectatePrevious(playerid)
- {
- SpectatedPlayer[playerid]--;
- for(new i=SpectatedPlayer[playerid]; i>-1; i--) {
- if(!IsPlayerConnected(i)) continue;
- if(IsPlayerInAnyVehicle(i)) {
- PlayerSpectateVehicle(playerid, GetPlayerVehicleID(i));
- } else {
- PlayerSpectatePlayer(playerid, i);
- }
- SpectatedPlayer[playerid] = i;
- break;
- }
- new str[128];
- format(str, 128, "You are now spectating %s (ID:%d).", GetName(SpectatedPlayer[playerid]), SpectatedPlayer[playerid]);
- SendClientMessage(playerid, pink, str);
- }
- forward PayRanks(playerid);
- public PayRanks(playerid)
- {
- new pMoney = GetPlayerMoney(playerid);
- if(PlayerInfo[playerid][pRank] >= 1)
- {
- GivePlayerMoney(playerid,pMoney+5000);
- }
- if(PlayerInfo[playerid][pRank] >= 5)
- {
- GivePlayerMoney(playerid,pMoney+7500);
- }
- if(PlayerInfo[playerid][pRank] >= 10)
- {
- GivePlayerMoney(playerid,pMoney+10000);
- }
- if(PlayerInfo[playerid][pRank] >= 15)
- {
- GivePlayerMoney(playerid,pMoney+15000);
- }
- if(PlayerInfo[playerid][pRank] == 20)
- {
- GivePlayerMoney(playerid,pMoney+20000);
- }
- if(PlayerInfo[playerid][pRank] == 21)
- {
- GivePlayerMoney(playerid,pMoney+25000);
- }
- return 1;
- }
- public rMessage()
- {
- new rNumber, Check = 0;
- do{
- for(new i=0; i<sizeof(rCheckList); i++)
- if(rCheckList[i] != 0)
- Check++;
- if(Check == sizeof(rCheckList))
- for(new i=0; i<sizeof(rCheckList); i++)
- rCheckList[i] = 0;
- rNumber = random(sizeof(rMessageList));
- }while(rCheckList[rNumber]);
- SendClientMessageToAll(COLOR_YELLOW, rMessageList[rNumber]);
- rCheckList[rNumber] = 1;
- }
- public NoZombieWeapons(playerid)
- {
- if(gTeam[playerid] == TEAM_ZOMBIE)
- {
- switch (GetPlayerWeapon(playerid))
- {
- case 1,2,3,5,6,7,8,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46:
- {
- ResetPlayerWeapons(playerid);
- GivePlayerWeapon(playerid, KNIFE, 600);
- }
- }
- }
- return 1;
- }
- public InfectedRandom()
- {
- foreach(Player, i)
- {
- new Random = Iter_Random(Player);
- Zombie(Random);
- }
- }
- public Unfreeze(playerid)
- {
- GameTextForPlayer(playerid,"~r~ Loading ~w~~n~Zombie Settings",6000,4);
- TogglePlayerControllable(playerid,0);
- TogglePlayerControllable(playerid,1);
- return 1;
- }
- // Z-RO who killed me
- public D1(playerid)
- {
- GameTextForPlayer(playerid,"~r~3",1000,4);
- SetTimerEx("D2", 1000, false,"d",playerid);
- PlayerPlaySound(playerid,1056,0.0,0.0,0.0);
- }
- public D2(playerid)
- {
- GameTextForPlayer(playerid,"~y~2",1000,4);
- SetTimerEx("D3", 1000, false,"d",playerid);
- PlayerPlaySound(playerid,1056,0.0,0.0,0.0);
- }
- public D3(playerid)
- {
- GameTextForPlayer(playerid,"~g~1",1000,4);
- SetTimerEx("DS", 1000, false,"d",playerid);
- PlayerPlaySound(playerid,1056,0.0,0.0,0.0);
- }
- public DS(playerid)
- {
- TogglePlayerSpectating(playerid, 0);
- SpawnPlayer(playerid);
- PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
- }
- GetWeaponType(weaponid)
- {
- switch(weaponid)
- {
- case 22,23,24,26,28,32:
- return WEAPON_TYPE_LIGHT;
- case 3,4,16,17,18,39,10,11,12,13,14,40,41:
- return WEAPON_TYPE_MELEE;
- case 2,5,6,7,8,9,25,27,29,30,31,33,34,35,36,37,38:
- return WEAPON_TYPE_HEAVY;
- }
- return WEAPON_TYPE_NONE;
- }
- stock GetWeaponModel(weaponid)
- {
- switch(weaponid)
- {
- case 1:
- return 331;
- case 2..8:
- return weaponid+331;
- case 9:
- return 341;
- case 10..15:
- return weaponid+311;
- case 16..18:
- return weaponid+326;
- case 22..29:
- return weaponid+324;
- case 30,31:
- return weaponid+325;
- case 32:
- return 372;
- case 33..45:
- return weaponid+324;
- case 46:
- return 371;
- }
- return 0;
- }
- //Commands - Zcmd - Zeex
- CMD:kill(playerid,params[])
- {
- SetPlayerHealth(playerid,0);
- SendClientMessage(playerid,COLOR_YELLOW,"You have killed yourself.");
- return 1;
- }
- CMD:setrank(playerid,params[])
- {
- if(PlayerInfo[playerid][Logged] == 1)
- {
- if(PlayerInfo[playerid][Level] >= 5 || IsPlayerAdmin(playerid))
- {
- new rank,id,file[256],n[MAX_PLAYER_NAME], tmp[256], tmp2[256], Index,str[128];
- tmp = strtok(params,Index), tmp2 = strtok(params,Index),id = strval(tmp),rank = strval(tmp2);
- GetPlayerName(id,n,MAX_PLAYER_NAME); format(file,sizeof(file),"FAdmin/Users/%s.ini",n);
- if(!strlen(params)) return SendClientMessage(playerid,red,"USAGE: /setrank <ID> <Level>");
- if(IsPlayerConnected(id))
- {
- if(rank > 20 || rank < 0) return SendClientMessage(playerid,red,"Invalid Level");
- if(rank > 0) { format(str,sizeof(str),"~b~~h~~h~Gained ~g~Admin Level ~w~~n~Level (%d)",rank); GameTextForPlayer(id,str,5000, 3); }
- if(rank == 0) { format(str,sizeof(str),"~r~~H~~h~Lost Admin ~w~~n~Level (%d)",rank); GameTextForPlayer(id,str,5000,3); }
- if(rank == PlayerInfo[id][Level]) return SendClientMessage(playerid,red,"Player Already this Level");
- PlayerInfo[id][pRank] = rank;
- dini_IntSet(file,"Rank",rank);
- } else return SendERROR(playerid, 3);
- } else return SendERROR(playerid, 1);
- } else return SendERROR(playerid, 5);
- return 1;
- }
- CMD:fcmds(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 1 || IsPlayerAdmin(playerid)) {
- SendClientMessage(playerid,lightblue,"/goto /get /slap /giveweapon /setcash /cetcolour /god /godcar /warn /countdown");
- SendClientMessage(playerid,lightblue,"/aweapons /akill /skick /sban /duel /fammo /fix /announce /spec /specoff");
- SendClientMessage(playerid,lightblue,"/pm /m /reply /r /nopm /fcmds");
- SendClientMessage(playerid,lightblue,"/register /login /setlevel /kick /ban /freeze /unfreeze /testcmds /explode");
- } else return SendERROR(playerid, 1);
- return 1;
- }
- #if defined USE_FLOGIN
- CMD:register(playerid,params[])
- {
- new file[256],n[MAX_PLAYER_NAME];
- GetPlayerName(playerid,n,MAX_PLAYER_NAME);
- format(file,sizeof(file),"FAdmin/Users/%s.ini",n);
- if(dini_Exists(file)) return SendClientMessage(playerid,yellow,"You are already registered!");
- if(PlayerInfo[playerid][Registered] == 1) return SendClientMessage(playerid,yellow,"You are already registered!");
- if(PlayerInfo[playerid][Logged] == 1) return SendClientMessage(playerid,yellow,"You are already registered, and logged in!");
- if(!dini_Exists(file)) {
- ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "F-Admin Register/Login", "Welcome, This Server is Using FAdmin Created By FrosTiC. Please Register Here.", "Register", "Leave");
- }
- return 1;
- }
- //==============================================================================
- CMD:login(playerid,params[])
- {
- new file[256],n[MAX_PLAYER_NAME];
- GetPlayerName(playerid,n,MAX_PLAYER_NAME);
- format(file,sizeof(file),"FAdmin/Users/%s.ini",n);
- if(!dini_Exists(file)) return SendClientMessage(playerid,yellow,"You are not registered! Please /register");
- if(PlayerInfo[playerid][Logged] == 1) return SendClientMessage(playerid,yellow,"You are already logged in!");
- if(PlayerInfo[playerid][Registered] == 0) return SendClientMessage(playerid,yellow,"You are not registered! Please /register");
- ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "F-Admin Register/Login", "Welcome Back, This Name is Registered, Type in Your Password Below", "Login", "Leave");
- return 1;
- }
- #endif
- /*==============================================================================
- =============================ADMIN COMMANDS=====================================
- ================================================================================*/
- CMD:setlevel(playerid,params[])
- {
- if(PlayerInfo[playerid][Logged] == 1) {
- if(PlayerInfo[playerid][Level] >= 6 || IsPlayerAdmin(playerid)) {
- new level,id,file[256],n[MAX_PLAYER_NAME], tmp[256], tmp2[256], Index,str[128];
- tmp = strtok(params,Index), tmp2 = strtok(params,Index),id = strval(tmp),level = strval(tmp2);
- GetPlayerName(id,n,MAX_PLAYER_NAME); format(file,sizeof(file),"FAdmin/Users/%s.ini",n);
- if(!strlen(params)) return SendClientMessage(playerid,red,"USAGE: /setlevel <ID> <Level>");
- if(IsPlayerConnected(id)) {
- if(level > 8 || level < 0) return SendClientMessage(playerid,red,"Invalid Level");
- if(level > 0) { format(str,sizeof(str),"~b~~h~~h~Gained ~g~Admin Level ~w~~n~Level (%d)",level); GameTextForPlayer(id,str,5000, 3); }
- if(level == 0) { format(str,sizeof(str),"~r~~H~~h~Lost Admin ~w~~n~Level (%d)",level); GameTextForPlayer(id,str,5000,3); }
- if(level == PlayerInfo[id][Level]) return SendClientMessage(playerid,red,"Player Already this Level");
- PlayerInfo[id][Level] = level;
- dini_IntSet(file,"Level",level);
- } else return SendERROR(playerid, 3);
- } else return SendERROR(playerid, 1);
- } else return SendERROR(playerid, 5);
- return 1;
- }
- CMD:kick(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 3 || IsPlayerAdmin(playerid)) {
- new id, n[MAX_PLAYER_NAME], on[MAX_PLAYER_NAME], tmp[256], tmp2[256], Index, str[128];
- tmp = strtok(params,Index), tmp2 = strtok(params,Index); id = strval(tmp); GetPlayerName(id,n,sizeof(n)); GetPlayerName(playerid,on,sizeof(on));
- if(!strlen(params)) return SendClientMessage(playerid,red,"USAGE: /kick <ID> <reason>");
- if(IsPlayerConnected(id)) {
- if(!strlen(tmp2)) {
- format(str,sizeof(str),"%s has been kicked by %s [no reason given]",n,on); SendClientMessageToAll(purple,str);
- Kick(id);
- } else {
- format(str,sizeof(str),"%s has been kicked by %s [reason: %s]",n,on,params[2]); SendClientMessageToAll(purple,str);
- Kick(id);
- }
- } else return SendERROR(playerid, 3);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:ban(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 5 || IsPlayerAdmin(playerid)) {
- new id, n[MAX_PLAYER_NAME], on[MAX_PLAYER_NAME], tmp[256], tmp2[256], Index, str[128];
- tmp = strtok(params,Index), tmp2 = strtok(params,Index), id = strval(tmp); GetPlayerName(id,n,sizeof(n)); GetPlayerName(playerid,on,sizeof(on));
- new file[256]; format(file,sizeof(file),"FAdmin/Users/%s.ini",n);
- if(!strlen(params)) return SendClientMessage(playerid,red,"USAGE: /ban <ID> <reason>");
- if(IsPlayerConnected(id)) {
- if(!strlen(tmp2)) {
- SendClientMessage(playerid,red,"You Must have a reason!");
- } else {
- format(str,sizeof(str),"%s has been banned by %s [reason: %s]",n,on,params[2]); SendClientMessageToAll(purple,str);
- format(str,sizeof(str),"~w~You have been ~r~banned ~w~by ~b~%s",n,on); GameTextForPlayer(playerid,str,5000,3);
- BanEx(id, str);
- if(dini_Exists(file) && PlayerInfo[id][Logged] == 1) dini_IntSet(file,"Banned",1);
- }
- } else return SendERROR(playerid, 3);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:freeze(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 3 || IsPlayerAdmin(playerid)) {
- new id, n[MAX_PLAYER_NAME], on[MAX_PLAYER_NAME], tmp[256], tmp2[256], Index, str[128];
- tmp = strtok(params,Index), tmp2 = strtok(params,Index), id = strval(tmp); GetPlayerName(id,n,sizeof(n)); GetPlayerName(playerid,on,sizeof(on));
- new file[256]; format(file,sizeof(file),"FAdmin/Users/%s.ini",n);
- if(PlayerInfo[id][Froze] == 1) return SendClientMessage(playerid,red,"Player is already frozen");
- if(!strlen(params)) return SendClientMessage(playerid,red,"USAGE: /freeze <ID> <reason>");
- if(IsPlayerConnected(id)) {
- if(!strlen(tmp2)) {
- format(str,sizeof(str),"%s has been frozen by %s [no reason given] ",n,on); SendClientMessageToAll(purple,str);
- SendClientMessage(id,lightblue,"You been Frozen, If not unfrozen in 1 minute, you will be auto unfroze.");
- TogglePlayerControllable(id, 0);
- PlayerInfo[id][Froze] = 1;
- if(dini_Exists(file) && PlayerInfo[id][Logged] == 1) dini_IntSet(file,"Froze",1);
- SetTimerEx("Freeze",60000,false,"d",id);
- } else {
- format(str,sizeof(str),"%s has been frozen by %s [reason: %s] ",n,on,params[2]); SendClientMessageToAll(purple,str);
- SendClientMessage(id,lightblue,"You been Frozen, If not unfrozen in 1 minute, you will be auto unfrozen.");
- TogglePlayerControllable(id, 0);
- PlayerInfo[id][Froze] = 1;
- SetTimerEx("Freeze",60000,false,"d",id);
- if(dini_Exists(file) && PlayerInfo[id][Logged] == 1) dini_IntSet(file,"Froze",1);
- }
- } else return SendERROR(playerid, 3);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:unfreeze(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 3 || IsPlayerAdmin(playerid)) {
- new id, n[MAX_PLAYER_NAME], on[MAX_PLAYER_NAME], tmp[256], Index, str[128];
- tmp = strtok(params,Index), id = strval(tmp); GetPlayerName(id,n,sizeof(n)); GetPlayerName(playerid,on,sizeof(on));
- new file[256]; format(file,sizeof(file),"FAdmin/Users/%s.ini",n);
- if(PlayerInfo[id][Froze] == 0) return SendClientMessage(playerid,red,"Player isnt frozen");
- if(!strlen(params)) return SendClientMessage(playerid,red,"USAGE: /unfreeze <ID>");
- if(IsPlayerConnected(id)) {
- dini_IntSet(file,"Froze",0);
- format(str,sizeof(str),"%s has been unfrozed by %s",n,on); SendClientMessageToAll(purple,str);
- TogglePlayerControllable(id,1);
- PlayerInfo[id][Froze] = 0;
- } else return SendERROR(playerid, 3);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:testcmds(playerid,params[])
- {
- SendClientMessage(playerid,green,"");
- return 1;
- }
- CMD:explode(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 3 || IsPlayerAdmin(playerid)) {
- new id, n[MAX_PLAYER_NAME], on[MAX_PLAYER_NAME], tmp[256], tmp2[256], Index, str[128];
- tmp = strtok(params,Index), tmp2 = strtok(params,Index), id = strval(tmp); GetPlayerName(id,n,sizeof(n)); GetPlayerName(playerid,on,sizeof(on));
- if(!strlen(params)) return SendClientMessage(playerid,red,"USAGE: /explode <ID> <reason>");
- if(IsPlayerConnected(id)) {
- new Float:burnx, Float:burny, Float:burnz; GetPlayerPos(id,burnx, burny, burnz);
- if(!strlen(tmp2)) {
- format(str,sizeof(str),"%s has exploded %s [no reason given] ",on,n); SendClientMessageToAll(purple,str);
- CreateExplosion(burnx, burny , burnz, 7,10.0);
- CreateExplosion(burnx, burny-3, burnz, 7,10.0);
- } else {
- format(str,sizeof(str),"%s has exploded %s [reason: %s] ",on,n, params[2]); SendClientMessageToAll(purple,str);
- CreateExplosion(burnx, burny , burnz, 7,10.0);
- CreateExplosion(burnx, burny-3, burnz, 7,10.0);
- }
- } else return SendERROR(playerid, 3);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:goto(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 2 || IsPlayerAdmin(playerid)) {
- new id, n[MAX_PLAYER_NAME], on[MAX_PLAYER_NAME], tmp[256], Index, str[128];
- tmp = strtok(params,Index), id = strval(tmp);
- GetPlayerName(id,n,sizeof(n)); GetPlayerName(playerid,on,sizeof(on));
- if(!strlen(params)) return SendClientMessage(playerid,red,"USAGE: /goto <ID>");
- if(IsPlayerConnected(id)) {
- new Float:x,Float:y,Float:z, pInt, vworld, veh; GetPlayerPos(id,x,y,z);
- pInt = GetPlayerInterior(id), vworld = GetPlayerVirtualWorld(id), veh = GetPlayerVehicleID(id);
- format(str,sizeof(str),"%s has teleported to you",on); SendClientMessage(id,purple,str);
- format(str,sizeof(str),"You have teleported to %s",n); SendClientMessage(playerid,purple,str);
- SetPlayerPos(playerid,x,y,z); SetPlayerVirtualWorld(playerid, vworld); SetPlayerInterior(playerid,pInt);
- if(IsPlayerInAnyVehicle(playerid)) return SetVehiclePos(veh,x,y+6,z); PutPlayerInVehicle(id,veh,1);
- } else return SendERROR(playerid, 3);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:get(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 2 || IsPlayerAdmin(playerid)) {
- new id, n[MAX_PLAYER_NAME], on[MAX_PLAYER_NAME], tmp[256], Index, str[128];
- tmp = strtok(params,Index), id = strval(tmp);
- GetPlayerName(id,n,sizeof(n)); GetPlayerName(playerid,on,sizeof(on));
- if(!strlen(params)) return SendClientMessage(playerid,red,"USAGE: /get <ID>");
- if(IsPlayerConnected(id)) {
- new Float:x,Float:y,Float:z, pInt, vworld, veh; GetPlayerPos(playerid,x,y,z);
- pInt = GetPlayerInterior(playerid), vworld = GetPlayerVirtualWorld(playerid), veh = GetPlayerVehicleID(playerid);
- format(str,sizeof(str),"%s has teleported you",on); SendClientMessage(id,purple,str);
- format(str,sizeof(str),"You have teleported %s",n); SendClientMessage(playerid,purple,str);
- SetPlayerPos(id,x+3,y,z); SetPlayerVirtualWorld(id, vworld); SetPlayerInterior(id,pInt);
- if(IsPlayerInAnyVehicle(id)) return SetVehiclePos(veh,x,y+6,z); PutPlayerInVehicle(playerid,veh,1);
- } else return SendERROR(playerid, 3);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:slap(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 3 || IsPlayerAdmin(playerid)) {
- new id, n[MAX_PLAYER_NAME], on[MAX_PLAYER_NAME], tmp[256], tmp2[256], Index, str[128];
- tmp = strtok(params,Index), tmp2 = strtok(params,Index), id = strval(tmp);
- GetPlayerName(id,n,sizeof(n)); GetPlayerName(playerid,on,sizeof(on));
- if(!strlen(params)) return SendClientMessage(playerid,red,"USAGE: /slap <ID> <reason>");
- if(IsPlayerConnected(id)) {
- new Float:x,Float:y,Float:z; GetPlayerPos(id,x,y,z);
- if(!strlen(tmp2)) {
- format(str,sizeof(str),"You have been slapped by admin %s ",on); SendClientMessage(id,purple,str);
- format(str,sizeof(str),"%s has been slapped by admin %s ",n, on); SendClientMessageToAll(purple,str);
- SetPlayerPos(id,x,y,z+25); PlayerPlaySound(id,1190,0.0,0.0,0.0);
- } else {
- format(str,sizeof(str),"%s has been slapped by %s [reason: %s] ",n, on, params[2]); SendClientMessageToAll(purple,str);
- format(str,sizeof(str),"You have slapped %s [reason: %s] ",n,params[2]); SendClientMessage(playerid,purple,str);
- format(str,sizeof(str),"You have been slapped by %s [reason: %s] ",on,params[2]); SendClientMessage(id,purple,str);
- SetPlayerPos(id,x,y,z+25); PlayerPlaySound(id,1190,0.0,0.0,0.0);
- }
- } else return SendERROR(playerid, 3);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:giveweapon(playerid,params[]) {
- if(PlayerInfo[playerid][Level] >= 2 || IsPlayerAdmin(playerid)) {
- new tmp[256], tmp2[256], tmp3[256], n[MAX_PLAYER_NAME], Index; tmp = strtok(params,Index), tmp2 = strtok(params,Index), tmp3 = strtok(params,Index);
- if(!strlen(tmp) || !strlen(tmp2)) return SendClientMessage(playerid, red, "USAGE: /giveweapon [playerid] [weapon id/weapon name] [ammo]");
- new id = strval(tmp), weap, ammo, WeapName[32], string[128]; GetPlayerName(id,n,sizeof(n));
- if(!strlen(tmp3) || !IsNumeric(tmp3) || strval(tmp3) <= 0 || strval(tmp3) > 99999) ammo = 500; else ammo = strval(tmp3);
- if(!IsNumeric(tmp2)) weap = GetWeaponIDFromName(tmp2); else weap = strval(tmp2);
- if(IsPlayerConnected(id)) {
- if(!IsValidWeapon(weap)) return SendClientMessage(playerid,red,"ERROR: Invalid weapon ID");
- GetWeaponName(weap,WeapName,32);
- format(string, sizeof(string), "You have given \"%s\" a %s (%d) with %d rounds of ammo", n, WeapName, weap, ammo); SendClientMessage(playerid,blue,string);
- if(id != playerid) { format(string,sizeof(string),"Administrator \"%s\" has given you a %s (%d) with %d rounds of ammo", playerid, WeapName, weap, ammo); SendClientMessage(id,blue,string); }
- return GivePlayerWeapon(id, weap, ammo);
- } else return SendClientMessage(playerid,red,"ERROR: Player is not connected");
- } else return SendClientMessage(playerid,red,"ERROR: You are not a high enough level to use this command");
- }
- CMD:setcash(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 3 || IsPlayerAdmin(playerid)) {
- new id, n[MAX_PLAYER_NAME], on[MAX_PLAYER_NAME], tmp[256], tmp2[256], cash, Index, str[128];
- tmp = strtok(params,Index), tmp2 = strtok(params,Index), id = strval(tmp), cash = strval(tmp2);
- GetPlayerName(id,n,sizeof(n)); GetPlayerName(playerid,on,sizeof(on));
- new file[256]; format(file,sizeof(file),"FAdmin/Users/%s.ini",n);
- if(!strlen(params)) return SendClientMessage(playerid,red,"USAGE: /setcash <ID> <amount>");
- if(IsPlayerConnected(id)) {
- format(str,sizeof(str),"%s has set your cash to $%d",on,cash); SendClientMessage(id,purple,str);
- format(str,sizeof(str),"You have set %s cash to $%d",n,cash); SendClientMessage(playerid,purple,str);
- format(str,sizeof(str),"Your cash is now $%d",cash); SendClientMessage(id,purple,str);
- ResetPlayerMoney(id); GivePlayerMoney(id,cash);
- if(dini_Exists(file) && PlayerInfo[id][Logged] == 1) dini_IntSet(file,"Cash",cash);
- } else return SendERROR(playerid, 3);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:setcolour(playerid,params[]) {
- if(PlayerInfo[playerid][Level] >= 2 || IsPlayerAdmin(playerid)) {
- new id, n[MAX_PLAYER_NAME], on[MAX_PLAYER_NAME], tmp[256], tmp2[256], Index, str[128], Colours;
- tmp = strtok(params,Index), tmp2 = strtok(params,Index), id = strval(tmp), Colours = strval(tmp2);
- GetPlayerName(id,n,sizeof(n)); GetPlayerName(playerid,on,sizeof(on));
- new file[256]; format(file,sizeof(file),"FAdmin/Users/%s.ini",n);
- if(!strlen(tmp) || !strlen(tmp2) || !IsNumeric(tmp2)) {
- SendClientMessage(playerid, red, "USAGE: /setcolour [playerid] [Colour]");
- SendClientMessage(playerid, red, "Colours: 0 - black 1 - white 2 - red 3 - orange 4 - yellow 5 - green 6 - blue 7 - purple 8 - brown 9 - pink 10 - gold");
- }
- if(Colours > 10) return SendClientMessage(playerid,red,"Invalid Number");
- if(IsPlayerConnected(id)) {
- switch (Colours)
- {
- case 0: { SetPlayerColor(id,black); }
- case 1: { SetPlayerColor(id,white); }
- case 2: { SetPlayerColor(id,red); }
- case 3: { SetPlayerColor(id,orange); }
- case 4: { SetPlayerColor(id,yellow); }
- case 5: { SetPlayerColor(id,green1); }
- case 6: { SetPlayerColor(id,blue); }
- case 7: { SetPlayerColor(id,purple); }
- case 8: { SetPlayerColor(id,brown); }
- case 9: { SetPlayerColor(id,pink); }
- case 10: { SetPlayerColor(id,gold); }
- }
- if(dini_Exists(file) && PlayerInfo[id][Logged] == 1) dini_IntSet(file,"Colour",Colours);
- format(str,sizeof(str),"You have set %s's colour to %s", n, Colours); SendClientMessage(playerid,purple,str);
- format(str, sizeof(str), "%s has set your colour to %s", on, Colours); SendClientMessage(playerid,purple,str);
- } else return SendERROR(playerid, 3);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:god(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 4 || IsPlayerAdmin(playerid)) {
- if(PlayerInfo[playerid][God] == 1) {
- SetPlayerHealth(playerid,100);
- SendClientMessage(playerid,lightblue,"GodMode Off");
- GivePlayerWeapon(playerid,35,0);
- PlayerInfo[playerid][God] = 0;
- } else {
- SetPlayerHealth(playerid,100000);
- SendClientMessage(playerid,lightblue,"GodMode On");
- GivePlayerWeapon(playerid,35,100);
- PlayerInfo[playerid][God] = 1;
- SetTimerEx("GodUpdate",10,true,"i",playerid);
- }
- } else return SendERROR(playerid,1);
- return 1;
- }
- CMD:godcar(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 4 || IsPlayerAdmin(playerid)) {
- if(IsPlayerInAnyVehicle(playerid)) {
- new veh = GetPlayerVehicleID(playerid);
- if(PlayerInfo[playerid][GodCar] == 0) {
- SetVehicleHealth(veh,40000);
- PlayerInfo[playerid][GodCar] = 1;
- SendClientMessage(playerid,lightblue,"GodCar On");
- SetTimerEx("GodUpdate",10,true,"i",playerid);
- } else {
- SetVehicleHealth(veh,1000);
- PlayerInfo[playerid][GodCar] = 0;
- SendClientMessage(playerid,lightblue,"GodCar Off");
- }
- } else return SendERROR(playerid, 4);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:warn(playerid,params[]) {
- if(PlayerInfo[playerid][Level] >= 3 || IsPlayerAdmin(playerid)) {
- new tmp[256], tmp2[256], aName[MAX_PLAYER_NAME], admin[MAX_PLAYER_NAME], Index; tmp = strtok(params,Index), tmp2 = strtok(params,Index);
- if(!strlen(tmp) || !strlen(tmp2)) return SendClientMessage(playerid,red,"USAGE: /warn [playerid] [reason]");
- new warnedid = strval(tmp), str[128]; GetPlayerName(warnedid,aName,sizeof(aName)); GetPlayerName(playerid,admin,sizeof(admin));
- if(IsPlayerConnected(warnedid)) {
- PlayerInfo[warnedid][Warnings]++;
- if( PlayerInfo[warnedid][Warnings] == MAX_WARNINGS) {
- format(str, sizeof (str), "%s has been kicked by %s (Reason: %s) (Warning: %d/%d)", aName, admin, params[1+strlen(tmp)], PlayerInfo[warnedid][Warnings], MAX_WARNINGS);
- SendClientMessageToAll(purple, str);
- Kick(warnedid);
- PlayerInfo[warnedid][Warnings] = 0;
- } else {
- format(str, sizeof (str), "%s has given %s a warning (Reason: %s) (Warning: %d/%d)", admin, aName, params[1+strlen(tmp)], PlayerInfo[warnedid][Warnings], MAX_WARNINGS);
- SendClientMessageToAll(purple, str);
- }
- } else return SendERROR(playerid, 3);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:countdown(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 3 || IsPlayerAdmin(playerid)) {
- if(CountDown == -1) {
- CountDown = 6;
- SetTimer("countdown",1000,0);
- } else return SendClientMessage(playerid,red,"ERROR: Countdown in progress");
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:aweapons(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 3 || IsPlayerAdmin(playerid)) {
- GivePlayerWeapon(playerid,9,1); GivePlayerWeapon(playerid,12,1);
- GivePlayerWeapon(playerid,18,1000); GivePlayerWeapon(playerid,24,1000);
- GivePlayerWeapon(playerid,26,1000); GivePlayerWeapon(playerid,28,1000);
- GivePlayerWeapon(playerid,31,1000); GivePlayerWeapon(playerid,34,1000);
- GivePlayerWeapon(playerid,38,1000); GivePlayerWeapon(playerid,41,1000);
- GivePlayerWeapon(playerid,46,1); SendClientMessage(playerid,lightblue,"Enjoy your weapons");
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:akill(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 4 || IsPlayerAdmin(playerid)) {
- new id, n[MAX_PLAYER_NAME], on[MAX_PLAYER_NAME], tmp[256], tmp2[256], Index, str[128];
- tmp = strtok(params,Index), tmp2 = strtok(params,Index), id = strval(tmp);
- GetPlayerName(id,n,sizeof(n)); GetPlayerName(playerid,on,sizeof(on));
- if(!strlen(params)) return SendClientMessage(playerid,red,"/akill <playerid> <reason>");
- if(IsPlayerConnected(id)) {
- new Float:X,Float:Y,Float:Z; GetPlayerPos(id,X,Y,Z);
- if(!strlen(tmp2)) {
- format(str,sizeof(str),"%s has Admin Killed %s [no reason given]",on, n, params[2]); SendClientMessageToAll(purple,str);
- CreateExplosion(X, Y , Z, 7,10.0);
- CreateExplosion(X, Y-3, Z, 7,10.0);
- } else {
- format(str,sizeof(str),"%s has Admin Killed %s [reason: %s]",on, n, params[2]); SendClientMessageToAll(purple,str);
- CreateExplosion(X, Y , Z, 7,10.0);
- CreateExplosion(X, Y-3, Z, 7,10.0);
- }
- } else return SendERROR(playerid, 3);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:skick(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 3 || IsPlayerAdmin(playerid)) {
- new id, n[MAX_PLAYER_NAME], tmp[256], Index, str[128];
- tmp = strtok(params,Index), id = strval(tmp); GetPlayerName(id,n,sizeof(n));
- if(!strlen(params)) return SendClientMessage(playerid,red,"USAGE: /skick <ID>");
- if(IsPlayerConnected(id)) {
- Kick(id);
- format(str,sizeof(str),"You have Silent Kicked %s",n); SendClientMessage(playerid,purple,str);
- } else return SendERROR(playerid, 3);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:sban(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 5 || IsPlayerAdmin(playerid)) {
- new id, n[MAX_PLAYER_NAME], tmp[256], Index, str[128];
- new file[256]; format(file,sizeof(file),"FAdmin/Users/%s.ini",n);
- tmp = strtok(params,Index), id = strval(tmp); GetPlayerName(id,n,sizeof(n));
- if(!strlen(params)) return SendClientMessage(playerid,red,"USAGE: /sban <ID>");
- if(IsPlayerConnected(id)) {
- Ban(id);
- format(str,sizeof(str),"You have Silently Banned %s",n); SendClientMessage(playerid,purple,str);
- if(dini_Exists(file) && PlayerInfo[id][Logged] == 1) dini_IntSet(file,"Banned",1);
- } else return SendERROR(playerid, 3);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:duel(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 3 || IsPlayerAdmin(playerid)) {
- new p1, p2, location, n1[MAX_PLAYER_NAME], n2[MAX_PLAYER_NAME], on[MAX_PLAYER_NAME], tmp[256], tmp2[256], tmp3[256], Index, str[128];
- GetPlayerName(playerid,on,sizeof(on)); GetPlayerName(p1,n1,sizeof(n1)); GetPlayerName(p2,n2,sizeof(n2));
- tmp = strtok(params,Index), tmp2 = strtok(params,Index), tmp3 = strtok(params,Index);
- p1 = strval(tmp), p2 = strval(tmp2);
- if(!strlen(tmp) || !strlen(tmp2) || !IsNumeric(tmp) || !IsNumeric(tmp2)) {
- SendClientMessage(playerid, red, "USAGE: /duel [pID 1] [pID 2] [location] (Locations: 1-5]");
- return SendClientMessage(playerid, red, "If location isnt stated then players duel at their present location");
- }
- if(!strlen(tmp3)) location = 0; else location = strval(tmp3);
- if(!IsPlayerAlive(p1) && IsPlayerAlive(p2)) return SendClientMessage(playerid,red,"ERROR: A Player may not be alive");
- if(IsPlayerConnected(p1) && IsPlayerConnected(p2)) {
- if(location == 1) {
- SetPlayerPos(p1, 298.507934,-141.647048,1004.054748); SetPlayerPos(p2, 298.507934,-141.647048,1004.054748);
- SetPlayerInterior(p1, 7); SetPlayerInterior(p2, 7); GivePlayerWeapon(p1,26,5000); GivePlayerWeapon(p1,29,5000);
- GivePlayerWeapon(p1,30,5000); GivePlayerWeapon(p2,26,5000); GivePlayerWeapon(p2,29,5000); GivePlayerWeapon(p2,30,5000);
- GameTextForPlayer(p1,"~r~~h~~h~Ammunation Range ~b~Duel", 2500,3); GameTextForPlayer(p2,"~r~~h~~h~Ammunation Range ~b~Duel", 2500,3);
- } else if(location == 2) {
- SetPlayerPos(p1,2215.454833,-1147.475585,1025.796875); SetPlayerPos(p2,2215.454833,-1147.475585,1025.796875);
- SetPlayerInterior(p1,15); SetPlayerInterior(p2,15); GivePlayerWeapon(p1,30,5000); GivePlayerWeapon(p1,26,5000);
- GivePlayerWeapon(p1,9,5000); GivePlayerWeapon(p1,34,5000); GivePlayerWeapon(p2,30,5000); GivePlayerWeapon(p2,26,5000);
- GivePlayerWeapon(p2,9,5000); GivePlayerWeapon(p2,34,5000); GameTextForPlayer(p1,"~r~~h~~h~Jefferson Motel ~g~Duel", 2500, 3);
- GameTextForPlayer(p2,"~r~~h~~h~Jefferson Motel ~g~Duel", 2500, 3);
- } else if(location == 3) {
- SetPlayerPos(p1,2496.049804,-1695.238159,1014.742187); SetPlayerPos(p2,2496.049804,-1695.238159,1014.742187);
- SetPlayerInterior(p1,3); SetPlayerInterior(p2,3); GivePlayerWeapon(p1, 1,1); GivePlayerWeapon(p1,5,1);
- GivePlayerWeapon(p1,22,5000); GivePlayerWeapon(p2, 1,1); GivePlayerWeapon(p2,5,1); GivePlayerWeapon(p2,22,5000);
- GameTextForPlayer(p1,"~r~~h~~h~CJ's ~g~Death Duel",2500,3); GameTextForPlayer(p2,"~r~~h~~h~CJ's ~g~Death Duel",2500,3);
- } else if(location == 4) {
- SetPlayerPos(p1, 761.412963,1440.191650,1102.703125); SetPlayerPos(p2, 761.412963,1440.191650,1102.703125);
- SetPlayerInterior(p1,6); SetPlayerInterior(p2,6); GivePlayerWeapon(p1,9,1); GivePlayerWeapon(p1,10,1);
- GivePlayerWeapon(p2,9,1); GivePlayerWeapon(p2,10,1); GameTextForPlayer(p1,"~r~~h~~h~Fanny Batter's ~g~Duel House",2500,3);
- GameTextForPlayer(p2,"~r~~h~~h~Fanny Batter's ~g~Duel House",2500,3);
- } else if(location == 5) {
- SetPlayerPos(p1, -1685.636474,1035.476196,45.210937); SetPlayerPos(p2, -1685.636474,1035.476196,45.210937);
- SetPlayerInterior(p1, 0); SetPlayerInterior(p2, 0); GivePlayerWeapon(p1,16,5); GivePlayerWeapon(p1,25,3000);
- GivePlayerWeapon(p1,28,3000); GivePlayerWeapon(p2,16,5); GivePlayerWeapon(p2,25,3000); GivePlayerWeapon(p2,28,3000);
- GameTextForPlayer(p1,"~r~~h~~h~SF Bomb Shop ~g~Duel",2500,3); GameTextForPlayer(p2,"~r~~h~~h~SF Bomb Shop ~g~Duel",2500,3);
- }
- PlayerInfo[p1][InDuel] = 1; PlayerInfo[p2][InDuel] = 1;
- TogglePlayerControllable(p1,0); TogglePlayerControllable(p2,0);
- SetTimerEx("Duel",1000,0,"dd", p1, p2);
- format(str,sizeof(str),"you have put %s and %s in a duel", n1, n2);
- SendClientMessage(playerid,lime,str);
- } else return SendERROR(playerid, 3);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:fammo(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 3) {
- FAmmo(playerid);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:fix(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 3 || IsPlayerAdmin(playerid)) {
- if(IsPlayerInAnyVehicle(playerid)) {
- new pVeh = GetPlayerVehicleID(playerid);
- RepairVehicle(pVeh);
- SendClientMessage(playerid,lightblue,"You have Repaired your car");
- } else return SendERROR(playerid, 4);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:announce(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 2 || IsPlayerAdmin(playerid)) {
- new str[128];
- if(!strlen(params)) return SendClientMessage(playerid,red,"USAGE: /announce <text>");
- format(str,sizeof(str),"~w~%s",params); GameTextForAll(str,4000,3);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:spec(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 2 || IsPlayerAdmin(playerid)) {
- SpectateOn(playerid);
- GameTextForPlayer(playerid,"~w~Spectate ~g~~h~~h~on",3000,3);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:specoff(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 2 || IsPlayerAdmin(playerid)) {
- SpectateOff(playerid);
- GameTextForPlayer(playerid,"~w~Spectate ~g~~h~~h~off",3000,3);
- new Float:X, Float:Y, Float:Z; GetPlayerPos(playerid,X,Y,Z);
- SetPlayerPos(playerid,X,Y,Z+3);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:ahideout(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 2 || IsPlayerAdmin(playerid)) {
- SetPlayerPos(playerid,2251.85,-1138.16,1050.63);
- SetPlayerInterior(playerid,9);
- SetPlayerVirtualWorld(playerid,10);
- } else return SendERROR(playerid, 1);
- return 1;
- }
- CMD:askin(playerid,params[])
- {
- if(PlayerInfo[playerid][Level] >= 2 || IsPlayerAdmin(playerid)) {
- new Float:X, Float:Y, Float:Z, skin, aName[MAX_PLAYER_NAME];
- new file[256]; format(file,sizeof(file),"FAdmin/Users/%s.ini",aName);
- GetPlayerPos(playerid,X,Y,Z); GetPlayerName(playerid,aName,sizeof(aName));
- if(PlayerInfo[playerid][Duty] == 0) {
- skin = GetPlayerSkin(playerid);
- if(skin == IsValidSkin(skin)) return dini_IntSet(file,"Skin",skin);
- PlayerInfo[playerid][God] = 1; PlayerInfo[playerid][Duty] = 1;
- SetTimerEx("GodUpdate",100,true,"i",playerid);
- SetPlayerSkin(playerid,295);
- SendClientMessage(playerid,gold,"Admin ON DUTY");
- } else {
- PlayerInfo[playerid][God] = 0; PlayerInfo[playerid][Duty] = 0;
- new GetSkin = dini_Int(file,"Skin");
- SetPlayerSkin(playerid, GetSkin);
- }
- } else return SendERROR(playerid, 1);
- return 1;
- }
- /*==============================================================================
- ===============================Player Commands==================================
- ================================================================================*/
- CMD:pm(playerid,params[])
- {
- new target, text[128];
- if(sscanf(params, "us[128]", target, text)) return SendClientMessage(playerid, red, "USAGE: /pm <playerid/name> <text>");
- else if(PrivMSG[playerid][NoPM] == 0) return SendClientMessage(playerid, red, "You cannot send a PM if your PM's are off! /nopm to turn on");
- else if(target == INVALID_PLAYER_ID) return SendERROR(playerid, 2);
- new str[128];
- format(str, sizeof(str), "PM Sent: %s (%d): %s", pName(target), target, text);
- SendClientMessage(playerid, yellow, str);
- format(str, sizeof(str), "PM Receive: %s (%d): %s", pName(playerid), playerid, text);
- SendClientMessage(target, yellow, str);
- SendClientMessage(target, lightblue, "For quick reply, use /r - /reply but faster");
- PrivMSG[target][LastMSG] = playerid;
- PlayerPlaySound(target, 1085, 0.0, 0.0, 0.0);
- return 1;
- }
- CMD:m(playerid,params[])
- {
- cmd_pm(playerid, params);
- }
- CMD:reply(playerid, params[])
- {
- new text[128];
- if(sscanf(params, "s[128]", text)) return SendClientMessage(playerid, red, "USAGE: /reply <text>");
- else if(PrivMSG[playerid][LastMSG] == INVALID_PLAYER_ID) return SendClientMessage(playerid, red, "Invalid Player");
- else if(PrivMSG[playerid][NoPM] == 0) return SendClientMessage(playerid, red, "Player PM's has been disabled");
- new str[128];
- new target = PrivMSG[playerid][LastMSG];
- format(str, sizeof(str), "PM Sent: %s (%d): %s", pName(target), target, text);
- SendClientMessage(playerid, yellow, str);
- format(str, sizeof(str), "PM From: %s (%d): %s", pName(playerid), playerid, text);
- SendClientMessage(target, yellow, str);
- PrivMSG[target][LastMSG] = playerid;
- return 1;
- }
- CMD:r(playerid, params[])
- {
- cmd_reply(playerid, params);
- }
- CMD:nopm(playerid, params[])
- {
- switch(PrivMSG[playerid][NoPM])
- {
- case 0:
- {
- SendClientMessage(playerid, yellow, "You have enabled your PM's");
- SendClientMessage(playerid, yellow, "You can /nopm again to disable your PM's");
- PrivMSG[playerid][NoPM] = 1;
- }
- case 1:
- {
- SendClientMessage(playerid, yellow, "You have disabled your PM's");
- SendClientMessage(playerid, yellow, "You can /nopm again to enable your PM's");
- PrivMSG[playerid][NoPM] = 0;
- }
- }
- return 1;
- }
- CMD:heal(playerid,params[])
- {
- new
- id;
- if(gTeam[playerid] == TEAM_MEDIC)
- if (sscanf(params, "u", id)) SendClientMessage(playerid, 0xFF0000AA, "USAGE: /heal playerid OR /healme to heal yourself");
- else if (id == INVALID_PLAYER_ID) SendClientMessage(playerid, 0xFF0000AA, "Player not found");
- else
- {
- SetPlayerHealth(id, 100.0);
- SendClientMessage(id, 0x00FF00AA, "You have been healed");
- SendClientMessage(playerid, 0x00FF00AA, "Player healed");
- }
- return 1;
- }
- CMD:healme(playerid,params[])
- {
- if(gTeam[playerid] == TEAM_MEDIC)
- {
- SetPlayerHealth(playerid,100);
- }
- return 1;
- }
- CMD:cmd(playerid,params[])
- {
- SendClientMessage(playerid,COLOR_BLUE,"---------COMMANDS---------");
- SendClientMessage(playerid,COLOR_WHITE,"Current Commands in server more will be added soon");
- SendClientMessage(playerid,COLOR_WHITE,"/credits, /help , /cmds , /rhuman , /rzombie , /heal");
- SendClientMessage(playerid,COLOR_WHITE,"/kill , /rules");
- return 1;
- }
- CMD:help(playerid,params[])
- {
- SendClientMessage(playerid,COLOR_BLUE,"---------HELP---------");
- SendClientMessage(playerid,COLOR_WHITE,"This is a server Zombies VS Humans");
- SendClientMessage(playerid,COLOR_WHITE,"Zombies knife humans to infect them");
- SendClientMessage(playerid,COLOR_WHITE,"Zombie color is red human color is blue");
- SendClientMessage(playerid,COLOR_WHITE,"Type /cmds for list of commands in server");
- return 1;
- }
- CMD:credits(playerid,params[])
- {
- SendClientMessage(playerid,COLOR_BLUE,"---------CREDITS---------");
- SendClientMessage(playerid,COLOR_WHITE,"Kitten and willsuckformoney for scripting gamemode");
- SendClientMessage(playerid,COLOR_WHITE,"willsuckformoney for admin system");
- SendClientMessage(playerid,COLOR_WHITE,"Double O Seven Junkbuster , Weapon holder thingy");
- SendClientMessage(playerid,COLOR_WHITE,"If we Have missed you in credits dont say in server goto our forums");
- return 1;
- }
- CMD:rhuman(playerid,params[])
- {
- SendClientMessage(playerid,COLOR_BLUE,"---------HUMAN RULES---------");
- SendClientMessage(playerid,COLOR_WHITE,"1:Humans can not camp alot");
- SendClientMessage(playerid,COLOR_WHITE,"2:Dont just get infected on purpose to infect ur buddys by you");
- SendClientMessage(playerid,COLOR_WHITE,"MORE WILL COME SOON");
- return 1;
- }
- CMD:rzombie(playerid,params[])
- {
- SendClientMessage(playerid,COLOR_BLUE,"---------ZOMBIE RULES---------");
- SendClientMessage(playerid,COLOR_WHITE,"1: Zombies can not buy weapons");
- SendClientMessage(playerid,COLOR_WHITE,"2: Zombies Can only use knife and chainsaw if admins see u with other weapons you will be banned");
- return 1;
- }
- CMD:rules(playerid,params[])
- {
- SendClientMessage(playerid,COLOR_BLUE,"---------ZOMBIE-MOD RULES---------");
- SendClientMessage(playerid,COLOR_WHITE,"For Zombie rules type /rzombie");
- SendClientMessage(playerid,COLOR_WHITE,"For Human rules type /rhuman");
- SendClientMessage(playerid,COLOR_WHITE,"Server Rules: 1: No hacking 2: No Flame Wars");
- SendClientMessage(playerid,COLOR_WHITE,"Respect Others,Respect admins, Respect VIPS,Respect Players");
- SendClientMessage(playerid,COLOR_WHITE,"NO SPAMMING AT ALL, Do not advertise your shitty servers here");
- SendClientMessage(playerid,COLOR_WHITE,"That is for right now more will be added");
- return 1;
- }
- //==============================================================================
- //==============================================================================
- strtok(const string[], &index)
- {
- new length = strlen(string);
- while ((index < length) && (string[index] <= ' '))
- {
- index++;
- }
- new offset = index;
- new result[20];
- while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
- {
- result[index - offset] = string[index];
- index++;
- }
- result[index - offset] = EOS;
- return result;
- }
Advertisement
Add Comment
Please, Sign In to add comment