Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <a_mysql>
- //#include <streamer>
- #include <foreach>
- #include <zcmd>
- #include <sscanf2>
- //#if defined FILTERSCRIPT
- #define ResetMoneyBar ResetPlayerMoney
- #define UpdateMoneyBar GivePlayerMoney
- #define MAX_CHARACTER_SLOTS 4
- #undef MAX_PLAYERS
- #define MAX_PLAYERS 50
- #undef MAX_VEHICLES
- #define MAX_VEHICLES 2500
- #define MAX_HOUSES 2000
- #define MAX_BUSINESS 2000
- #define MAX_FACTIONS 25
- #define MAX_BUYABLE_VEH 2000
- #define MAX_VEH_MODS 12
- #define MAX_OWNABLE_VEH 3
- #define sDefault_P_Cash 500
- #define sDEFAULT_P_Bank 10000
- #define sDefault_P_Skin 1
- #define COLOR_WHITE 0xFFFFFFFF
- #define COLOR_RED 0xE60000FF
- #define COLOR_PURPLE 0xC84ECBFF
- #define COLOR_BLUE 0x0000FFFF
- #define COLOR_DARKGREY 0x5F5F5FFF
- #define COLOR_LIGHTGREEN 0x9BFF37FF
- #define COLOR_YELLOW 0xFFFF00FF
- #define WHISPER 0x8080FFDE
- #define GREY 0x808080FF
- #define SHOUT 0xFF8000DE
- #define AdminOnly "You are not authorized to use this command."
- #define HelperOnly "You must be a helper moderator to use this command."
- //---Dialog IDS]---
- #define DIALOG_REGISTER_PASSWORD (1)
- #define DIALOG_REGISTER_EMAIL (2)
- #define DIALOG_LOGIN (3)
- #define DIALOG_MAIN_MENU (4)
- #define DIALOG_MAIN_MENU_OPTIONS (5)
- #define DIALOG_MAIN_MENU_CREATE_CHARACTER_NAME (6)
- #define DIALOG_MAIN_MENU_CREATE_CHARACTER_AGE (7)
- #define DIALOG_MAIN_MENU_CREATE_CHARACTER_SEX (8)
- #define DIALOG_MAIN_MENU_CREATE_CHARACTER_RELIGION (9)
- #define DIALOG_MAIN_MENU_CHARACTER_DELETE (10)
- #define DIALOG_MAIN_MENU_CHANGE_PASSWORD (11)
- #define DIALOG_MAIN_MENU_CHANGE_PHRASE (12)
- //-----------------
- #define MYSQL_HOST "localhost" //This will be your mysql host.
- #define MYSQL_USER "root" //This will be your mysql username.
- #define MYSQL_DB "sampserver" //This is your database name.
- #define MYSQL_PASS "asd123" //This is your mysql password.
- //-----------------
- new vNames[][] = {
- "Landstalker",
- "Bravura",
- "Buffalo",
- "Linerunner",
- "Pereniel",
- "Sentinel",
- "Dumper",
- "Firetruck",
- "Trashmaster",
- "Stretch",
- "Manana",
- "Infernus",
- "Voodoo",
- "Pony",
- "Mule",
- "Cheetah",
- "Ambulance",
- "Leviathan",
- "Moonbeam",
- "Esperanto",
- "Taxi",
- "Washington",
- "Bobcat",
- "Mr Whoopee",
- "BF Injection",
- "Hunter",
- "Premier",
- "Enforcer",
- "Securicar",
- "Banshee",
- "Predator",
- "Bus",
- "Rhino",
- "Barracks",
- "Hotknife",
- "Trailer",
- "Previon",
- "Coach",
- "Cabbie",
- "Stallion",
- "Rumpo",
- "RC Bandit",
- "Romero",
- "Packer",
- "Monster Truck",
- "Admiral",
- "Squalo",
- "Seasparrow",
- "Pizzaboy",
- "Tram",
- "Trailer",
- "Turismo",
- "Speeder",
- "Reefer",
- "Tropic",
- "Flatbed",
- "Yankee",
- "Caddy",
- "Solair",
- "Berkley's RC Van",
- "Skimmer",
- "PCJ-600",
- "Faggio",
- "Freeway",
- "RC Baron",
- "RC Raider",
- "Glendale",
- "Oceanic",
- "Sanchez",
- "Sparrow",
- "Patriot",
- "Quad",
- "Coastguard",
- "Dinghy",
- "Hermes",
- "Sabre",
- "Rustler",
- "ZR-350",
- "Walton",
- "Regina",
- "Comet",
- "BMX",
- "Burrito",
- "Camper",
- "Marquis",
- "Baggage",
- "Dozer",
- "Maverick",
- "News Chopper",
- "Rancher",
- "FBI Rancher",
- "Virgo",
- "Greenwood",
- "Jetmax",
- "Hotring",
- "Sandking",
- "Blista Compact",
- "Police Maverick",
- "Boxville",
- "Benson",
- "Mesa",
- "RC Goblin",
- "Hotring Racer",
- "Hotring Racer",
- "Bloodring Banger",
- "Rancher",
- "Super GT",
- "Elegant",
- "Journey",
- "Bike",
- "Mountain Bike",
- "Beagle",
- "Cropdust",
- "Stunt",
- "Tanker",
- "RoadTrain",
- "Nebula",
- "Majestic",
- "Buccaneer",
- "Shamal",
- "Hydra",
- "FCR-900",
- "NRG-500",
- "HPV1000",
- "Cement Truck",
- "Tow Truck",
- "Fortune",
- "Cadrona",
- "FBI Truck",
- "Willard",
- "Forklift",
- "Tractor",
- "Combine",
- "Feltzer",
- "Remington",
- "Slamvan",
- "Blade",
- "Freight",
- "Streak",
- "Vortex",
- "Vincent",
- "Bullet",
- "Clover",
- "Sadler",
- "Firetruck",
- "Hustler",
- "Intruder",
- "Primo",
- "Cargobob",
- "Tampa",
- "Sunrise",
- "Merit",
- "Utility",
- "Nevada",
- "Yosemite",
- "Windsor",
- "Monster Truck",
- "Monster Truck",
- "Uranus",
- "Jester",
- "Sultan",
- "Stratum",
- "Elegy",
- "Raindance",
- "RC Tiger",
- "Flash",
- "Tahoma",
- "Savanna",
- "Bandito",
- "Freight",
- "Trailer",
- "Kart",
- "Mower",
- "Duneride",
- "Sweeper",
- "Broadway",
- "Tornado",
- "AT-400",
- "DFT-30",
- "Huntley",
- "Stafford",
- "BF-400",
- "Newsvan",
- "Tug",
- "Trailer",
- "Emperor",
- "Wayfarer",
- "Euros",
- "Hotdog",
- "Club",
- "Trailer",
- "Trailer",
- "Andromada",
- "Dodo",
- "RC Cam",
- "Launch",
- "Police Car (LSPD)",
- "Police Car (SFPD)",
- "Police Car (LVPD)",
- "Police Ranger",
- "Picador",
- "S.W.A.T. Van",
- "Alpha",
- "Phoenix",
- "Glendale",
- "Sadler",
- "Luggage Trailer",
- "Luggage Trailer",
- "Stair Trailer",
- "Boxville",
- "Farm Plow",
- "Utility Trailer"
- };
- enum MainAccount
- {
- mID,
- mPassword[20],
- mEmailAddress[25],
- mCurrentCID,
- mRealName[128],
- bool:mLoggedIn,
- mSuperAdmin,
- mSecretPhrase[28],
- mOriginalUsername[MAX_PLAYER_NAME],
- mOld_IP[20],
- mCharacterString[128],
- }
- new MasterAccount[MAX_PLAYERS][MainAccount];
- enum PlayerCharacter
- {
- cName[MAX_PLAYER_NAME],
- cOwnerID,
- cID,
- cAdminLevel,
- Float:cX,
- Float:cY,
- Float:cZ,
- Float:cAngle,
- cWorld,
- cInterior,
- cCash,
- cBank,
- cSkin,
- cMask,
- Level,
- SpawnPoint,
- Accent,
- ExperiencePoints,
- Deaths,
- Kills,
- CellPhone,
- CellPhoneNumber,
- CellBattery,
- Job,
- CarKey1,
- CarKey2,
- CarKey3,
- Clothes1,
- Clothes2,
- Clothes3,
- ClothesUsed,
- CarLicense,
- TruckLicense,
- HouseKey,
- Business1Key,
- Business2Key,
- Faction,
- FactionRank,
- }
- new Character[MAX_PLAYERS][PlayerCharacter];
- enum HouseData
- {
- HouseName[128],
- HouseOwner[24],
- HouseID,
- Float:HouseExteriorX,
- Float:HouseExteriorY,
- Float:HouseExteriorZ,
- Float:HouseInteriorX,
- Float:HouseInteriorY,
- Float:HouseInteriorZ,
- HouseInteriorID,
- HousePrice,
- HouseLocked,
- HouseWorld
- };
- new Houses[MAX_HOUSES][HouseData];
- enum FactionData
- {
- FactionName[128],
- RankOne[24],
- RankTwo[24],
- RankThree[24],
- RankFour[24],
- RankFive[24],
- RankSix[24],
- RankSeven[24],
- Float:fSpawnX,
- Float:fSpawnY,
- Float:fSpawnZ,
- Float:fSpawnA,
- Float:fPayCheckX,
- Float:fPayCheckY,
- Float:fPayCheckZ,
- };
- new Factions[MAX_FACTIONS][FactionData];
- enum _Vehicles
- {
- vModel,
- vColor1,
- vColor2,
- vPrice,
- VehicleOwner[MAX_PLAYER_NAME],
- Float:vPosX,
- Float:vPosY,
- Float:vPosZ,
- Float:vPosA,
- VehiclePlate[32],
- VehiclePaintJob,
- vLocked,
- vTrunkMoney,
- vTrunkMats,
- vTrunkCocaine,
- vTrunkMoonshine,
- vTrunkWeed,
- vFuel
- }
- //new Vehicles[MAX_BUYABLE_VEH][_Vehicles];
- //-------------------------------------NEW'S-------------------------------------
- // new VehicleID = GetPlayerVehicleId(playerid)
- new Player_Name[MAX_PLAYERS][MAX_PLAYER_NAME], Player_Ip[MAX_PLAYERS][16];
- //new EngineStatus[MAX_PLAYERS];
- //new Float:vhp;
- new Logged[MAX_PLAYERS];
- new MaskNumber[MAX_PLAYERS], MaskOn[MAX_PLAYERS], Text3D:masklabel[MAX_PLAYERS];
- //new Text3D:NameTag[MAX_PLAYERS];
- new gHandle;
- //--------------FORWARDS--------------
- main()
- {
- print(" Blank Gamemode by your name here");
- }
- public OnGameModeInit()
- {
- gHandle = mysql_connect("localhost", "root", "sampserver", "");
- if(mysql_errno() != 0) print("Could not connect to database!");
- //Timers
- SetTimer("AntiCheatTimer", 1000, 1);
- ManualVehicleEngineAndLights();
- ShowPlayerMarkers(0);
- EnableStuntBonusForAll(0);
- DisableInteriorEnterExits();
- return 1;
- }
- public OnGameModeExit()
- {
- 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 0;
- }
- forward AccountExists(playerid); // Checks if the master account is already registered.
- public AccountExists(playerid)
- {
- if(IsPlayerConnected(playerid))
- {
- new str[128];
- format(str, sizeof(str), "SELECT `mID` FROM `MasterAccount` WHERE `mID` = '%s'", PlayerName(playerid));
- mysql_query(gHandle, str);
- if(cache_num_rows() >=1)
- {
- return true;
- }
- }
- return false;
- }
- forward MasterAccountLogin(playerid, password[]); // Login to an existing master account.
- public MasterAccountLogin(playerid, password[])
- {
- if(IsPlayerConnected(playerid))
- {
- if(AccountExists(playerid))
- {
- if(strlen(password) >= 1 && strlen(password) <= 20)
- {
- if(!MasterAccount[playerid][mLoggedIn])
- {
- new value[128];
- new query[128];
- format(query, sizeof(query), "SELECT * FROM `MasterAccount` WHERE `username` = '%s' AND `mPassword` = '%s' LIMIT 1", MasterAccount[playerid][mOriginalUsername] , MasterAccount[playerid][mPassword]);
- new Cache:result = mysql_query(gHandle, query);
- if(cache_num_rows() > 0)
- {
- SetPlayerColor(playerid, COLOR_LIGHTGREEN);
- MasterAccount[playerid][mLoggedIn] = true;
- cache_get_field_content(0, "password", MasterAccount[playerid][mPassword], 20);
- cache_get_field_content(0, "email_address", MasterAccount[playerid][mEmailAddress], 30);
- cache_get_field_content(0, "ip_address", MasterAccount[playerid][mOld_IP], 20);
- cache_get_field_content(0, "super_admin", value, 5); MasterAccount[playerid][mSuperAdmin] = strval(value);
- cache_get_field_content(0, "id", value, 15); MasterAccount[playerid][mID] = strval(value);
- ShowMenuDialog(playerid);
- printf("Password: %s, Email Address: %s, Last IP Used: %s, Super Admin: %d, ID: %d.", MasterAccount[playerid][mPassword], MasterAccount[playerid][mEmailAddress], MasterAccount[playerid][mOld_IP], MasterAccount[playerid][mSuperAdmin], MasterAccount[playerid][mID]);
- return true;
- }
- else
- {
- SetPVarInt(playerid, "LOGIN_ATTEMPTS", GetPVarInt(playerid, "LOGIN_ATTEMPTS") + 1);
- switch(GetPVarInt(playerid, "LOGIN_ATTEMPTS"))
- {
- case 1: ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Master Account - Login","The password you entered is incorrect.","Login","Cancel");
- case 2: ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Master Account - Login","The password you entered is incorrect.","Login","Cancel");
- case 3: ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Master Account - Login","The password you entered is incorrect.","Login","Cancel");
- case 4: Kick(playerid);
- }
- }
- cache_delete(result);
- }
- else { printf("Players already logged !"); }
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Master Account - Login","Account already registered, please enter your password to continue.","Login","Cancel");
- }
- } else { printf("Accounts doesn't exits !"); }
- }
- else { print("Players didn't connected !"); }
- return false;
- }
- forward MasterAccountRegister(playerid); // Register a new Master Account if name not already in use.
- public MasterAccountRegister(playerid)
- {
- if(!AccountExists(playerid))
- {
- new Query[300];
- mysql_format(gHandle, Query, sizeof (Query), "INSERT INTO Master (username,password,email_address,ip_address,super_admin,old_ip) VALUES ('%e' , '%e', '%e', '%e', 0, 'UNKNOWN')", PlayerName(playerid), GetPVarStringEx(playerid, "TEMP_PASSWORD"), GetPVarStringEx(playerid, "TEMP_EMAIL"), GetPlayerIPEx(playerid));
- mysql_query(gHandle, Query, false);
- DeletePVar(playerid,"TEMP_EMAIL");
- DeletePVar(playerid,"TEMP_PASSWORD");
- return true;
- }
- return false;
- }
- forward ResetMasterAccountVariables(playerid); // Resetting variables upon connection.
- public ResetMasterAccountVariables(playerid)
- {
- strmid(MasterAccount[playerid][mPassword], "", 128, 128);
- strmid(MasterAccount[playerid][mEmailAddress], "", 128, 128);
- MasterAccount[playerid][mCurrentCID] = -1; // 0 = no character in use.
- MasterAccount[playerid][mID] = 0;
- strmid(MasterAccount[playerid][mRealName], "", 128, 128);
- MasterAccount[playerid][mSuperAdmin] = 0; // Not super-administrator.
- strmid(MasterAccount[playerid][mSecretPhrase], "", 128, 128);
- strmid(MasterAccount[playerid][mOriginalUsername], "", 128, 128);
- strmid(MasterAccount[playerid][mOld_IP], "", 128, 128);
- MasterAccount[playerid][mLoggedIn] = false; // Not logged in.
- MasterAccount[playerid][mPassword][0] = MasterAccount[playerid][mEmailAddress][0] = MasterAccount[playerid][mRealName][0] = MasterAccount[playerid][mSecretPhrase][0] = MasterAccount[playerid][mOriginalUsername][0] = MasterAccount[playerid][mOld_IP][0] = 0;
- }
- forward SaveCharacter(playerid);
- public SaveCharacter(playerid)
- {
- if(AccountExists(playerid))
- {
- if(MasterAccount[playerid][mLoggedIn])
- {
- new query[1024], pname[24];
- GetPlayerName(playerid, pname, 24);
- format(query, sizeof(query), "UPDATE PlayerCharacter SET cName=%s, cOwnerID=%d, Level=%d, cAdminLevel=%d, cCash=%d, cBank=%d, cMask=%d, ExperiencePoints=%d, SpawnPoint=%d, CellPhone=%d, CellPhoneNumber=%d, Accent=%s, CellBattery=%d, Job=%d, cID=%d, Deaths=%d, Kills=%d, CarKey1=%d, CarKey2=%d, CarKey3=%d, Clothes1=%d, Clothes2=%d, Clothes3=%d, ClothesUsed=%d, CarLicense=%d, HouseKey=%d, Business1Key=%d, Business2Key=%d, Faction=%d, FactionRank=%d WHERE Username='%s'", // <----572
- Character[playerid][cName],
- Character[playerid][cOwnerID],
- Character[playerid][cID],
- Character[playerid][cAdminLevel],
- /* Character[playerid][Float:cX],
- Character[playerid][Float:cY],
- Character[playerid][Float:cZ],
- Character[playerid][Float:cAngle],
- Character[playerid][cWorld],
- Character[playerid][cInterior],*/
- Character[playerid][cCash],
- Character[playerid][cBank],
- Character[playerid][cSkin],
- Character[playerid][cMask],
- Character[playerid][Level],
- Character[playerid][SpawnPoint],
- Character[playerid][Accent],
- Character[playerid][ExperiencePoints],
- Character[playerid][Deaths],
- Character[playerid][Kills],
- Character[playerid][CellPhone],
- Character[playerid][CellPhoneNumber],
- Character[playerid][CellBattery],
- Character[playerid][Job],
- Character[playerid][CarKey1],
- Character[playerid][CarKey2],
- Character[playerid][CarKey3],
- Character[playerid][Clothes1],
- Character[playerid][Clothes2],
- Character[playerid][Clothes3],
- Character[playerid][ClothesUsed],
- Character[playerid][CarLicense],
- Character[playerid][HouseKey],
- Character[playerid][Business1Key],
- Character[playerid][Business2Key],
- Character[playerid][Faction],
- Character[playerid][FactionRank]);
- mysql_query(1, query);
- /*
- format(query, sizeof(query), "UPDATE PlayerCharacter SET Clothes1=%d, Clothes2=%d, Clothes3=%d, ClothesUsed=%d, CarLicense=%d, TruckLicense=%d, HouseKey=%d, Business1Key=%d, Business2Key=%d, Faction=%d, FactionRank=%d, WHERE Username='%s'",
- Character[playerid][Clothes1],
- Character[playerid][Clothes2],
- Character[playerid][Clothes3],
- Character[playerid][ClothesUsed],
- Character[playerid][CarLicense],
- Character[playerid][TruckLicense],
- Character[playerid][HouseKey],
- Character[playerid][Business1Key],
- Character[playerid][Business2Key],
- Character[playerid][Faction],
- Character[playerid][FactionRank],
- pname);
- mysql_query(1, query);*/
- return true;
- }
- }
- return false;
- }
- forward ShowMenuDialog(playerid);
- public ShowMenuDialog(playerid)
- {
- //new count = 0; // , CharacterName[MAX_PLAYER_NAME];
- format(MasterAccount[playerid][mCharacterString], 128, ""); // Resetting Character list string, because reading text from list is impossible.
- if(MasterAccount[playerid][mLoggedIn])
- {
- new str[128];
- format(str, sizeof(str), "SELECT * FROM `PlayerCharacter` WHERE ( `owner_id` = '%d' )", MasterAccount[playerid][mID]);
- new Cache:result = mysql_query(gHandle, str);
- if(cache_num_rows() <= 0)
- {
- ShowPlayerDialog(playerid, DIALOG_MAIN_MENU, DIALOG_STYLE_LIST, "Main Menu - Character Selection", "No characters available.", "Spawn", "Options");
- }
- else
- {
- for(new a;a<cache_num_rows();a++)
- {
- new test[128];
- cache_get_field_content(a, "name", test); //CharacterName, MAX_PLAYER_NAME);
- if(a == (cache_num_rows() - 1)) { format( MasterAccount[playerid][mCharacterString], 128, "%s ", test); /*RemoveUnderScore(CharacterName)*//*%s*/ }
- else
- {
- format( MasterAccount[playerid][mCharacterString], 128, "%s\n ", test); /*RemoveUnderScore(CharacterName)*//*%s*/
- }
- //db_next_row(qresult);
- }
- if(strlen(MasterAccount[playerid][mCharacterString]) >= 1) { ShowPlayerDialog(playerid, DIALOG_MAIN_MENU, DIALOG_STYLE_LIST, "Main Menu - Character Selection", MasterAccount[playerid][mCharacterString], "Spawn", "Options"); }
- }
- cache_delete(result);
- }
- }
- forward ResetPlayerCharacterVariables(playerid);
- public ResetPlayerCharacterVariables(playerid)
- {
- strmid(Character[playerid][cName], "", 128, 128);
- Character[playerid][cID] = -1;
- Character[playerid][cOwnerID] = -1;
- Character[playerid][cAdminLevel] = 0;
- ResetPlayerCash(playerid);
- Character[playerid][cBank] = 0;
- Character[playerid][cSkin] = 0;
- Character[playerid][cMask] = 0;
- Character[playerid][Level] = 0;
- Character[playerid][SpawnPoint] = 0;
- Character[playerid][Accent] = 0;
- Character[playerid][ExperiencePoints] = 0;
- Character[playerid][Deaths] = 0;
- Character[playerid][Kills] = 0;
- Character[playerid][CellPhone] = 0;
- Character[playerid][CellPhoneNumber] = 0;
- Character[playerid][CellBattery] = 0;
- Character[playerid][Job] = 0;
- Character[playerid][CarKey1] = 0;
- Character[playerid][CarKey2] = 0;
- Character[playerid][CarKey3] = 0;
- Character[playerid][Clothes1] = 0;
- Character[playerid][Clothes2] = 0;
- Character[playerid][Clothes3] = 0;
- Character[playerid][ClothesUsed] = 0;
- Character[playerid][CarLicense] = 0;
- Character[playerid][TruckLicense] = 0;
- Character[playerid][HouseKey] = 0;
- Character[playerid][Business1Key] = 0;
- Character[playerid][Business2Key] = 0;
- Character[playerid][Faction] = 0;
- Character[playerid][FactionRank] = 0;
- //Character[playerid][cNameLabel] = -1; // Set to null, i'm not sure as what the invalid ID is but i assume it's -1.
- }
- forward PlayerCharacterCount(playerid);
- public PlayerCharacterCount(playerid)
- {
- new count;
- if(IsPlayerConnected(playerid))
- {
- if(MasterAccount[playerid][mLoggedIn])
- {
- new query[128];
- format(query, sizeof(query), "SELECT * FROM `MasterAccount` WHERE owner_id=%d", MasterAccount[playerid][mID]);
- mysql_query(1, query);
- count = cache_get_row_count(count);
- }
- }
- return count;
- }
- forward CharacterID(charactername[]); // Returns the character ID of the desired name.
- public CharacterID(charactername[])
- {
- new otherid[11], id, query[128];
- format(query, sizeof(query), "SELECT * FROM `Character` WHERE name=%s LIMIT 1", charactername);
- mysql_query(gHandle, query);
- if(cache_num_rows() > 0)
- {
- cache_get_field_content(0, "id", otherid, 11);
- id = strval(otherid);
- }
- return id;
- }
- forward CharacterExists(charactername[]); // Checks if the character exists by name.
- public CharacterExists(charactername[])
- {
- new query[128];
- format(query, sizeof(query), "SELECT * FROM `Character` WHERE name=%s", charactername);
- mysql_query(gHandle, query);
- if(cache_num_rows() >= 1)
- {
- return true;
- }
- return false;
- }
- forward SpawnedAsCharacter(playerid);
- public SpawnedAsCharacter(playerid)
- {
- if(IsPlayerConnected(playerid))
- {
- if(MasterAccount[playerid][mLoggedIn])
- {
- if(Character[playerid][cID] != -1) return true;
- }
- }
- return false;
- }
- forward CreateCharacter(playerid, charactername[],playercash, playerbank, playerskin); // Creates a character.
- public CreateCharacter(playerid, charactername[], playercash, playerbank, playerskin)
- {
- if(AccountExists(playerid)) // Checking if master account exists.
- {
- if(MasterAccount[playerid][mLoggedIn]) // Checking if players logged in.
- {
- if(!CharacterExists(charactername)) // Continue if character does not exist.
- {
- if(PlayerCharacterCount(playerid) <= MAX_CHARACTER_SLOTS) // Checking if player has went over his character limit.
- {
- if(strlen(charactername) >= 1)
- {/*
- new query[256];
- format(query, sizeof(query), "INSERT INTO `PlayerCharacter` cName=%s, cOwnerID=%d, Level=%d, cAdminLevel=%d, cCash=%d, cBank=%d, cMask=%d, ExperiencePoints=%d, SpawnPoint=%d, CellPhoneNumber=%d, Accent='%s', CellBattery=%d, Job=%d, cID=%d, Deaths=%d, Kills=%d, CarKey1=%d, CarKey2=%d, CarKey3=%d WHERE Username='%s'",
- */
- new query[1024], pname[24];
- GetPlayerName(playerid, pname, 24);
- format(query, sizeof(query), "INSERT INTO PlayerCharacter SET cName=%s, cOwnerID=%d, Level=%d, cAdminLevel=%d, cCash=%d, cBank=%d, cMask=%d, ExperiencePoints=%d, SpawnPoint=%d, CellPhone=%d, CellPhoneNumber=%d, Accent=%s, CellBattery=%d, Job=%d, cID=%d, Deaths=%d, Kills=%d, CarKey1=%d, CarKey2=%d, CarKey3=%d, Clothes1=%d, Clothes2=%d, Clothes3=%d, ClothesUsed=%d, CarLicense=%d, HouseKey=%d, Business1Key=%d, Business2Key=%d, Faction=%d, FactionRank=%d WHERE Username='%s'", // <----572
- Character[playerid][cName],
- Character[playerid][cOwnerID],
- Character[playerid][cID],
- Character[playerid][cAdminLevel],
- Character[playerid][cCash],
- Character[playerid][cBank],
- Character[playerid][cSkin],
- Character[playerid][cMask],
- Character[playerid][Level],
- Character[playerid][SpawnPoint],
- Character[playerid][Accent],
- Character[playerid][ExperiencePoints],
- Character[playerid][Deaths],
- Character[playerid][Kills],
- Character[playerid][CellPhone],
- Character[playerid][CellPhoneNumber],
- Character[playerid][CellBattery],
- Character[playerid][Job],
- Character[playerid][CarKey1],
- Character[playerid][CarKey2],
- Character[playerid][CarKey3],
- Character[playerid][Clothes1],
- Character[playerid][Clothes2],
- Character[playerid][Clothes3],
- Character[playerid][ClothesUsed],
- Character[playerid][CarLicense],
- Character[playerid][HouseKey],
- Character[playerid][Business1Key],
- Character[playerid][Business2Key],
- Character[playerid][Faction],
- Character[playerid][FactionRank]);
- mysql_query(gHandle, query, false);
- //MasterAccount[playerid][mID]);
- //mysql_query(1, query);
- format(query, sizeof(query), "Your character ID = %d.", Character[playerid][cID]);
- SendClientMessage(playerid, COLOR_WHITE, query);
- return true;
- //"INSERT INTO `PlayerCharacter` (`admin_level`,`cash`,`sex`,`age`,`bank`,`skin`,`religion`,`name`,`owner_id`) VALUES ( 0, %d, %d, %d, %d, %d, %d, '%s', %d)"
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_MAIN_MENU_CREATE_CHARACTER_NAME,DIALOG_STYLE_INPUT,"Master Account - New Character","You left the character name field blank.\n(Firstname Lastname format).","Continue","Go Back");
- }
- }
- else
- {
- ShowMenuDialog(playerid);
- SendClientMessage(playerid, COLOR_RED, "[I:] You have exceeded your character limit, and cannot create a new character.");
- }
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_MAIN_MENU_CREATE_CHARACTER_NAME,DIALOG_STYLE_INPUT,"Master Account - New Character","That character name already exists, choose another.\n(Firstname Lastname format).","Continue","Go Back");
- }
- }
- }
- return false;
- }
- forward DespawnCharacter(playerid); // Despawns the character if it's spawnted.
- public DespawnCharacter(playerid) // Force character selection is bugged, so we make the illusion it's going to character selection.
- {
- if(IsPlayerConnected(playerid))
- {
- if(MasterAccount[playerid][mLoggedIn])
- {
- if(SpawnedAsCharacter(playerid)) // Making sure a character slot is in use.
- {
- SaveCharacter(playerid);
- TogglePlayerControllable(playerid, 0);
- SetPlayerPos(playerid,1518.5189,-1084.0756,33.3984);
- SetPlayerCameraPos(playerid, 2126.0251,1283.9984,63.0858);
- SetPlayerCameraLookAt(playerid,92178.8748,1285.5367,39.5399);
- ResetPlayerCharacterVariables(playerid);
- MasterAccount[playerid][mCurrentCID] = -1;
- ShowMenuDialog(playerid);
- SetPlayerColor(playerid, COLOR_DARKGREY); // Character selection.
- return true;
- }
- }
- }
- return false;
- }
- forward PlayerOwnsCharacter_Name(playerid, charactername[]);
- public PlayerOwnsCharacter_Name(playerid, charactername[])
- {
- if(IsPlayerConnected(playerid))
- {
- if(MasterAccount[playerid][mLoggedIn])
- {
- new query[128];
- format(query, sizeof(query), "SELECT * FROM `Character` WHERE ( `name` = '%s' AND `owner_id` = '%d' )", charactername, MasterAccount[playerid][mID]);
- mysql_query(gHandle, query);
- if(cache_num_rows() >= 1)
- {
- return true;
- }
- }
- }
- return false;
- }
- forward PlayerOwnsCharacter_ID(playerid, id);
- public PlayerOwnsCharacter_ID(playerid, id)
- {
- if(IsPlayerConnected(playerid))
- {
- if(MasterAccount[playerid][mLoggedIn])
- {
- new query[128];
- format(query, sizeof(query), "SELECT * FROM `Character` WHERE ( `id` = '%d' AND `owner_id` = '%d' )", id, MasterAccount[playerid][mID]);
- mysql_query(gHandle, query);
- if(cache_num_rows() >= 1)
- {
- return true;
- }
- }
- }
- return false;
- }
- forward LoadCharacter(playerid, charactername[]); // Load character.
- public LoadCharacter(playerid, charactername[])
- {
- new count = 0, value[128];
- if(IsPlayerConnected(playerid))
- {
- if(MasterAccount[playerid][mLoggedIn])
- {
- count = PlayerCharacterCount(playerid);
- if(count >= 1 && count <= MAX_CHARACTER_SLOTS)
- {
- if(CharacterExists(charactername))
- {
- MasterAccount[playerid][mCurrentCID] = CharacterID(charactername);
- if(MasterAccount[playerid][mCurrentCID] != -1)
- {
- new query[256];
- new temp[128];
- format(query, sizeof(query), "SELECT * FROM `PlayerCharacter` WHERE ( `id` = '%d' )", MasterAccount[playerid][mCurrentCID]);
- mysql_query(gHandle, query);
- Character[playerid][cID] = MasterAccount[playerid][mCurrentCID];
- cache_get_field_content(0, "cName", temp); Character[playerid][cName] = strval(value); /*(qresult, "admin_level", value, 11);*/
- cache_get_field_content(0, "cOwnerID", value, 11); Character[playerid][cOwnerID] = strval(value);
- cache_get_field_content(0, "cID", value, 11); Character[playerid][cID] = strval(value);
- cache_get_field_content(0, "cAdminLevel", value, 11); Character[playerid][cAdminLevel] = strval(value);
- cache_get_field_content(0, "cCash", value, 11); Character[playerid][cCash] = strval(value);
- cache_get_field_content(0, "cBank", value, 11); Character[playerid][cBank] = strval(value);
- cache_get_field_content(0, "cSkin", value, 11); Character[playerid][cSkin] = strval(value);
- cache_get_field_content(0, "cMask", value, 11); Character[playerid][cMask] = strval(value);
- cache_get_field_content(0, "Level", value, 11); Character[playerid][Level] = strval(value);
- cache_get_field_content(0, "SpawnPoint", value, 11); Character[playerid][SpawnPoint] = strval(value);
- cache_get_field_content(0, "Accent", value, 11); Character[playerid][Accent] = strval(value);
- cache_get_field_content(0, "ExperiencePoints", value, 11); Character[playerid][ExperiencePoints] = strval(value);
- cache_get_field_content(0, "Deaths", value, 11); Character[playerid][Deaths] = strval(value);
- cache_get_field_content(0, "Kills", value, 11); Character[playerid][Kills] = strval(value);
- cache_get_field_content(0, "CellPhone", value, 11); Character[playerid][CellPhone] = strval(value);
- cache_get_field_content(0, "CellPhoneNumber", value, 11); Character[playerid][CellPhoneNumber] = strval(value);
- cache_get_field_content(0, "CellBattery", value, 11); Character[playerid][CellBattery] = strval(value);
- cache_get_field_content(0, "Job", value, 11); Character[playerid][Job] = strval(value);
- cache_get_field_content(0, "CarKey1", value, 11); Character[playerid][CarKey1] = strval(value);
- cache_get_field_content(0, "CarKey2", value, 11); Character[playerid][CarKey2] = strval(value);
- cache_get_field_content(0, "CarKey2", value, 11); Character[playerid][CarKey3] = strval(value);
- cache_get_field_content(0, "Clothes1", value, 11); Character[playerid][Clothes1] = strval(value);
- cache_get_field_content(0, "Clothes2", value, 11); Character[playerid][Clothes2] = strval(value);
- cache_get_field_content(0, "Clothes3", value, 11); Character[playerid][Clothes3] = strval(value);
- cache_get_field_content(0, "ClothesUsed", value, 11); Character[playerid][ClothesUsed] = strval(value);
- cache_get_field_content(0, "CarLicense", value, 11); Character[playerid][CarLicense] = strval(value);
- cache_get_field_content(0, "TruckLicense", value, 11); Character[playerid][TruckLicense] = strval(value);
- cache_get_field_content(0, "HouseKey", value, 11); Character[playerid][HouseKey] = strval(value);
- cache_get_field_content(0, "Business1Key", value, 11); Character[playerid][Business1Key] = strval(value);
- cache_get_field_content(0, "Business2Key", value, 11); Character[playerid][Business2Key] = strval(value);
- cache_get_field_content(0, "Faction", value, 11); Character[playerid][Faction] = strval(value);
- cache_get_field_content(0, "FactionRank", value, 11); Character[playerid][FactionRank] = strval(value);
- format(Character[playerid][cName], MAX_PLAYER_NAME, charactername);
- SetTimerEx("StartTimer", 1000, 0, "i", playerid);
- SpawnPlayer(playerid);
- SetPlayerVirtualWorld(playerid, Character[playerid][cWorld]);
- SetPlayerInterior(playerid, Character[playerid][cInterior]);
- SetPlayerCash(playerid, Character[playerid][cCash]);
- new str[128];
- format(str, sizeof(str), "You have successfully spawned as %s - (/logout to return to character selection).", RemoveUnderScore(Character[playerid][cName]));
- SendClientMessage(playerid, COLOR_WHITE, str);
- SetPlayerColor(playerid, COLOR_WHITE);// White = character spawned.
- }
- else
- {
- SendClientMessage(playerid, COLOR_RED, "ERROR");
- Kick(playerid);
- }
- }
- }
- }
- }
- return count;
- }
- public OnPlayerConnect(playerid)
- {
- //new query[128];
- GetPlayerName(playerid, Player_Name[playerid], MAX_PLAYER_NAME);
- GetPlayerIp(playerid, Player_Ip[playerid], 16);
- //mysql_format(1, query, sizeof(query),"SELECT `mPassword`, `ID` FROM `MasterAccount` WHERE `mOriginalUsername` = '%e' LIMIT 1", Player_Name[playerid]);
- //mysql_tquery(1, query, "OnAccountCheck", "i", playerid);
- // -------------------------- [ RESETTING VARIABLES ] ----------------------------
- ResetPlayerCharacterVariables(playerid);
- ResetMasterAccountVariables(playerid);
- //-----------------------------[STARTUP CAMERA POS]-------------------------------
- SetPlayerColor(playerid, COLOR_DARKGREY);
- SetPlayerCameraPos(playerid, 2126.0251,1283.9984,63.0858);
- SetPlayerCameraLookAt(playerid,92178.8748,1285.5367,39.5399);
- if(AccountExists(playerid))
- {
- ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Master Account - Login","Account already registered, please enter your password to continue.","Login","Cancel");
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_REGISTER_PASSWORD,DIALOG_STYLE_INPUT,"Master Account Registration - Step One","Password:\n( No more or less than 20 characters )","Continue","Cancel");
- }
- ClearScreen(playerid);
- SendClientMessage(playerid, COLOR_WHITE, "Welcome!");
- return 1;
- }
- forward StartTimer(playerid);
- public StartTimer(playerid)
- {
- new Text:JoinText;
- new joinmsg[256];
- if(MasterAccount[playerid][mLoggedIn] && Character[playerid][cAdminLevel] >= 1)
- {
- format(joinmsg, sizeof(joinmsg), "%s has joined the Server. {FFFFFF}IP: -To be done- ID: %d.", RemoveUnderScore(playerid), playerid); /*{FFFFFF}IP: %s GetIP(playerid), */
- SendToAdmins(COLOR_RED, joinmsg, 0);
- SendToAdmins(COLOR_RED, joinmsg, 1);
- }
- TextDrawHideForPlayer(playerid, JoinText);
- // if(Player[playerid][RegistrationStep] == 0)
- {
- if(Character[playerid][SpawnPoint] == 1) //North Caravan Park
- {
- TogglePlayerSpectating(playerid, false);
- if(Character[playerid][ClothesUsed] == 1)
- {
- SetSpawnInfo(playerid, 0, Character[playerid][Clothes1], 765.9069,361.9311,20.8550,174.3097, 0, 0, 0, 0, 0, 0);
- SpawnPlayer(playerid);
- if(Character[playerid][Faction] == 1)
- {
- SetPlayerArmour(playerid, 100);
- }
- if(Character[playerid][Faction] == 2)
- {
- GivePlayerWeapon(playerid, 42, 99999);
- }
- SetPlayerArmedWeapon(playerid, 0);
- }
- else if(Character[playerid][ClothesUsed] == 2)
- {
- SetSpawnInfo(playerid, 0, Character[playerid][Clothes2], 765.9069,361.9311,20.8550,174.3097, 0, 0, 0, 0, 0, 0);
- SpawnPlayer(playerid);
- if(Character[playerid][Faction] == 1)
- {
- SetPlayerArmour(playerid, 100);
- }
- if(Character[playerid][Faction] == 2)
- {
- GivePlayerWeapon(playerid, 42, 99999);
- }
- SetPlayerArmedWeapon(playerid, 0);
- }
- else if(Character[playerid][ClothesUsed] == 3)
- {
- SetSpawnInfo(playerid, 0, Character[playerid][Clothes3], 765.9069,361.9311,20.8550,174.3097, 0, 0, 0, 0, 0, 0);
- SpawnPlayer(playerid);
- if(Character[playerid][Faction] == 1)
- {
- SetPlayerArmour(playerid, 100);
- }
- if(Character[playerid][Faction] == 2)
- {
- GivePlayerWeapon(playerid, 42, 99999);
- }
- if(Character[playerid][Faction] == 3)
- {
- GivePlayerWeapon(playerid, 43, 20);
- }
- SetPlayerArmedWeapon(playerid, 0);
- }
- }
- else if(Character[playerid][SpawnPoint] == 2) //Blueberry Caravan Park
- {
- TogglePlayerSpectating(playerid, false);
- if(Character[playerid][ClothesUsed] == 1)
- {
- SetSpawnInfo(playerid, 0, Character[playerid][Clothes1], 252.1177,-310.5331,1.5836,52.7107, 0, 0, 0, 0, 0, 0);
- SpawnPlayer(playerid);
- if(Character[playerid][Faction] == 1)
- {
- SetPlayerArmour(playerid, 100);
- }
- if(Character[playerid][Faction] == 2)
- {
- GivePlayerWeapon(playerid, 42, 99999);
- }
- SetPlayerArmedWeapon(playerid, 0);
- }
- else if(Character[playerid][ClothesUsed] == 2)
- {
- SetSpawnInfo(playerid, 0, Character[playerid][Clothes2], 252.1177,-310.5331,1.5836,52.7107, 0, 0, 0, 0, 0, 0);
- SpawnPlayer(playerid);
- if(Character[playerid][Faction] == 1)
- {
- SetPlayerArmour(playerid, 100);
- }
- if(Character[playerid][Faction] == 2)
- {
- GivePlayerWeapon(playerid, 42, 99999);
- }
- SetPlayerArmedWeapon(playerid, 0);
- }
- else if(Character[playerid][ClothesUsed] == 3)
- {
- SetSpawnInfo(playerid, 0, Character[playerid][Clothes3], 252.1177,-310.5331,1.5836,52.7107, 0, 0, 0, 0, 0, 0);
- SpawnPlayer(playerid);
- if(Character[playerid][Faction] == 1)
- {
- SetPlayerArmour(playerid, 100);
- }
- if(Character[playerid][Faction] == 2)
- {
- GivePlayerWeapon(playerid, 42, 99999);
- }
- SetPlayerArmedWeapon(playerid, 0);
- }
- SetPlayerVirtualWorld(playerid, 0);
- }
- else if(Character[playerid][SpawnPoint] == 3) //Palomino Creek Caravan Park
- {
- TogglePlayerSpectating(playerid, false);
- if(Character[playerid][ClothesUsed] == 1)
- {
- SetSpawnInfo(playerid, 0, Character[playerid][Clothes1], 2266.2488,27.3444,26.4328,4.8782, 0, 0, 0, 0, 0, 0);
- SpawnPlayer(playerid);
- SetPlayerVirtualWorld(playerid, 0);
- if(Character[playerid][Faction] == 1)
- {
- SetPlayerArmour(playerid, 100);
- }
- if(Character[playerid][Faction] == 2)
- {
- GivePlayerWeapon(playerid, 42, 99999);
- }
- SetPlayerArmedWeapon(playerid, 0);
- }
- else if(Character[playerid][ClothesUsed] == 2)
- {
- SetSpawnInfo(playerid, 0, Character[playerid][Clothes2], 2266.2488,27.3444,26.4328,4.8782, 0, 0, 0, 0, 0, 0);
- SpawnPlayer(playerid);
- SetPlayerVirtualWorld(playerid, 0);
- if(Character[playerid][Faction] == 1)
- {
- SetPlayerArmour(playerid, 100);
- }
- if(Character[playerid][Faction] == 2)
- {
- GivePlayerWeapon(playerid, 42, 99999);
- }
- SetPlayerArmedWeapon(playerid, 0);
- }
- else if(Character[playerid][ClothesUsed] == 3)
- {
- SetSpawnInfo(playerid, 0, Character[playerid][Clothes3], 2266.2488,27.3444,26.4328,4.8782, 0, 0, 0, 0, 0, 0);
- SpawnPlayer(playerid);
- SetPlayerVirtualWorld(playerid, 0);
- if(Character[playerid][Faction] == 1)
- {
- SetPlayerArmour(playerid, 100);
- }
- if(Character[playerid][Faction] == 2)
- {
- GivePlayerWeapon(playerid, 42, 99999);
- }
- SetPlayerArmedWeapon(playerid, 0);
- }
- }
- else if(Character[playerid][SpawnPoint] == 4) //Montgomery Caravan Park
- {
- TogglePlayerSpectating(playerid, false);
- if(Character[playerid][ClothesUsed] == 1)
- {
- SetSpawnInfo(playerid, 0, Character[playerid][Clothes1], 1284.0914,168.3455,20.4620,354.0366, 0, 0, 0, 0, 0, 0);
- SetPlayerVirtualWorld(playerid, 0);
- SpawnPlayer(playerid);
- if(Character[playerid][Faction] == 1)
- {
- SetPlayerArmour(playerid, 100);
- }
- if(Character[playerid][Faction] == 2)
- {
- GivePlayerWeapon(playerid, 42, 99999);
- }
- SetPlayerArmedWeapon(playerid, 0);
- }
- else if(Character[playerid][ClothesUsed] == 2)
- {
- SetSpawnInfo(playerid, 0, Character[playerid][Clothes2], 1284.0914,168.3455,20.4620,354.0366, 0, 0, 0, 0, 0, 0);
- SetPlayerVirtualWorld(playerid, 0);
- SpawnPlayer(playerid);
- if(Character[playerid][Faction] == 1)
- {
- SetPlayerArmour(playerid, 100);
- }
- if(Character[playerid][Faction] == 2)
- {
- GivePlayerWeapon(playerid, 42, 99999);
- }
- SetPlayerArmedWeapon(playerid, 0);
- }
- else if(Character[playerid][ClothesUsed] == 3)
- {
- SetSpawnInfo(playerid, 0, Character[playerid][Clothes3], 1284.0914,168.3455,20.4620,354.0366, 0, 0, 0, 0, 0, 0);
- SetPlayerVirtualWorld(playerid, 0);
- SpawnPlayer(playerid);
- if(Character[playerid][Faction] == 1)
- {
- SetPlayerArmour(playerid, 100);
- }
- if(Character[playerid][Faction] == 2)
- {
- GivePlayerWeapon(playerid, 42, 99999);
- }
- SetPlayerArmedWeapon(playerid, 0);
- }
- }
- else if(Character[playerid][SpawnPoint] == 5) //Owned Home
- {
- TogglePlayerSpectating(playerid, false);
- if(Character[playerid][ClothesUsed] == 1)
- {
- SetSpawnInfo(playerid, 0, Character[playerid][Clothes1], Houses[Character[playerid][HouseKey]][HouseExteriorX], Houses[Character[playerid][HouseKey]][HouseExteriorY], Houses[Character[playerid][HouseKey]][HouseExteriorZ], 90.0, 0, 0, 0, 0, 0, 0);
- SetPlayerVirtualWorld(playerid, 0);
- SpawnPlayer(playerid);
- if(Character[playerid][Faction] == 1)
- {
- SetPlayerArmour(playerid, 100);
- }
- if(Character[playerid][Faction] == 2)
- {
- GivePlayerWeapon(playerid, 42, 99999);
- }
- SetPlayerArmedWeapon(playerid, 0);
- }
- else if(Character[playerid][ClothesUsed] == 2)
- {
- SetSpawnInfo(playerid, 0, Character[playerid][Clothes2], Houses[Character[playerid][HouseKey]][HouseExteriorX], Houses[Character[playerid][HouseKey]][HouseExteriorY], Houses[Character[playerid][HouseKey]][HouseExteriorZ], 90.0, 0, 0, 0, 0, 0, 0);
- SetPlayerVirtualWorld(playerid, 0);
- SpawnPlayer(playerid);
- if(Character[playerid][Faction] == 1)
- {
- SetPlayerArmour(playerid, 100);
- }
- if(Character[playerid][Faction] == 2)
- {
- GivePlayerWeapon(playerid, 42, 99999);
- }
- SetPlayerArmedWeapon(playerid, 0);
- }
- else if(Character[playerid][ClothesUsed] == 3)
- {
- SetSpawnInfo(playerid, 0, Character[playerid][Clothes3], Houses[Character[playerid][HouseKey]][HouseExteriorX], Houses[Character[playerid][HouseKey]][HouseExteriorY], Houses[Character[playerid][HouseKey]][HouseExteriorZ], 90.0, 0, 0, 0, 0, 0, 0);
- SetPlayerVirtualWorld(playerid, 0);
- SpawnPlayer(playerid);
- if(Character[playerid][Faction] == 1)
- {
- SetPlayerArmour(playerid, 100);
- }
- if(Character[playerid][Faction] == 2)
- {
- GivePlayerWeapon(playerid, 42, 99999);
- }
- SetPlayerArmedWeapon(playerid, 0);
- }
- }
- else if(Character[playerid][SpawnPoint] == 6) //Faction Spawn
- {
- TogglePlayerSpectating(playerid, false);
- if(Character[playerid][ClothesUsed] == 1)
- {
- SetSpawnInfo(playerid, 0, Character[playerid][Clothes1], Factions[Character[playerid][Faction]][fSpawnX], Factions[Character[playerid][Faction]][fSpawnY], Factions[Character[playerid][Faction]][fSpawnZ], Factions[Character[playerid][Faction]][fSpawnA], 0, 0, 0, 0, 0, 0);
- SetPlayerVirtualWorld(playerid, 0);
- SpawnPlayer(playerid);
- if(Character[playerid][Faction] == 1)
- {
- SetPlayerArmour(playerid, 100);
- }
- if(Character[playerid][Faction] == 2)
- {
- GivePlayerWeapon(playerid, 42, 99999);
- }
- SetPlayerArmedWeapon(playerid, 0);
- }
- else if(Character[playerid][ClothesUsed] == 2)
- {
- SetSpawnInfo(playerid, 0, Character[playerid][Clothes2], Factions[Character[playerid][Faction]][fSpawnX], Factions[Character[playerid][Faction]][fSpawnY], Factions[Character[playerid][Faction]][fSpawnZ], Factions[Character[playerid][Faction]][fSpawnA], 0, 0, 0, 0, 0, 0);
- SetPlayerVirtualWorld(playerid, 0);
- SpawnPlayer(playerid);
- if(Character[playerid][Faction] == 1)
- {
- SetPlayerArmour(playerid, 100);
- }
- if(Character[playerid][Faction] == 2)
- {
- GivePlayerWeapon(playerid, 42, 99999);
- }
- SetPlayerArmedWeapon(playerid, 0);
- }
- else if(Character[playerid][ClothesUsed] == 3)
- {
- SetSpawnInfo(playerid, 0, Character[playerid][Clothes3], Factions[Character[playerid][Faction]][fSpawnX], Factions[Character[playerid][Faction]][fSpawnY], Factions[Character[playerid][Faction]][fSpawnZ], Factions[Character[playerid][Faction]][fSpawnA], 0, 0, 0, 0, 0, 0);
- SetPlayerVirtualWorld(playerid, 0);
- SpawnPlayer(playerid);
- if(Character[playerid][Faction] == 1)
- {
- SetPlayerArmour(playerid, 100);
- }
- if(Character[playerid][Faction] == 2)
- {
- GivePlayerWeapon(playerid, 42, 99999);
- }
- SetPlayerArmedWeapon(playerid, 0);
- }
- }
- }
- return 1;
- }
- forward SendToAdmins(colour, string1[], duty);
- public SendToAdmins(colour, string1[], duty)
- {
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- if(Character[i][cAdminLevel] >= 2)
- {
- SendClientMessage(i, colour, string1);
- }
- }
- }
- return 1;
- }
- forward CloseMessage(playerid, colour, string[]);
- public CloseMessage(playerid, colour, string[])
- {
- new Float: PlayerX, Float: PlayerY, Float: PlayerZ;
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- GetPlayerPos(playerid, PlayerX, PlayerY, PlayerZ);
- if(IsPlayerInRangeOfPoint(i, 12, PlayerX, PlayerY, PlayerZ))
- {
- if(GetPlayerVirtualWorld(playerid) == GetPlayerVirtualWorld(i) && GetPlayerInterior(playerid) == GetPlayerInterior(i))
- {
- SendClientMessage(i, colour, string);
- }
- }
- }
- }
- return 1;
- }
- forward CloseMessageEx(playerid, color, string[], Float: range);
- public CloseMessageEx(playerid, color, string[], Float: range)
- {
- new Float: PlayerX, Float: PlayerY, Float: PlayerZ;
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- GetPlayerPos(playerid, PlayerX, PlayerY, PlayerZ);
- if(IsPlayerInRangeOfPoint(i, range, PlayerX, PlayerY, PlayerZ))
- {
- if(GetPlayerVirtualWorld(playerid) == GetPlayerVirtualWorld(i))
- {
- SendClientMessage(i, color, string);
- }
- }
- }
- }
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- SaveCharacter(playerid);
- DespawnCharacter(playerid);
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- return 1;
- }
- public OnVehicleSpawn(vehicleid)
- {
- return 1;
- }
- public OnVehicleDeath(vehicleid, killerid)
- {
- return 1;
- }
- public OnPlayerText(playerid, text[])
- {
- new text1[256];
- if(strcmp("None", Character[playerid][Accent]))
- {
- format(text1, 256, "%s says: %s", MaskOnOff(playerid), text1);
- CloseMessage(playerid, COLOR_WHITE, text1);
- }
- else
- {
- format(text1, 256, "%s says: [%s accent] %s", MaskOnOff(playerid), Character[playerid][Accent], text1);
- CloseMessage(playerid, COLOR_WHITE, text1);
- SetPlayerChatBubble(playerid, text1, COLOR_WHITE, 10.0, 10000);
- }
- return 1;
- }
- //Stocks
- stock split(const strsrc[], strdest[][], delimiter)
- {
- new i, li;
- new aNum;
- new len;
- while(i <= strlen(strsrc)){
- if(strsrc[i]==delimiter || i==strlen(strsrc)){
- len = strmid(strdest[aNum], strsrc, li, i, 128);
- strdest[aNum][len] = 0;
- li = i+1;
- aNum++;
- }
- i++;
- }
- return 1;
- }
- RPName(name[],ret_first[],ret_last[])
- {
- new len = strlen(name),
- point = -1,
- bool:done = false;
- for(new i = 0; i < len; i++)
- {
- if(name[i] == '_')
- {
- if(point != -1) return 0;
- else {
- if(i == 0) return 0;
- point = i + 1;
- }
- } else if(point == -1) ret_first[i] = name[i];
- else {
- ret_last[i - point] = name[i];
- done = true;
- }
- }
- if(!done) return 0;
- return 1;
- }
- stock GetMenuDialogCharacterOrder(playerid, characterslotid)
- {
- new arrCoords[11][MAX_PLAYER_NAME], string[128];
- if(MasterAccount[playerid][mLoggedIn])
- {
- if(characterslotid >= 1 && characterslotid <= MAX_CHARACTER_SLOTS)
- {
- format(string,sizeof(string),"%s", MasterAccount[playerid][mCharacterString]);
- split(string, arrCoords, '\n');
- //printf("%s", arrCoords[characterslotid]);
- return arrCoords[characterslotid];
- }
- }
- return arrCoords[0];
- }
- stock InsertPlayerUnderscoreString(string[])
- {
- new str[24];
- strmid(str,string,0,strlen(string),24);
- for(new i = 0; i < MAX_PLAYER_NAME; i++)
- {
- if (str[i] == ' ') str[i] = '_';
- }
- return str;
- }
- stock PlayerFacePlayer(playerid, targetid)
- {
- new
- Float:pX,
- Float:pY,
- Float:pZ,
- Float:X,
- Float:Y,
- Float:Z,
- Float:ang;
- if(!IsPlayerConnected(playerid) || !IsPlayerConnected(targetid)) return 0;
- GetPlayerPos(targetid, X, Y, Z);
- GetPlayerPos(playerid, pX, pY, pZ);
- if( Y > pY ) ang = (-acos((X - pX) / floatsqroot((X - pX)*(X - pX) + (Y - pY)*(Y - pY))) - 90.0);
- else if( Y < pY && X < pX ) ang = (acos((X - pX) / floatsqroot((X - pX)*(X - pX) + (Y - pY)*(Y - pY))) - 450.0);
- else if( Y < pY ) ang = (acos((X - pX) / floatsqroot((X - pX)*(X - pX) + (Y - pY)*(Y - pY))) - 90.0);
- if(X > pX) ang = (floatabs(floatabs(ang) + 180.0));
- else ang = (floatabs(ang) - 180.0);
- SetPlayerFacingAngle(playerid, ang);
- return 0;
- }
- stock GetDistanceBetweenPlayers(playerid,playerid2)
- {
- new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
- new Float:tmpdis;
- GetPlayerPos(playerid,x1,y1,z1);
- GetPlayerPos(playerid2,x2,y2,z2);
- tmpdis = floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
- return floatround(tmpdis);
- }
- stock MaskOnOff(playerid)
- {
- new string2[25];
- if(MaskOn[playerid] == 0)format(string2, sizeof(string2), "%s", RemoveUnderScore(playerid));
- else if(MaskOn[playerid] == 1)format(string2, sizeof(string2), "Stranger_%d", MaskNumber[playerid]);
- return string2;
- }
- stock ClearScreen(playerid)
- {
- for(new i = 0; i < 50; i++)
- {
- SendClientMessage(playerid, COLOR_WHITE, " ");
- }
- return 0;
- }
- stock RemoveUnderScore(playerid)
- {
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- for(new i = 0; i < MAX_PLAYER_NAME; i++)
- {
- if(name[i] == '_') name[i] = ' ';
- }
- return name;
- }
- stock GetPVarStringEx(playerid, var[])
- {
- new pmsg[128] = "NULL";
- if(IsPlayerConnected(playerid))
- {
- GetPVarString(playerid, var, pmsg, 128);
- }
- return pmsg;
- }
- stock GetPlayerIPEx(playerid)
- {
- new plrIP[16] = "NULL";
- if(IsPlayerConnected(playerid))
- {
- GetPlayerIp(playerid, plrIP, sizeof(plrIP));
- }
- return plrIP;
- }
- stock PlayerName(playerid) {
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name, sizeof(name));
- return name;
- }
- stock GetVehicleName(vehicleid)
- {
- new vn[50];
- format(vn,sizeof(vn),"%s",vNames[GetVehicleModel(vehicleid)-400]);
- return vn;
- }
- // --------------------------------------[ ANTI CHEAT ] -------------------------------------
- forward AntiCheatTimer();
- public AntiCheatTimer()
- {
- for(new i=0;i<MAX_PLAYERS;i++)
- {
- if(SpawnedAsCharacter(i))
- {
- if(GetPlayerCash(i) != GetPlayerMoney(i))
- {
- new difference = GetPlayerCash(i) - GetPlayerMoney(i);
- printf("[ANTICHEAT:] %s possibly moneyhacking ($%d)", PlayerName(i), difference);
- ResetMoneyBar(i);
- UpdateMoneyBar(i, Character[i][cCash]);
- }
- }
- }
- return true;
- }
- stock GivePlayerCash(playerid, money)
- {
- Character[playerid][cCash] += money;
- ResetMoneyBar(playerid);
- UpdateMoneyBar(playerid, Character[playerid][cCash]);
- return 1;
- }
- stock SetPlayerCash(playerid, money)
- {
- Character[playerid][cCash] = money;
- ResetMoneyBar(playerid);
- UpdateMoneyBar(playerid, Character[playerid][cCash]);
- return true;
- }
- stock ResetPlayerCash(playerid)
- {
- Character[playerid][cCash] = 0;
- ResetMoneyBar(playerid);
- UpdateMoneyBar(playerid, Character[playerid][cCash]);
- return true;
- }
- stock GetPlayerCash(playerid)
- {
- return Character[playerid][cCash];
- }
- // ------------------------------------------------------------------------------------------
- //Commands Start
- //Admin Commands
- CMD:gmx(playerid, params[])
- { //1643
- if(MasterAccount[playerid][mSuperAdmin] || Character[playerid][cAdminLevel] >= 6)
- {
- SendRconCommand("gmx");
- }
- else return SendClientMessage(playerid, COLOR_DARKGREY, AdminOnly);
- return 1;
- }
- CMD:a(playerid, params[])
- {
- if(MasterAccount[playerid][mSuperAdmin] || Character[playerid][cAdminLevel] >=1)
- {
- new message[128], string[256];
- if(!strlen(params)) return SendClientMessage(playerid, COLOR_DARKGREY, "Usage: /a [message]");
- {
- format(string, sizeof(string), "Admin %s: %s", RemoveUnderScore(playerid), message);
- SendToAdmins(COLOR_RED, string, 0);
- SendToAdmins(COLOR_RED, string, 1);
- }
- }
- else return SendClientMessage(playerid, COLOR_DARKGREY, AdminOnly);
- return 1;
- }
- CMD:asay(playerid,params[])
- {
- if(Character[playerid][cAdminLevel] >= 2) return SendClientMessage(playerid, COLOR_DARKGREY, AdminOnly);
- if(!strlen(params)) return SendClientMessage(playerid, COLOR_DARKGREY, "USAGE: /asay [text]");
- if(strlen(params) > 100) return SendClientMessage(playerid, COLOR_DARKGREY, "Your message must not exceed 100 characters.");
- new str[128];
- format(str, sizeof(str), "%s", params);
- SendClientMessageToAll(COLOR_PURPLE, str);
- return 1;
- }
- CMD:akill(playerid, params[])
- {
- if(MasterAccount[playerid][mSuperAdmin] || Character[playerid][cAdminLevel] >=2)
- {
- new targetid;
- if(!strlen(params)) return SendClientMessage(playerid, COLOR_DARKGREY, "Usage: /akill [playerid]");
- if(!IsPlayerConnected(targetid))return SendClientMessage(playerid, -1, "This player is not connected!");
- SetPlayerHealth(targetid, -1);
- }
- else
- SendClientMessage(playerid, COLOR_DARKGREY, AdminOnly);
- return 1;
- }
- CMD:sethealth(playerid, params[])
- {
- if(MasterAccount[playerid][mSuperAdmin] || Character[playerid][cAdminLevel] >=2)
- {
- new user, health;
- if(!sscanf(params, "ui", user, health))
- {
- if(user != INVALID_PLAYER_ID)
- {
- SetPlayerHealth(user, health);
- }
- else return SendClientMessage(playerid, COLOR_DARKGREY, "Player is not logged in or is off-line.");
- }
- else return SendClientMessage(playerid, COLOR_WHITE, "Usage: /Sethealth [ID] [Amount]");
- }
- return 1;
- }
- CMD:sethp(playerid, params[])
- {
- return cmd_sethealth(playerid, params);
- }
- CMD:setweather(playerid, params[])
- {
- if(MasterAccount[playerid][mSuperAdmin] || Character[playerid][cAdminLevel] >=4)
- {
- if(isnull(params)) return SendClientMessage(playerid, COLOR_DARKGREY, "/Setweather [ID]");
- SetWeather(strval(params));
- return true;
- }
- else return SendClientMessage(playerid, COLOR_DARKGREY, AdminOnly);
- }
- CMD:flip(playerid, params[])
- {
- #pragma unused params
- playerid = GetPlayerVehicleID(playerid);
- if(playerid != INVALID_VEHICLE_ID) {
- new
- Float: A;
- GetVehicleZAngle(playerid, A);
- SetVehicleZAngle(playerid, A);
- }
- return 1;
- }
- CMD:veh(playerid, params[])
- {
- if(IsPlayerConnected(playerid))
- {
- if(MasterAccount[playerid][mSuperAdmin] || Character[playerid][cAdminLevel] >=3)
- {
- new car, col1, col2;
- if(sscanf(params, "iii", car, col1, col2)) return SendClientMessage(playerid, COLOR_DARKGREY, "USAGE: /veh [carid] [color1] [color2]");
- if(car < 400 || car > 611) return SendClientMessage(playerid, COLOR_DARKGREY, "Vehicle ID can't be below 400 or above 611.");
- if(col1 < 0 || col1 > 256) return SendClientMessage(playerid, COLOR_DARKGREY, "Colour ID can't be below 0 or above 256.");
- if(col2 < 0 || col2 > 256) return SendClientMessage(playerid, COLOR_DARKGREY, "Colour ID can't be below 0 or above 256.");
- new Float:X,Float:Y,Float:Z;
- GetPlayerPos(playerid, X,Y,Z);
- new carid = CreateVehicle(car, X,Y,Z, 0.0, col1, col2, 60000);
- PutPlayerInVehicle(playerid, carid, 0);
- }
- else return SendClientMessage(playerid, COLOR_DARKGREY, AdminOnly);
- }
- return 1;
- }
- //Player Commands
- CMD:kill(playerid, params[])
- {
- SetPlayerHealth(playerid, -1);
- }
- CMD:mask(playerid, params[])
- {
- if(Character[playerid][Level] >= 5)
- {
- if(Character[playerid][cMask] == 1)
- {
- if(MaskOn[playerid] == 0)
- {
- new string[256];
- MaskOn[playerid] = 1;
- new rand = 1000 + random(8999);
- MaskNumber[playerid] = rand;
- format(string, sizeof(string), "* %s takes out a mask and places it over their head. *", MaskOnOff(playerid));
- format(string, sizeof(string), "Stranger_%d", MaskNumber[playerid]);
- Update3DTextLabelText(masklabel[playerid], GREY, string);
- Attach3DTextLabelToPlayer(masklabel[playerid], playerid, 0.0, 0.0, 0.7);
- for(new i = 0; i < MAX_PLAYERS; i++) ShowPlayerNameTagForPlayer(i, playerid, false);
- }
- else return SendClientMessage(playerid, COLOR_WHITE, "You already have your mask on.");
- }
- else return SendClientMessage(playerid, COLOR_WHITE, "You don't have a Mask.");
- }
- else return SendClientMessage(playerid, COLOR_WHITE, "You must be level 5 and above to use a mask.");
- return 1;
- }
- CMD:unmask(playerid, params[])
- {
- if(Character[playerid][cMask] == 1)
- {
- if(MaskOn[playerid] == 1)
- {
- new string[256];
- MaskOn[playerid] = 0;
- format(string, sizeof(string), "* %s takes off their mask. *", MaskOnOff(playerid));
- CloseMessage(playerid, COLOR_PURPLE, string);
- MaskNumber[playerid] = -1;
- Update3DTextLabelText(masklabel[playerid], GREY, string);
- for(new i = 0; i < MAX_PLAYERS; i++) ShowPlayerNameTagForPlayer(i, playerid, true);
- }
- else return SendClientMessage(playerid, COLOR_WHITE, "You don't have your mask on.");
- }
- else return SendClientMessage(playerid, COLOR_WHITE, "You don't have a Mask.");
- return 1;
- }
- CMD:pay(playerid, params[])
- {
- new id, amount, string[256];
- if(sscanf(params, "ui", id, amount)) return SendClientMessage(playerid, COLOR_DARKGREY, "Usage: /pay [playerid/name] [amount]");
- {
- if(GetDistanceBetweenPlayers(playerid, id) < 3)
- {
- if(Character[playerid][cCash] >= amount)
- {
- PlayerFacePlayer(id, playerid);
- PlayerFacePlayer(playerid, id);
- format(string, sizeof(string), "* %s hands over some money to %s. *", MaskOnOff(playerid), MaskOnOff(id));
- CloseMessage(playerid, COLOR_PURPLE, string);
- format(string, sizeof(string), "You have paid %s $%d.", MaskOnOff(id), amount);
- SendClientMessage(playerid, COLOR_WHITE, string);
- format(string, sizeof(string), "%s has paid you $%d.", MaskOnOff(playerid), amount);
- ApplyAnimation(playerid, "INT_SHOP", "shop_pay", 3.0, 0, 0, 0, 0, 0);
- SendClientMessage(id, COLOR_WHITE, string);
- Character[playerid][cCash] -= amount;
- Character[id][cCash] += amount;
- }
- else return SendClientMessage(playerid, COLOR_DARKGREY, "You don't have that amount of money.");
- }
- else return SendClientMessage(playerid, COLOR_DARKGREY, "You must be closer to the player to pay them.");
- }
- return 1;
- }
- // Chat commands
- CMD:me(playerid, params[])
- {
- new action[128], string[152];
- if(sscanf(params, "s[128]", action)) return SendClientMessage(playerid, COLOR_DARKGREY, "Usage: /me [action]");
- {
- format(string, sizeof(string), "%s %s", MaskOnOff(playerid), action);
- CloseMessage(playerid, COLOR_PURPLE, string);
- }
- return 1;
- }
- CMD:do(playerid, params[])
- {
- new action[128], string[157];
- if(sscanf(params, "s[128]", action)) return SendClientMessage(playerid, COLOR_WHITE, "Usage: /do [action]");
- {
- format(string, sizeof(string), "%s (( %s ))", action, MaskOnOff(playerid));
- CloseMessage(playerid, COLOR_PURPLE, string);
- }
- return 1;
- }
- CMD:b(playerid, params[])
- {
- new message[128], string[152];
- if(sscanf(params, "s[128]", message)) return SendClientMessage(playerid, COLOR_WHITE, "Usage: /b [message]");
- {
- format(string, sizeof(string), "(( [OOC] %s says: %s ))", RemoveUnderScore(playerid), message);
- CloseMessage(playerid, COLOR_BLUE, string);
- }
- return 1;
- }
- CMD:w(playerid, params[])
- {
- return cmd_whisper(playerid, params);
- }
- CMD:whisper(playerid, params[])
- {
- new id, message[128], string[186];
- if(sscanf(params, "us[128]", id, message)) return SendClientMessage(playerid, COLOR_DARKGREY, "Usage: /w(hisper) [playerid/name] [message]");
- {
- if(GetDistanceBetweenPlayers(playerid, id) <= 5.0)
- {
- if(id != INVALID_PLAYER_ID)
- {
- format(string, sizeof(string), "[Whisper from %s(%d)] %s", MaskOnOff(playerid), playerid, message);
- SendClientMessage(id, WHISPER, string);
- format(string, sizeof(string), "[Whisper to %s(%d)] %s", MaskOnOff(id), id, message);
- SendClientMessage(playerid, WHISPER, string);
- format(string, sizeof(string), "* %s whispers something to %s *", MaskOnOff(playerid), MaskOnOff(id));
- CloseMessage(playerid, COLOR_PURPLE, string);
- }
- else return SendClientMessage(playerid, COLOR_WHITE, "That player isn't connected.");
- }
- else return SendClientMessage(playerid, COLOR_WHITE, "You must be close to the player to whisper to them.");
- }
- return 1;
- }
- CMD:s(playerid, params[])
- {
- return cmd_shout(playerid, params);
- }
- CMD:shout(playerid, params[])
- {
- new message[128], string[182];
- if(sscanf(params, "s[128]", message)) return SendClientMessage(playerid, COLOR_DARKGREY, "Usage: /s(hout)");
- {
- if(strcmp("None", Character[playerid][Accent]))
- {
- format(string, sizeof(string), "%s shouts: %s!", MaskOnOff(playerid), message);
- }
- else
- {
- format(string, sizeof(string), "%s shouts: [%s accent] %s!", MaskOnOff(playerid), Character[playerid][Accent], message);
- }
- CloseMessageEx(playerid, SHOUT, string, 20.0);
- SetPlayerChatBubble(playerid, string, SHOUT, 20.0, 10000);
- }
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- //if(TutorialStep[playerid] >= 1) return SendClientMessage(playerid, GREY, "You can't perform commands while you're in the tutorial.");
- //if(ChangingSkin[playerid] == 1) return SendClientMessage(playerid, GREY, "You can't perform commands while you're changing clothes.");
- if(Logged[playerid] == 0) return SendClientMessage(playerid, GREY, "You need to login first!");
- return 0;
- }
- 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[])
- {
- switch(dialogid)
- {
- case DIALOG_REGISTER_PASSWORD:
- {
- if(response)
- {
- if(strlen(inputtext) >= 1 && strlen(inputtext) <= 20)
- {
- SetPVarString(playerid,"TEMP_PASSWORD",inputtext);
- ShowPlayerDialog(playerid,DIALOG_REGISTER_EMAIL,DIALOG_STYLE_INPUT,"Master Account Registration - Step Two","Email Address:\n( No more or less than 25 characters )","Finish","Cancel");
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_REGISTER_PASSWORD,DIALOG_STYLE_PASSWORD,"Master Account Registration - Step One","Password:\n( No more or less than 20 characters )","Continue","Cancel");
- }
- }
- else
- {
- Kick(playerid);
- }
- }
- case DIALOG_REGISTER_EMAIL:
- {
- if(response)
- {
- if(strlen(inputtext) >= 1 && strlen(inputtext) <= 30)
- {
- SetPVarString(playerid,"TEMP_EMAIL",inputtext);
- if(MasterAccountRegister(playerid))
- {
- ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Master Account - Login","Account already registered, please enter your password to continue.","Login","Cancel");
- }
- else
- {
- SendClientMessage(playerid, COLOR_RED, "ERROR.");
- Kick(playerid);
- }
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_REGISTER_EMAIL,DIALOG_STYLE_INPUT,"Master Account Registration - Step Two","Email Address:\n( No more or less than 25 characters )","Finish","Cancel");
- }
- }
- else
- {
- Kick(playerid);
- }
- }
- case DIALOG_LOGIN:
- {
- if(response)
- {
- MasterAccountLogin(playerid, inputtext);
- }
- }
- case DIALOG_MAIN_MENU:
- {
- if(response)
- {
- new count = PlayerCharacterCount(playerid);
- if(count == 0)
- {
- SendClientMessage(playerid, COLOR_WHITE, "[I:] No characters available to spawn with.");
- ShowMenuDialog(playerid);
- }
- else
- {
- LoadCharacter(playerid, InsertPlayerUnderscoreString(GetMenuDialogCharacterOrder(playerid, listitem+1)));
- }
- }
- else
- {
- ShowPlayerDialog(playerid, DIALOG_MAIN_MENU_OPTIONS, DIALOG_STYLE_LIST, "Main Menu - Options", "Create New Character\nDelete Character\nChange Password\nDisconnect", "Continue", "Go Back");
- }
- }
- case DIALOG_MAIN_MENU_OPTIONS:
- {
- if(response)
- {
- switch(listitem)
- {
- case 0: // Create New Character
- {
- if(PlayerCharacterCount(playerid) < MAX_CHARACTER_SLOTS)
- {
- ShowPlayerDialog(playerid,DIALOG_MAIN_MENU_CREATE_CHARACTER_NAME,DIALOG_STYLE_INPUT,"Master Account - New Character","What do you want your character to be called?\n(Firstname Lastname format).","Continue","Go Back");
- }
- else
- {
- ShowMenuDialog(playerid);
- SendClientMessage(playerid, COLOR_RED, "[I:] You have exceeded your character limit, and cannot create anymore.");
- }
- }
- case 1: // Delete Character
- {
- ShowPlayerDialog(playerid,DIALOG_MAIN_MENU_CHARACTER_DELETE,DIALOG_STYLE_INPUT,"Master Account - Delete Character","What is the name of the character you wish to delete?\nYou will not be able to recover it after it has been deleted!\n(Firstname Lastname format)","Delete","Go Back");
- }
- case 2: // Change Password
- {
- ShowPlayerDialog(playerid,DIALOG_MAIN_MENU_CHANGE_PASSWORD,DIALOG_STYLE_INPUT,"Master Account - Change Password","Type your new desired password:","Change","Go Back");
- }
- case 3: // Disconnect
- {
- SendClientMessage(playerid, COLOR_WHITE, "[I:] You have safely disconnected.");
- Kick(playerid);
- }
- }
- }
- else
- {
- ShowMenuDialog(playerid);
- }
- }
- case DIALOG_MAIN_MENU_CHARACTER_DELETE:
- {
- if(response)
- {
- if(strlen(inputtext) >= 1)
- {
- if(CharacterExists(inputtext))
- {
- new escapedstring[50];
- mysql_real_escape_string(InsertPlayerUnderscoreString(inputtext), escapedstring);
- if(PlayerOwnsCharacter_Name(playerid, escapedstring))
- {
- new query[128];
- format(query, sizeof(query), "DELETE FROM `Character` WHERE `cName` = '%s'", InsertPlayerUnderscoreString(inputtext)); //(InsertPlayerUnderscoreString(inputtext) //2464
- format(query, sizeof(query), "[I:] You have successfully deleted character: %s.", inputtext);
- SendClientMessage(playerid, COLOR_YELLOW, query);
- ShowMenuDialog(playerid);
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_MAIN_MENU_CHARACTER_DELETE,DIALOG_STYLE_INPUT,"Master Account - Delete Character","What is the name of the character you wish to delete?\nYou will not be able to recover it after it has been deleted!\n(Firstname Lastname format)","Delete","Go Back");
- }
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_MAIN_MENU_CHARACTER_DELETE,DIALOG_STYLE_INPUT,"Master Account - Delete Character","What is the name of the character you wish to delete?\nYou will not be able to recover it after it has been deleted!\n(Firstname Lastname format)","Delete","Go Back");
- }
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_MAIN_MENU_CHARACTER_DELETE,DIALOG_STYLE_INPUT,"Master Account - Delete Character","What is the name of the character you wish to delete?\nYou will not be able to recover it after it has been deleted!\n(Firstname Lastname format)","Delete","Go Back");
- }
- }
- else
- {
- ShowPlayerDialog(playerid, DIALOG_MAIN_MENU_OPTIONS, DIALOG_STYLE_LIST, "Main Menu - Options", "Create New Character\nDelete Character\nChange Password\nDisconnect", "Continue", "Go Back");
- }
- }
- case DIALOG_MAIN_MENU_CREATE_CHARACTER_NAME:
- {
- new firstname[MAX_PLAYER_NAME], lastname[MAX_PLAYER_NAME];
- if(response)
- {
- if(strlen(inputtext) >= 1 && strlen(inputtext) <= MAX_PLAYER_NAME)
- {
- if(!CharacterExists(InsertPlayerUnderscoreString(inputtext)))
- {
- if(RPName(InsertPlayerUnderscoreString(inputtext), firstname, lastname))
- {
- SetPVarString(playerid,"TEMP_C_NAME",InsertPlayerUnderscoreString(inputtext)); //2501
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_MAIN_MENU_CREATE_CHARACTER_NAME,DIALOG_STYLE_INPUT,"Master Account - New Character","The character name you entered is not a valid roleplay name.\n(Firstname Lastname format).","Continue","Go Back");
- }
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_MAIN_MENU_CREATE_CHARACTER_NAME,DIALOG_STYLE_INPUT,"Master Account - New Character","A character with that name is already registered, please choose another name.\n(Firstname Lastname format).","Continue","Go Back");
- }
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_MAIN_MENU_CREATE_CHARACTER_NAME,DIALOG_STYLE_INPUT,"Master Account - New Character","What do you want your character to be called?\n(Firstname Lastname format).","Continue","Go Back");
- }
- CreateCharacter(playerid, inputtext, Character[playerid][cCash], Character[playerid][cBank], Character[playerid][cSkin]),
- GetPVarStringEx(playerid, "TEMP_C_NAME"),
- DeletePVar(playerid, "TEMP_C_NAME");
- ShowMenuDialog(playerid);
- SpawnPlayer(playerid);
- }
- else
- {
- ShowPlayerDialog(playerid, DIALOG_MAIN_MENU, DIALOG_STYLE_LIST, "Master Account - New Character","What do you want your character to be called?\n(Firstname Lastname format).","Continue","Go Back");
- } // Go back.
- }
- } //2540
- return 1;
- }
- public OnPlayerClickPlayer(playerid, clickedplayerid, source)
- {
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment