Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /***********************************
- * Devon's Roleplay *
- * CREATED BY: Devon Berry*
- ************************************/
- #include <a_samp>
- #include <sscanf2>
- #include <YSI\y_commands>
- #include <YSI\y_iterate>
- #include <YSI\y_ini>
- //
- #define YSI_IS_SERVER
- #define PATH "/Users/%s.ini" //This is the path template
- //#define AUTOLOGIN //Delete this line if you don't want autologin
- //#define REGISTERED_MONEY 5000 //How much money registered users get
- //#define DIALOG_REGISTER 999 //Register dialog ID, feel free to modfiy
- //#define DIALOG_LOGIN 998 //Login dialog ID, feel free to modfiy
- #define DIALOG_REGISTER 1
- #define DIALOG_LOGIN 2
- #define DIALOG_SUCCESS_1 3
- #define DIALOG_SUCCESS_2 4
- #define DEVELOPER "Devon Berry"
- #define VERSION "v.0.0.1a"
- #undef MAX_PLAYERS
- #define MAX_PLAYERS 500
- #define white 0xFFFFFFA
- #define red 0xFF0000AA
- #define lime 0x00FF00FF
- #define yellow 0xFFFF00FF
- #define COL_WHITE "{FFFFFF}"
- #define COL_RED "{F81414}"
- #define COL_GREEN "{00FF22}"
- #define COL_LIGHTBLUE "{00CED1}"
- enum pInfo
- {
- pPass,
- pCash,
- pAdmin,
- pKills,
- pDeaths
- }
- new PlayerInfo[MAX_PLAYERS][pInfo];
- //new pIP[MAX_PLAYERS][16]; //For autologin
- new pLogged[MAX_PLAYERS];
- main()
- {
- print("----------------------------------");
- print(" Devon's Roleplay by Devon Berry");
- print("----------------------------------\n");
- }
- public OnGameModeInit( )
- {
- SetGameModeText("Devon's Roleplay");
- AddPlayerClass(0,1481.1249,-1766.3302,18.7958,0.9198,0,0,0,0,0,0); // LSSpawnPoint
- AddStaticVehicle(596,1602.2472,-1703.9663,5.5256,86.6693,0,1); // Cruisier10
- AddStaticVehicle(596,1595.5613,-1711.1768,5.5256,359.2222,0,1); // Cruisier9
- AddStaticVehicle(596,1591.5144,-1710.7615,5.5217,1.9293,0,1); // Cruisier8
- AddStaticVehicle(596,1587.5083,-1711.1357,5.5242,358.5583,0,1); // Cruisier7
- AddStaticVehicle(596,1583.2698,-1710.8278,5.5257,359.9324,0,1); // Cruisier6
- AddStaticVehicle(596,1578.7604,-1711.1829,5.5180,0.4591,0,1); // Cruisier5
- AddStaticVehicle(596,1574.6881,-1710.9425,5.5244,359.7140,0,1); // Cruisier4
- AddStaticVehicle(596,1570.3341,-1711.1138,5.5254,356.4611,0,1); // Cruisier3
- AddStaticVehicle(596,1564.8552,-1711.0649,5.5239,357.8743,0,1); // Cruisier2
- AddStaticVehicle(596,1558.6125,-1712.2395,5.5252,359.2585,0,1); // Cruisier1
- AddStaticVehicle(522,1548.1022,-1682.7958,5.5246,89.2330,1,1); // PDNRG1
- AddStaticVehicle(522,1543.1455,-1685.8038,5.5238,91.3076,1,1); // PDNRG2
- AddStaticVehicle(522,1547.9951,-1678.9081,5.5229,88.7270,1,1); // PDNRG3
- AddStaticVehicle(522,1543.0063,-1681.0385,5.5235,88.5667,1,1); // PDNRG4
- AddStaticVehicle(490,1545.2922,-1672.3058,5.5190,91.8807,0,1); // PDRancher1
- AddStaticVehicle(490,1546.0570,-1667.8403,5.5248,90.3241,0,1); // PDRancher2
- AddStaticVehicle(427,1545.3459,-1659.1704,5.5236,94.6685,0,1); // PDEnforcer1
- AddStaticVehicle(427,1546.1920,-1655.4073,5.5191,96.1166,0,1); // PDEnforcer2
- AddStaticVehicle(601,1538.8168,-1644.1783,5.5259,180.4116,0,1); // PDSwatTank1
- AddStaticVehicle(601,1534.7139,-1645.0441,5.5254,181.2519,0,1); // PDSwatTank2
- 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 1;
- }
- public OnPlayerConnect(playerid)
- {
- if(fexist(UserPath(playerid)))
- {
- INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
- ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_WHITE"Type your password below to login.","Login","Quit");
- }
- else
- {
- ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,""COL_WHITE"Registering...",""COL_WHITE"Type your password below to register a new account.","Register","Quit");
- }
- return 1;
- }
- forward LoadUser_data(playerid,name[],value[]);
- public LoadUser_data(playerid,name[],value[])
- {
- INI_Int("Password",PlayerInfo[playerid][pPass]);
- INI_Int("Cash",PlayerInfo[playerid][pCash]);
- INI_Int("Admin",PlayerInfo[playerid][pAdmin]);
- INI_Int("Kills",PlayerInfo[playerid][pKills]);
- INI_Int("Deaths",PlayerInfo[playerid][pDeaths]);
- return 1;
- }
- stock UserPath(playerid)
- {
- new string[128],playername[MAX_PLAYER_NAME];
- GetPlayerName(playerid,playername,sizeof(playername));
- format(string,sizeof(string),PATH,playername);
- return string;
- }
- stock udb_hash(buf[]) {
- new length=strlen(buf);
- new s1 = 1;
- new s2 = 0;
- new n;
- for (n=0; n<length; n++)
- {
- s1 = (s1 + buf[n]) % 65521;
- s2 = (s2 + s1) % 65521;
- }
- return (s2 << 16) + s1;
- }
- stock SaveAccounts(playerid)
- {
- new INI:File = INI_Open(UserPath(playerid));
- INI_SetTag(File,"data");
- INI_WriteInt(File,"Cash",GetPlayerMoney(playerid));
- INI_WriteInt(File,"Admin",PlayerInfo[playerid][pAdmin]);
- INI_WriteInt(File,"Kills",PlayerInfo[playerid][pKills]);
- INI_WriteInt(File,"Deaths",PlayerInfo[playerid][pDeaths]);
- INI_Close(File);
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- SaveAccounts(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[])
- {
- return 1;
- }
- YCMD:makeadmin(playerid, params[], help)
- {
- new pid;
- new alvl;
- new str[128];
- if(PlayerInfo[playerid][pAdmin] < 9 && !IsPlayerAdmin(playerid)) return
- SendClientMessage(playerid, red, "You're not an admin or not high enoug level admin");
- if (help) return
- SendClientMessage(playerid, lime, "Make a player an admin.");
- if (sscanf(params, "ii", pid,alvl)) return
- SendClientMessage(playerid, white, "Usage: /makeadmin <playerid/name> <admin level>.");
- if(!IsPlayerConnected(pid)) return
- SendClientMessage(playerid, red, "Player Is Not Connected on that id");
- format(str, sizeof (str), "You have made %s Level %d admin DEBUG %d",GetName(pid),alvl,PlayerInfo[pid][pAdmin]);
- SendClientMessage(playerid, lime, str);
- format(str, sizeof (str), "You have been made level %d admin by admin %s DEBUG %d",alvl,GetName(playerid),PlayerInfo[pid][pAdmin]);
- SendClientMessage(pid, lime, str);
- PlayerInfo[playerid][pAdmin] = alvl;
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- if( strcmp( cmdtext, "/ban", true ) == 0 )
- {
- BanEx( playerid, "Request" );
- return 1;
- }
- if(!strcmp("/heal", cmdtext, true))
- {
- SetPlayerHealth(playerid, 100);
- return 1;
- }
- if(!strcmp("/kill", cmdtext, true))
- {
- SetPlayerHealth(playerid, 0);
- return 1;
- }
- if(!strcmp("/ping", cmdtext, true))
- {
- SendClientMessage(playerid, yellow, "Pong!");
- return 1;
- }
- if(!strcmp("/godon", cmdtext, true))
- {
- SetPlayerHealth(playerid, 99999);
- return 1;
- }
- if(!strcmp("/ungod", cmdtext, true))
- {
- SetPlayerHealth(playerid, 95);
- return 1;
- }
- 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)
- {
- if(pLogged[playerid] == 0) return SendClientMessage(playerid,yellow,"You must register or login before spawning!");
- 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:
- {
- if (!response) return Kick(playerid);
- if(response)
- {
- if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, ""COL_WHITE"Registering...",""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,"data");
- INI_WriteInt(File,"Password",udb_hash(inputtext));
- INI_WriteInt(File,"Cash",0);
- INI_WriteInt(File,"Admin",0);
- INI_WriteInt(File,"Kills",0);
- 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);
- SpawnPlayer(playerid);
- ShowPlayerDialog(playerid, DIALOG_SUCCESS_1, DIALOG_STYLE_MSGBOX,""COL_WHITE"Success!",""COL_GREEN"Great! Your Y_INI system works perfectly. Relog to save your stats!","Ok","");
- }
- }
- case DIALOG_LOGIN:
- {
- if ( !response ) return Kick ( playerid );
- if( response )
- {
- if(udb_hash(inputtext) == PlayerInfo[playerid][pPass])
- {
- INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
- GivePlayerMoney(playerid, PlayerInfo[playerid][pCash]);
- ShowPlayerDialog(playerid, DIALOG_SUCCESS_2, DIALOG_STYLE_MSGBOX,""COL_WHITE"Success!",""COL_GREEN"You have successfully logged in!","Ok","");
- }
- else
- {
- ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""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 OnPlayerClickPlayer(playerid, clickedplayerid, source)
- {
- return 1;
- }
- stock GetName(playerid)
- {
- new name[24];
- if(IsPlayerConnected(playerid)) GetPlayerName(playerid, name, sizeof(name));
- else name = "Unknown";
- return name;
- }
Add Comment
Please, Sign In to add comment