Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- ###############################################################
- # #
- # Los Santos Team Deathmatch #
- # #
- # Scripted by Xaerie #
- # #
- ###############################################################
- */
- //======[Includes]=====//
- #include <a_samp>
- #include <YSI\y_ini>
- #include <zcmd>
- #include <sscanf2>
- //======[Colors]=====//
- #define COL_WHITE "{FFFFFF}"
- #define COL_RED "{F81414}"
- #define COL_GREEN "{00FF22}"
- #define COL_LIGHTBLUE "{00CED1}"
- #define COLOR_GREY 0xAFAFAFAA
- #define COLOR_GREEN 0x33AA33AA
- #define COLOR_BRIGHTRED 0xFF0000AA
- #define COLOR_YELLOW 0xFFFF00AA
- #define COLOR_PINK 0xFF66FFAA
- #define COLOR_BLUE 0x3A47DEFF
- #define COLOR_TAN 0xBDB76BAA
- #define COLOR_PURPLE 0x800080AA
- #define COLOR_WHITE 0xFFFFFFAA
- #define COLOR_LIGHTBLUE 0x33CCFFAA
- #define COLOR_ORANGE 0xFF9900AA
- #define COLOR_INDIGO 0x4B00B0AA
- #define COLOR_BLACK 0x00000000
- #define COLOR_DARKGREY 0x696969FF
- #define COLOR_RED 0xAA3333AA
- //======[Team colors]=====//
- #define GROVE_COLOR 0x8200FFFF
- #define BALLA_COLOR 0x00FF14FF
- //======[Dialogs]======//
- #define DIALOG_REGISTER 1
- #define DIALOG_LOGIN 2
- #define DIALOG_SUCCESS_2 3
- #define PATH "/Users/%s.ini"
- #define SERVER_GM_TEXT "LS:TDM v1 (Beta)"
- #pragma tabsize 0
- //========[Teams]=======//
- #define GROVE 0
- #define BALLA 1
- //=====[Variables]=====//
- //Hashing.
- native WP_Hash(buffer[], len, const str[]);
- //Teams.
- new gTeam[MAX_PLAYERS];
- //======[Unused]======//
- main()
- {
- print("\n================================================");
- print(" Los Santos TDM - By Xaerie ");
- print("================================================\n");
- }
- //=======[Enums]======//
- enum pInfo
- {
- pPass[129],
- pCash,
- pKills,
- pDeaths
- }
- new PlayerInfo[MAX_PLAYERS][pInfo];
- forward LoadUser_data(playerid,name[],value[]);
- public LoadUser_data(playerid,name[],value[])
- {
- INI_String("Password",PlayerInfo[playerid][pPass], 129);
- INI_Int("Cash",PlayerInfo[playerid][pCash]);
- INI_Int("Kills",PlayerInfo[playerid][pKills]);
- INI_Int("Deaths",PlayerInfo[playerid][pDeaths]);
- return 1;
- }
- //======[Stocks]======//
- stock UserPath(playerid)
- {
- new string[128],playername[MAX_PLAYER_NAME];
- GetPlayerName(playerid,playername,sizeof(playername));
- format(string,sizeof(string),PATH,playername);
- return string;
- }
- //======[Timers]======//
- //=======[Custom Functions]=====//
- //=======[Default Callbacks]=====//
- public OnGameModeInit()
- {
- UsePlayerPedAnims();
- DisableInteriorEnterExits();
- SetGameModeText(SERVER_GM_TEXT);
- SendRconCommand("hostname [0.3x]Los Santos TDM");
- SendRconCommand("weburl Change me");
- SendRconCommand("mapname Los Santos");
- //Team skins.
- AddPlayerClass(106,2510.3369, -1673.5551, 13.4290, 79.3871, 22, 350, 32, 650, 30, 650); // grove
- AddPlayerClass(107,2510.3369, -1673.5551, 13.4290, 79.3871, 22, 350, 32, 650, 30, 650); // grove
- AddPlayerClass(105,2510.3369, -1673.5551, 13.4290, 79.3871, 22, 350, 32, 650, 30, 650); // grove
- AddPlayerClass(102,2183.1448,-1675.1119,14.3397,256.2643, 22, 350, 32, 650, 30, 650); // balla
- AddPlayerClass(103,2183.1448,-1675.1119,14.3397,256.2643, 22, 350, 32, 650, 30, 650); // balla
- AddPlayerClass(104,2183.1448,-1675.1119,14.3397,256.2643, 22, 350, 32, 650, 30, 650); // balla
- //Team Vehicles.
- AddStaticVehicle(566,2473.1553,-1702.9410,13.3017,359.3751,86,86); // Grove1
- AddStaticVehicle(566,2473.1335,-1693.3440,13.2975,359.7955,86,86); // Grove2
- AddStaticVehicle(566,2486.8325,-1684.3392,13.1988,87.3120,86,86); // Grove3
- AddStaticVehicle(566,2467.0547,-1653.5245,13.1793,90.6776,86,86); // Grove3
- AddStaticVehicle(567,2505.8315,-1679.5439,13.3292,316.2635,86,86); // Grove5
- AddStaticVehicle(567,2500.7756,-1655.7081,13.3042,68.1480,86,86); // Grove6
- AddStaticVehicle(492,2509.8792,-1671.0690,13.1927,353.3755,86,86); // Grove7
- AddStaticVehicle(487,2530.5242,-1678.0420,20.1063,90.8308,86,86); // Grove8
- AddStaticVehicle(567,2528.2554,-1668.1388,15.0347,90.8833,86,86); // Grove9
- AddStaticVehicle(567,2436.5596,-1676.8254,13.5803,356.2313,86,86); // Grove10
- AddStaticVehicle(567,2432.1653,-1676.8859,13.5787,358.9939,86,86); // Grove11
- AddStaticVehicle(567,2427.4436,-1676.9247,13.5831,358.8058,86,86); // Grove12
- AddStaticVehicle(412,2188.3552,-1658.7897,14.8672,167.9142,233,233); // Balla1
- AddStaticVehicle(412,2185.4253,-1669.8291,14.3483,165.3902,233,233); // Balla2
- AddStaticVehicle(412,2182.9475,-1681.8783,13.7863,166.3360,233,233); // Balla3
- AddStaticVehicle(412,2181.8052,-1693.7035,13.5013,174.8616,233,233); // Balla4
- AddStaticVehicle(487,2163.2532,-1666.8651,22.2059,227.8105,233,23); // Balla5
- AddStaticVehicle(566,2154.8884,-1703.4113,14.8665,270.9295,233,23); // Balla6
- AddStaticVehicle(566,2165.5068,-1703.3790,14.8620,270.9246,233,23); // Balla7
- AddStaticVehicle(566,2195.9053,-1670.3882,14.3397,166.9258,233,23); // Balla8
- AddStaticVehicle(566,2193.5874,-1681.2935,13.8085,167.6230,233,23); // Balla9
- //Interiors Pickups
- CreatePickup(1239, 1, 2495.4197,-1691.1361,14.7656); // Grove HQ
- CreatePickup(1239, 1, 2495.9292,-1692.0907,1014.7422); // Grove Inside
- Create3DTextLabel("Grove Street Families\n{FFFF00}/enter to go inside", COLOR_RED, 2495.4197,-1691.1361,14.7656, 30, 0, 1);
- CreatePickup(1239, 1, 2165.9170,-1671.2191,15.0732); // Glen Park Ballas HQ
- CreatePickup(1239, 1, 2352.8628,-1180.9423,1027.9766); // Ballas Inside
- Create3DTextLabel("Glen Park Ballas\n{FFFF00}/enter to go inside", COLOR_RED, 2165.9170,-1671.2191,15.0732, 30, 0, 1);
- return 1;
- }
- public OnGameModeExit()
- {
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- if(fexist(UserPath(playerid)))
- {
- INI_ParseFile(UserPath(playerid), "LoadUser_data", .bExtra = true, .extra = playerid);
- ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD,""COL_WHITE"Login",""COL_WHITE"Type your password below to login.","Login","Quit");
- }
- else
- {
- ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD,""COL_WHITE"Registering...",""COL_WHITE"Type your password below to register a new account.","Register","Quit");
- }
- SendClientMessage(playerid, COLOR_GREEN, "Welcome to Los Santos TDM!");
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- new INI:File = INI_Open(UserPath(playerid));
- INI_SetTag(File,"PlayerData");
- INI_WriteInt(File,"Cash",GetPlayerMoney(playerid));
- INI_WriteInt(File,"Kills",PlayerInfo[playerid][pKills]);
- INI_WriteInt(File,"Deaths",PlayerInfo[playerid][pDeaths]);
- INI_Close(File);
- return 1;
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- SetPlayerTeamFromClass(playerid, classid);
- SetPlayerPos(playerid, 2229.2568,-1721.9508,13.5678);
- SetPlayerFacingAngle(playerid, 143.4527);
- SetPlayerCameraLookAt(playerid, 2229.2568,-1721.9508,13.5678);
- SetPlayerCameraPos(playerid, 2224.9409,-1726.0276,13.5620);
- return 1;
- }
- public SetPlayerTeamFromClass(playerid, classid)
- {
- if (classid == 0)
- {
- gTeam[playerid] = GROVE;
- GameTextForPlayer(playerid, "Grove Street Families",3000,5);
- SetPlayerColor(playerid, 0x00FF14FF);
- }
- if (classid == 1)
- {
- gTeam[playerid] = GROVE;
- GameTextForPlayer(playerid, "Grove Street Families",3000,5);
- SetPlayerColor(playerid, 0x00FF14FF);
- }
- if (classid == 2)
- {
- gTeam[playerid] = GROVE;
- GameTextForPlayer(playerid, "Grove Street Families",3000,5);
- SetPlayerColor(playerid, 0x00FF14FF);
- }
- if (classid == 3)
- {
- gTeam[playerid] = BALLA;
- GameTextForPlayer(playerid, "Glen Park Balla",3000,5);
- SetPlayerColor(playerid, 0x8200FFFF);
- }
- if (classid == 4)
- {
- gTeam[playerid] = BALLA;
- GameTextForPlayer(playerid, "Glen Park Balla",3000,5);
- SetPlayerColor(playerid, 0x8200FFFF);
- }
- if (classid == 5)
- {
- gTeam[playerid] = BALLA;
- GameTextForPlayer(playerid, "Glen Park Balla",3000,5);
- SetPlayerColor(playerid, 0x8200FFFF);
- }
- return 1;
- }
- public OnPlayerRequestSpawn(playerid)
- {
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- if(GetPlayerScore(playerid) > 0 && GetPlayerScore(playerid) < 50)
- {
- new Text3D:label = Create3DTextLabel("Lil'Gangster",COLOR_WHITE, 30.0, 40.0, 50.0, 40.0, 0);
- Attach3DTextLabelToPlayer(label, playerid, 0.0, 0.0, 0.4);
- }
- else if(GetPlayerScore(playerid) > 100 && GetPlayerScore(playerid) < 200)
- {
- new Text3D:label1 = Create3DTextLabel("Young Gangster",COLOR_WHITE, 30.0, 40.0, 50.0, 40.0, 0);
- Attach3DTextLabelToPlayer(label1, playerid, 0.0, 0.0, 0.4);
- }
- else if(GetPlayerScore(playerid) > 200 && GetPlayerScore(playerid) < 300)
- {
- new Text3D:label2 = Create3DTextLabel("Origingal Gangster",COLOR_WHITE, 30.0, 40.0, 50.0, 40.0, 0);
- Attach3DTextLabelToPlayer(label2, playerid, 0.0, 0.0, 0.4);
- }
- else if(GetPlayerScore(playerid) > 300 && GetPlayerScore(playerid) < 400)
- {
- new Text3D:label3 = Create3DTextLabel("Trusted Gangster",COLOR_WHITE, 30.0, 40.0, 50.0, 40.0, 0);
- Attach3DTextLabelToPlayer(label3, playerid, 0.0, 0.0, 0.4);
- }
- else if(GetPlayerScore(playerid) > 500 && GetPlayerScore(playerid) < 600)
- {
- new Text3D:label3 = Create3DTextLabel("Certified Gangster",COLOR_WHITE, 30.0, 40.0, 50.0, 40.0, 0);
- Attach3DTextLabelToPlayer(label3, playerid, 0.0, 0.0, 0.4);
- }
- else if(GetPlayerScore(playerid) > 1000 && GetPlayerScore(playerid) < 6000)
- {
- new Text3D:label3 = Create3DTextLabel("Kingpin",COLOR_WHITE, 30.0, 40.0, 50.0, 40.0, 0);
- Attach3DTextLabelToPlayer(label3, playerid, 0.0, 0.0, 0.4);
- }
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- PlayerInfo[killerid][pKills]++;
- PlayerInfo[playerid][pDeaths]++;
- return 1;
- }
- public OnVehicleSpawn(vehicleid)
- {
- return 1;
- }
- public OnVehicleDeath(vehicleid, killerid)
- {
- return 1;
- }
- public OnPlayerText(playerid, text[])
- {
- return 1;
- }
- //=======[Commands]======//
- CMD:help(playerid, params[])
- {
- SendClientMessage(playerid, COLOR_RED, "========[Los Santos TDM]========");
- SendClientMessage(playerid, COLOR_GREEN, "Info: This is a TDM Server, You have to kill everyone except your team.");
- SendClientMessage(playerid, COLOR_GREEN, "Commands: /weapons, /healme, /equipment, /ranks, /myrank, /enter, /exit");
- SendClientMessage(playerid, COLOR_RED, "==============================");
- return 1;
- }
- CMD:weapons(playerid, params[])
- {
- GivePlayerWeapon(playerid, 30, 650);
- GivePlayerWeapon(playerid, 32, 500);
- GivePlayerWeapon(playerid, 22, 200);
- GivePlayerMoney(playerid, -5000);
- SendClientMessage(playerid, COLOR_RED, "You have refilled up your weapons for 5000$");
- return 1;
- }
- CMD:healme(playerid, params[])
- {
- SetPlayerHealth(playerid, 100);
- GivePlayerMoney(playerid, -500);
- SendClientMessage(playerid, COLOR_GREEN, "You have refilled your health for 500$");
- return 1;
- }
- CMD:equipment(playerid, params[])
- {
- SetPlayerHealth(playerid, 100);
- SetPlayerArmour(playerid, 100);
- GivePlayerWeapon(playerid, 34, 100);
- GivePlayerWeapon(playerid, 24, 300);
- GivePlayerWeapon(playerid, 27, 200);
- GivePlayerWeapon(playerid, 31, 600);
- GivePlayerMoney(playerid, -50000);
- SendClientMessage(playerid, COLOR_RED, "You have bought equipment package for 50000$");
- return 1;
- }
- CMD:ranks(playerid, params[])
- {
- SendClientMessage(playerid, COLOR_GREEN,"====================");
- SendClientMessage(playerid,COLOR_YELLOW,"Lil'Gangster: 0-100");
- SendClientMessage(playerid,COLOR_YELLOW,"Young Gangster: 100-200");
- SendClientMessage(playerid,COLOR_YELLOW,"Original Gangster: 200-300");
- SendClientMessage(playerid,COLOR_YELLOW,"Trusted Gangster: 300-400");
- SendClientMessage(playerid,COLOR_YELLOW,"Certified Gangster: 500-600");
- SendClientMessage(playerid,COLOR_YELLOW,"Kingpin: 1000-6000");
- SendClientMessage(playerid, COLOR_RED,"You can check your rank using /myrank");
- SendClientMessage(playerid, COLOR_GREEN,"====================");
- return 1;
- }
- CMD:myrank(playerid, params[])
- {
- if(GetPlayerScore(playerid)< 0)
- {
- SendClientMessage(playerid, COLOR_YELLOW, "Your rank is 0(Newbie)");
- }
- else if(GetPlayerScore(playerid)< 100)
- {
- SendClientMessage(playerid, COLOR_YELLOW, "Your rank is 1(Lil'Gangster)");
- }
- else if(GetPlayerScore(playerid)< 200)
- {
- SendClientMessage(playerid, COLOR_YELLOW, "Your rank is 2(Young Gangster)");
- }
- else if(GetPlayerScore(playerid)< 300)
- {
- SendClientMessage(playerid, COLOR_YELLOW, "Your rank is 3(Original Gangster)");
- }
- else if(GetPlayerScore(playerid)< 400)
- {
- SendClientMessage(playerid, COLOR_YELLOW, "Your rank is 4(Trusted Gangster)");
- }
- else if(GetPlayerScore(playerid)< 500)
- {
- SendClientMessage(playerid, COLOR_YELLOW, "Your rank is 5(Certified Gangster)");
- }
- else if(GetPlayerScore(playerid)< 600)
- {
- SendClientMessage(playerid, COLOR_YELLOW, "Your rank is 6(Kingpin)");
- }
- return 1;
- }
- CMD:enter(playerid, params[])
- {
- if(IsPlayerInRangeOfPoint(playerid, 2, 2495.4197,-1691.1361,14.7656))
- {
- SetPlayerPos(playerid, 2496.049804,-1695.238159,1014.742187);
- SetPlayerInterior(playerid, 3);
- SetPlayerVirtualWorld(playerid, 1);
- }
- if(IsPlayerInRangeOfPoint(playerid, 2, 2165.9170,-1671.2191,15.0732))
- {
- SetPlayerPos(playerid, 318.564971,1118.209960,1083.882812);
- SetPlayerInterior(playerid, 5);
- SetPlayerVirtualWorld(playerid, 1);
- }
- return 1;
- }
- CMD:exit(playerid, params[])
- {
- if(IsPlayerInRangeOfPoint(playerid, 2, 2495.9292,-1692.0907,1014.7422))
- {
- SetPlayerPos(playerid, 2495.4197,-1691.1361,14.7656);
- SetPlayerInterior(playerid, 0);
- SetPlayerVirtualWorld(playerid, 0);
- }
- if(IsPlayerInRangeOfPoint(playerid, 2, 318.6477,1114.4825,1083.8828))
- {
- SetPlayerPos(playerid, 2165.9170,-1671.2191,15.0732);
- SetPlayerInterior(playerid, 0);
- SetPlayerVirtualWorld(playerid, 0);
- }
- return 1;
- }
- public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
- {
- return 1;
- }
- public OnPlayerExitVehicle(playerid, vehicleid)
- {
- return 1;
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- return 1;
- }
- public OnPlayerEnterCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerLeaveCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerEnterRaceCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerLeaveRaceCheckpoint(playerid)
- {
- return 1;
- }
- public OnRconCommand(cmd[])
- {
- return 1;
- }
- public OnObjectMoved(objectid)
- {
- return 1;
- }
- public OnPlayerObjectMoved(playerid, objectid)
- {
- return 1;
- }
- public OnPlayerPickUpPickup(playerid, pickupid)
- {
- return 1;
- }
- public OnVehicleMod(playerid, vehicleid, componentid)
- {
- return 1;
- }
- public OnEnterExitModShop(playerid, enterexit, interiorid)
- {
- return 1;
- }
- public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
- {
- return 1;
- }
- public OnVehicleRespray(playerid, vehicleid, color1, color2)
- {
- return 1;
- }
- public OnVehicleDamageStatusUpdate(vehicleid, playerid)
- {
- return 1;
- }
- public OnUnoccupiedVehicleUpdate(vehicleid, playerid, passenger_seat)
- {
- return 1;
- }
- public OnPlayerSelectedMenuRow(playerid, row)
- {
- return 1;
- }
- public OnPlayerExitedMenu(playerid)
- {
- return 1;
- }
- public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
- {
- return 1;
- }
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
- {
- return 1;
- }
- public OnRconLoginAttempt(ip[], password[], success )
- {
- return 1;
- }
- public OnPlayerUpdate(playerid)
- {
- return 1;
- }
- public OnPlayerStreamIn(playerid, forplayerid)
- {
- return 1;
- }
- public OnPlayerStreamOut(playerid, forplayerid)
- {
- return 1;
- }
- public OnVehicleStreamIn(vehicleid, forplayerid)
- {
- return 1;
- }
- public OnVehicleStreamOut(vehicleid, forplayerid)
- {
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- switch( dialogid )
- {
- case DIALOG_REGISTER:
- {
- if (!response) return Kick(playerid);
- if(response)
- {
- if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, ""COL_WHITE"Making your account ..",""COL_RED"You have entered an invalid password.\n"COL_WHITE"Type your password below to register a new account.","Register","Quit");
- new INI:File = INI_Open(UserPath(playerid));
- INI_SetTag(File,"PlayerData");
- new HashPass[129];
- WP_Hash(HashPass, sizeof(HashPass), inputtext);
- INI_WriteString(File, "Password", HashPass);
- INI_WriteInt(File,"Cash",10000);
- INI_WriteInt(File,"Kills",1);
- INI_WriteInt(File,"Deaths",0);
- INI_Close(File);
- SetSpawnInfo(playerid, 0, 0, 1958.33, 1343.12, 15.36, 269.15, 0, 0, 0, 0, 0, 0);
- }
- }
- case DIALOG_LOGIN:
- {
- if ( !response ) return Kick ( playerid );
- if( response )
- {
- new HashPass[129];
- WP_Hash(HashPass, sizeof(HashPass), inputtext);
- if(strcmp(HashPass, PlayerInfo[playerid][pPass]) == 0)
- {
- INI_ParseFile(UserPath(playerid), "LoadUser_data", .bExtra = true, .extra = playerid);
- GivePlayerMoney(playerid, PlayerInfo[playerid][pCash]);
- ShowPlayerDialog(playerid, DIALOG_SUCCESS_2, DIALOG_STYLE_MSGBOX,""COL_WHITE"Success!",""COL_GREEN"Great! You have successfully logged in","Ok","");
- }
- else
- {
- ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD,""COL_WHITE"Login",""COL_RED"You have entered an incorrect password.\n"COL_WHITE"Type your password below to login.","Login","Quit");
- }
- return 1;
- }
- }
- }
- return 1;
- }
- public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid)
- {
- return 1;
- }
- public OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid)
- {
- return 1;
- }
- public OnPlayerClickMap(playerid, Float:fX, Float:fY, Float:fZ)
- {
- return 1;
- }
- public OnPlayerClickTextDraw(playerid, Text:clickedid)
- {
- return 1;
- }
- public OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
- {
- return 1;
- }
- public OnPlayerClickPlayer(playerid, clickedplayerid, source)
- {
- return 1;
- }
- public OnPlayerEditObject(playerid, playerobject, objectid, response, Float:fX, Float:fY, Float:fZ, Float:fRotX, Float:fRotY, Float:fRotZ )
- {
- return 1;
- }
- public OnPlayerEditAttachedObject(playerid, response, index, modelid, boneid, Float:fOffsetX, Float:fOffsetY, Float:fOffsetZ, Float:fRotX, Float:fRotY, Float:fRotZ, Float:fScaleX, Float:fScaleY, Float:fScaleZ )
- {
- return 1;
- }
- public OnPlayerSelectObject(playerid, type, objectid, modelid, Float:fX, Float:fY, Float:fZ)
- {
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment