Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ////////////////////////////////////////////////////////////////////////////////
- // Mafia vs. Cops LVTDM 1.0 //
- // ©2011 by Honig //
- ////////////////////////////////////////////////////////////////////////////////
- //===============================INCLUDES=====================================//
- #include <a_samp>
- #include <dini>
- #include <Dudb>
- //===============================DEFINES======================================//
- #define COLOR_BLUE 0x0000FFFF
- #define COLOR_RED 0xFF0000FF
- #define COLOR_YELLOW 0xFFFF00FF
- #define COLOR_GREEN 0x00FF00FF
- #define COLOR_WHITE 0xFFFFFFFF
- #define Gunshop 1
- //===============================gTEAMS=======================================//
- static gTeam[MAX_PLAYERS];
- #define TEAM_MAFIA 0
- #define TEAM_COPS 1
- //=================================NEWS=======================================//
- new bool:loggedin[MAX_PLAYERS];
- new price[] = {5000,6500,8000,10000,1000};
- //==============================ENUM STRUCTURES===============================//
- enum Info
- {
- Password,
- Money,
- Score,
- Kills,
- Deaths
- }
- new pInfo[MAX_PLAYERS][Info];
- //============================================================================//
- main()
- {
- print("\n-----------------------------------------");
- print(" Running Mafia vs. Cops LVTDM by Honig");
- print("-----------------------------------------\n");
- }
- public OnGameModeInit()
- {
- //==============================GAMEMODE TEXT=================================//
- SetGameModeText("LVTDM v.1.0");
- //==============================TRIAD CARS====================================//
- AddStaticVehicle(560,1881.1771,954.0503,10.5254,270.0610,112,112); // Triadcar1
- AddStaticVehicle(560,1881.0806,957.4236,10.5256,271.3663,112,112); // Triadcar2
- AddStaticVehicle(506,1925.2111,938.4047,10.4478,269.3415,112,112); // Triadcar3
- AddStaticVehicle(506,1932.3177,938.3237,10.4477,269.6419,112,112); // Triadcar4
- AddStaticVehicle(409,2037.9182,1020.6960,10.5427,0.9193,112,112); // Triadcar5
- AddStaticVehicle(603,2037.7992,987.3119,10.5810,0.4470,112,112); // Triadcar6
- AddStaticVehicle(562,1881.1682,963.5891,10.4794,269.2056,112,112); // Triadcar7
- AddStaticVehicle(562,2023.3652,1088.5280,10.4031,268.5323,112,112); // Triadcar8
- //==============================COP CARS======================================//
- AddStaticVehicle(598,2251.6067,2460.3315,10.5673,178.8149,7,1); // PoliceCar1
- AddStaticVehicle(598,2269.0366,2442.5854,10.5674,359.5301,7,1); // PoliceCar2
- AddStaticVehicle(598,2273.9431,2442.2820,10.5671,358.4214,7,1); // PoliceCar3
- AddStaticVehicle(598,2277.9246,2477.1570,10.5665,359.4208,7,1); // PoliceCar4
- AddStaticVehicle(528,2290.6155,2443.4846,10.8652,358.2004,7,1); // PoliceCar5
- AddStaticVehicle(528,2295.2424,2443.2202,10.8638,355.8154,7,1); // PoliceCar6
- AddStaticVehicle(523,2252.0234,2440.8708,10.3873,357.0417,7,1); // PoliceCar7
- AddStaticVehicle(523,2255.7297,2440.9026,10.3945,0.3249,7,1); // PoliceCar8
- //==============================TRIAD SKINS===================================//
- AddPlayerClass(117,1902.7887,963.8871,10.8203,187.8959,24,50,0,0,0,0); // TriadSkin1
- AddPlayerClass(118,1902.7887,963.8871,10.8203,187.8959,24,50,0,0,0,0); // TriadSkin2
- AddPlayerClass(294,1902.7887,963.8871,10.8203,187.8959,24,50,0,0,0,0); // TriadSkin3
- //==============================COP SKINS=====================================//
- AddPlayerClass(282,2296.2197,2451.5889,10.8203,84.8908,24,50,0,0,0,0); // CopSkin1
- AddPlayerClass(285,2296.2197,2451.5889,10.8203,84.8908,24,50,0,0,0,0); // CopSkin2
- AddPlayerClass(286,2296.2197,2451.5889,10.8203,84.8908,24,50,0,0,0,0); // CopSkin3
- //============================PICKUPS AND OCJECTS=============================//
- CreatePickup(1254,1,2000.1968,1538.7894,13.5859); // GunShopPickup
- //===========================3D TEXT LABELS===================================//
- Create3DTextLabel("/gunshop",COLOR_GREEN,2000.1968,1538.7894,13.5859,40.0,0);//GunShopLabel
- return 1;
- }
- public OnGameModeExit()
- {
- return 1;
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- SetPlayerInterior(playerid, 10);
- SetPlayerPos(playerid, 1995.3157,1017.8690,994.8906);
- SetPlayerFacingAngle(playerid, 263.7333);
- SetPlayerCameraPos(playerid, 1998.8292,1017.6395,994.8906);
- SetPlayerCameraLookAt(playerid, 1991.7678,1018.0959,994.8906);
- //========================TRIAD CLASS SELECTION===============================//
- if(classid >= 0 && classid <= 2)
- {
- SetPlayerColor(playerid,0x00FFFFFF);
- gTeam[playerid] = TEAM_MAFIA;
- GameTextForPlayer(playerid,"~h~Triads",1000,5);
- }
- //========================COP CLASS SELECTION=================================//
- else if(classid >= 3 && classid <= 5)
- {
- SetPlayerColor(playerid,0x0000FFFF);
- gTeam[playerid] = TEAM_COPS;
- GameTextForPlayer(playerid,"~h~Cops",1000,5);
- }
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- SendClientMessage(playerid,COLOR_WHITE,"Welcome to 'Mafia vs. Cops' v.1 LVTDM");
- new name[128], save[128];
- GetPlayerName(playerid,name,sizeof(name));
- format(save,sizeof(save),"/Players/%s.ini",name);
- if(dini_Exists(save))
- {
- SendClientMessage(playerid, COLOR_WHITE, "Welcome back! Login by typing /login <password>");
- GivePlayerMoney(playerid,dini_Int(save,"Money"));
- SetPlayerScore(playerid,dini_Int(save,"Score"));
- pInfo[playerid][Kills] = dini_Int(save,"Kills");
- pInfo[playerid][Deaths] = dini_Int(save,"Deaths");
- }
- else
- {
- if(!dini_Exists(save))
- {
- SendClientMessage(playerid, COLOR_RED, "Register by typing /register <password>!");
- }
- }
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- new name[128], save[128];
- GetPlayerName(playerid,name,sizeof(name));
- format(save,sizeof(save),"/Players/%s.ini",name);
- if(dini_Exists(save))
- {
- dini_IntSet(save,"Money",GetPlayerMoney(playerid));
- dini_IntSet(save,"Score",GetPlayerScore(playerid));
- dini_IntSet(save,"Kills",pInfo[playerid][Kills]);
- dini_IntSet(save,"Deaths",pInfo[playerid][Deaths]);
- }
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- //================MAPICONS====================================================//
- SetPlayerMapIcon( playerid, 12, 2000.1968,1538.7894,13.5859, 52, 0, MAPICON_LOCAL ); // GunShop Icon
- //===============INTERIOR OF THE PLAYER=======================================//
- SetPlayerInterior(playerid, 0);
- //==============IF NOT LOGGINED===============================================//
- new name[128], save[128];
- GetPlayerName(playerid,name,sizeof(name));
- format(save,sizeof(save),"/Players/%s.ini",name);
- if(loggedin[playerid] == false)
- {
- SendClientMessage(playerid, COLOR_RED, "ERROR: You have to login before spawn! Otherwise your statistics won't save.");
- }
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- //========KILLS AND DEATHS====================================================//
- pInfo[killerid][Kills] ++;
- pInfo[playerid][Deaths] ++;
- //===============NEWS=========================================================//
- new playercash;
- //===============SET SCORE====================================================//
- SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);
- //==============SET MONEY=====================================================//
- if(killerid == INVALID_PLAYER_ID)
- {
- SendDeathMessage(INVALID_PLAYER_ID,playerid,reason);
- ResetPlayerMoney(playerid);
- }
- else
- {
- SendDeathMessage(killerid,playerid,reason);
- playercash = GetPlayerMoney(playerid);
- if (playercash > 0)
- {
- GivePlayerMoney(killerid, playercash);
- ResetPlayerMoney(playerid);
- }
- else
- {
- }
- }
- return 1;
- }
- public OnVehicleSpawn(vehicleid)
- {
- return 1;
- }
- public OnVehicleDeath(vehicleid, killerid)
- {
- return 1;
- }
- public OnPlayerText(playerid, text[])
- {
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- //====================NEWS====================================================//
- new spieler[MAX_PLAYER_NAME];
- //===================KILL COMMAND=============================================//
- if (strcmp("/kill", cmdtext, true, 10) == 0)
- {
- SetPlayerHealth(playerid, 0);
- return 1;
- }
- //==================OBJECTIVE COMMAND=========================================//
- if (strcmp("/objective", cmdtext, true, 10) == 0)
- {
- SendClientMessage(playerid,COLOR_WHITE,"In LVTDM:Mafia vs. Cops, theres no win/endgame conditions to meet.");
- SendClientMessage(playerid,COLOR_WHITE,"When you kill a player, you'll receive whatever money they have.");
- SendClientMessage(playerid,COLOR_WHITE,"If a player kills you, you'll loose your money.");
- SendClientMessage(playerid,COLOR_WHITE,"But remember! You can always gamble in the casinos and buy new cool");
- SendClientMessage(playerid,COLOR_WHITE,"weapons for the money.");
- return 1;
- }
- //================REGISTER COMMAND============================================//
- if(strcmp(strget(cmdtext,0), "/register", true) == 0)
- {
- new save[40];
- GetPlayerName(playerid,spieler,sizeof(spieler));
- format(save, sizeof(save),"Players/%s.ini",spieler); //Speicherort
- if(!dini_Exists(save))
- {
- dini_Create(save);
- dini_IntSet(save,"passwort",udb_hash(strget(cmdtext,1)));
- SendClientMessage(playerid, COLOR_GREEN, "You account is registered!");
- SendClientMessage(playerid, COLOR_GREEN, "Now login by typing /login <password>");
- GivePlayerMoney(playerid, 5000);
- }
- else
- {
- if(dini_Exists(save))
- {
- SendClientMessage(playerid, COLOR_RED, "Error: This name is already registered! Please reconnect and change your name!");
- }
- }
- return 1;
- }
- //=========LOGIN COMMAND======================================================//
- if(strcmp(strget(cmdtext,0), "/login", true) == 0)
- {
- new save[40], s2[256];
- GetPlayerName(playerid,spieler,sizeof(spieler));
- format(save,sizeof(save),"Players/%s.ini",spieler);
- if(dini_Exists(save))
- {
- s2=dini_Get(save,"passwort");
- if(strval(s2)==udb_hash(strget(cmdtext,1)))
- {
- loggedin[playerid] = true;
- SendClientMessage(playerid, COLOR_GREEN, "Succefully loggined!");
- }
- else
- {
- SendClientMessage(playerid, COLOR_RED,"ERROR: Wrong password!");
- }
- }
- return 1;
- }
- //=========GUNSHOP COMMAND====================================================//
- if (strcmp("/gunshop", cmdtext, true) == 0)
- {
- if(IsPlayerInRangeOfPoint(playerid,5.0,2000.1968,1538.7894,13.5859))
- {
- ShowPlayerDialog(playerid,Gunshop,DIALOG_STYLE_LIST,"Weapons","Desert Eagle - $5000\nMP5 - $6500\nShotgun - $8000\nAK47 - $10000\nArmour - $1000","Buy","Back");
- return 1;
- }
- else
- {
- SendClientMessage(playerid, COLOR_RED, "You aren't at the gunshop pickup!");
- }
- }
- 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 OnPlayerRequestSpawn(playerid)
- {
- 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 OnVehiclePaintjob(playerid, vehicleid, paintjobid)
- {
- return 1;
- }
- public OnVehicleRespray(playerid, vehicleid, color1, color2)
- {
- 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[])
- {
- if(dialogid == Gunshop)
- {
- if(response)
- {
- if(listitem == 0)
- {
- if(price[listitem] >= GetPlayerMoney(playerid))return SendClientMessage(playerid,COLOR_RED,"You haven't got enough money!");
- GivePlayerWeapon(playerid,24,50);
- GivePlayerMoney(playerid, -5000);
- }
- if(listitem == 1)
- {
- if(price[listitem] >= GetPlayerMoney(playerid))return SendClientMessage(playerid,COLOR_RED,"You haven't got enough money!");
- GivePlayerWeapon(playerid,29,200);
- GivePlayerMoney(playerid, -6500);
- }
- if(listitem == 2)
- {
- if(price[listitem] >= GetPlayerMoney(playerid))return SendClientMessage(playerid,COLOR_RED,"You haven't got enough money!");
- GivePlayerWeapon(playerid,31,300);
- GivePlayerMoney(playerid, -8000);
- }
- if(listitem == 3)
- {
- if(price[listitem] >= GetPlayerMoney(playerid))return SendClientMessage(playerid,COLOR_RED,"You haven't got enough money!");
- GivePlayerWeapon(playerid,25,25);
- GivePlayerMoney(playerid, -10000);
- }
- if(listitem == 4)
- {
- if(price[listitem] >= GetPlayerMoney(playerid))return SendClientMessage(playerid,COLOR_RED,"You haven't got enough money!");
- SetPlayerArmour(playerid,100.0);
- GivePlayerMoney(playerid, -1000);
- }
- }
- }
- return 1;
- }
- public OnPlayerClickPlayer(playerid, clickedplayerid, source)
- {
- return 1;
- }
- ////////////////////////////////////////////////////////////////////////////////
- //============STOCKS AND MORE PUBLICS=========================================//
- stock strget(strx[], pos, search = ' ') {
- new arg, ret[128], idxx;
- for (new i = 0; i < strlen(strx); i++) {
- if(strx[i] == search || i == strlen(strx) || strx[i + 1] == 10) {
- arg++;
- if (arg == pos + 1){
- ret[i-idxx] = EOS;
- return ret;
- } else if (arg == pos)
- idxx= i+1;
- }
- else if (arg == pos)
- ret[i - idxx] = strx[i];
- }
- return ret;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement