Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #if defined _ijob_included
- #endinput
- #endif
- #define _ijob_included
- /*=============================================================================================================*/
- /*=============================================================================================================*/
- #define MAX_JOBS 50
- #define C_GR 0x00B500FF
- #define C_R 0xDC0000FF
- #define C_Y 0xC87D00FF
- #define Y_W 0xFFFFFFFF
- #define green "{00B500}"
- #define red "{DC0000}"
- #define inform "{C87D00}"
- #define white "{FFFFFF}"
- #define JoinMess ""white"Pro připojení do práce strickni "red"Y"
- #define ChangeSkinMess ""white"Pro změnu pracovního skinu stiskni "red"N"
- #define IsPlayerInSphere(%0,%1,%2,%3,%4) IsPlayerInRangeOfPoint(%0,%4,%1,%2,%3)
- #define PRESSED(%0) \
- (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
- /*=============================================================================================================*/
- enum JobData
- {
- jID,
- jName,
- Float:jX,
- Float:jY,
- Float:jZ,
- jSkin1,
- jSkin2,
- jSkin3,
- jW1,
- jW2,
- jW3,
- jA1,
- jA2,
- jA3
- }
- new JData[MAX_JOBS][JobData];
- enum JobPlayerData
- {
- jActualJob,
- jMoney,
- jPoints,
- jLevel,
- }
- new JPD[MAX_PLAYERS][JobPlayerData];
- /*=============================================================================================================*/
- /*=============================================================================================================*/
- stock LoadJob(jobname[])
- {
- new jid = GetIDFromJobName(jobname);
- new FILE[120];
- format(FILE,120,"Jobs/%s.ini",jobname);
- if(DOF2_FileExists(FILE))
- {
- JData[jid][jID] = DOF2_GetInt(FILE,"ID");
- JData[jid][jName] = DOF2_GetInt(FILE,"JobName");
- JData[jid][jX] = DOF2_GetFloat(FILE,"X");
- JData[jid][jY] = DOF2_GetFloat(FILE,"Y");
- JData[jid][jZ] = DOF2_GetFloat(FILE,"Z");
- JData[jid][jSkin1] = DOF2_GetInt(FILE,"Skin1");
- JData[jid][jSkin2] = DOF2_GetInt(FILE,"Skin2");
- JData[jid][jSkin3] = DOF2_GetInt(FILE,"Skin3");
- JData[jid][jW1] = DOF2_GetInt(FILE,"W1");
- JData[jid][jW2] = DOF2_GetInt(FILE,"W2");
- JData[jid][jW3] = DOF2_GetInt(FILE,"W3");
- JData[jid][jA1] = DOF2_GetInt(FILE,"A1");
- JData[jid][jA2] = DOF2_GetInt(FILE,"A2");
- JData[jid][jA3] = DOF2_GetInt(FILE,"A3");
- }
- else
- {
- return 0;
- }
- return 1;
- }
- /*=============================================================================================================*/
- stock SetPlayerJob(playerid,jobname[])
- {
- DOF2_SetString(Account(playerid),"ActualJob",jobname,"Jobs");
- return 1;
- }
- /*=============================================================================================================*/
- stock GetPlayerJob(playerid)
- {
- new jobname[200];
- format(jobname,sizeof(jobname),"%s",DOF2_GetString(Account(playerid),"ActualJob","Jobs"));
- return jobname;
- }
- /*=============================================================================================================*/
- stock SetPlayerStats(playerid,money,points,level)
- {
- new formatstring[200];
- format(formatstring,sizeof(formatstring),"%s",DOF2_GetString(Account(playerid),"ActualJob","Jobs"));
- DOF2_SetInt(Account(playerid),"Money",money,formatstring);
- DOF2_SetInt(Account(playerid),"Points",points,formatstring);
- DOF2_SetInt(Account(playerid),"Level",level,formatstring);
- return true;
- }
- stock SetPlayerStatsEx(playerid,name[],value)
- {
- new formatstring[200];
- format(formatstring,sizeof(formatstring),"%s",DOF2_GetString(Account(playerid),"ActualJob","Jobs"));
- DOF2_SetInt(Account(playerid),name,value,formatstring);
- return true;
- }
- /*=============================================================================================================*/
- stock GetPlayerStats(playerid)
- {
- new formatstring[200];
- format(formatstring,sizeof(formatstring),"%s",DOF2_GetString(Account(playerid),"ActualJob","Jobs"));
- JPD[playerid][jMoney] = DOF2_GetInt(Account(playerid),"Money",formatstring);
- JPD[playerid][jPoints] = DOF2_GetInt(Account(playerid),"Points",formatstring);
- JPD[playerid][jLevel] = DOF2_GetInt(Account(playerid),"Level",formatstring);
- return true;
- }
- stock LoadPlayerStatsEx(playerid,name[])
- {
- new formatstring[200];
- format(formatstring,sizeof(formatstring),"%s",DOF2_GetString(Account(playerid),"ActualJob","Jobs"));
- new str = DOF2_GetInt(Account(playerid),name,formatstring);
- return str;
- }
- /*=============================================================================================================*/
- stock CreateJob(jid,jobname[],Float:X,Float:Y,Float:Z,skin1,skin2,skin3,w1,w2,w3,a1,a2,a3)
- {
- new FILE[120];
- format(FILE,120,"Jobs/%s.ini",jobname);
- if(!DOF2_FileExists(FILE))
- {
- DOF2_CreateFile(FILE);
- DOF2_SetInt(FILE,"ID",jid);
- DOF2_SetString(FILE,"JobName",jobname);
- DOF2_SetFloat(FILE,"X",X);
- DOF2_SetFloat(FILE,"Y",Y);
- DOF2_SetFloat(FILE,"Z",Z);
- DOF2_SetInt(FILE,"Skin1",skin1);
- DOF2_SetInt(FILE,"Skin2",skin2);
- DOF2_SetInt(FILE,"Skin3",skin3);
- DOF2_SetInt(FILE,"W1",w1);
- DOF2_SetInt(FILE,"W2",w2);
- DOF2_SetInt(FILE,"W3",w3);
- DOF2_SetInt(FILE,"A1",a1);
- DOF2_SetInt(FILE,"A2",a2);
- DOF2_SetInt(FILE,"A3",a3);
- }
- new JobPickup = CreatePickup(1244,1,X,Y,Z,0);
- Create3DTextLabel(jobname,C_GR,X,Y,Z+0.5,60,0,0);
- Create3DTextLabel(JoinMess,C_GR,X,Y,Z+0.1,40,0,0);
- Create3DTextLabel(ChangeSkinMess,C_GR,X,Y,Z,40,0,0);
- for(new i=0;i<MAX_PLAYERS;i++)
- {
- SetPlayerMapIcon( i, jid,X,Y,Z, 11, 0, MAPICON_LOCAL );
- }
- return JobPickup;
- }
- /*=============================================================================================================*/
- stock PlayerJoinToJob(playerid,jobname[])
- {
- new jid = GetIDFromJobName(jobname);
- new FILE[120];
- format(FILE,120,"Jobs/%s.ini",jobname);
- if(DOF2_FileExists(FILE))
- {
- LoadJob(jobname);
- GivePlayerWeapon(playerid,JData[jid][jW1],JData[jid][jA1]);
- GivePlayerWeapon(playerid,JData[jid][jW2],JData[jid][jA2]);
- GivePlayerWeapon(playerid,JData[jid][jW3],JData[jid][jA3]);
- new skin = random(3);
- switch(skin)
- {
- case 0:SetPlayerSkin(playerid,JData[jid][jSkin1]);
- case 1:SetPlayerSkin(playerid,JData[jid][jSkin2]);
- case 2:SetPlayerSkin(playerid,JData[jid][jSkin3]);
- }
- SetPlayerJob(playerid,jobname);
- }
- else
- {
- return 0;
- }
- return 1;
- }
- /*=============================================================================================================*/
- stock IsPlayerAroundOfJob(playerid,jobname[])
- {
- new jid = GetIDFromJobName(jobname);
- LoadJob(jobname);
- if(IsPlayerInSphere(playerid,JData[jid][jX],JData[jid][jY],JData[jid][jZ],5))
- {
- return 1;
- }
- else
- {
- return 0;
- }
- }
- /*=============================================================================================================*/
- stock IsPlayerInJob(playerid,jobname[])
- {
- if(strmatch(jobname,DOF2_GetString(Account(playerid),"ActualJob","Jobs")))
- {
- return true;
- }
- else
- {
- return false;
- }
- }
- /*=============================================================================================================*/
- stock ChangePlayerJobSkin(playerid,jobname[])
- {
- new jid = GetIDFromJobName(jobname);
- LoadJob(jobname);
- new skin = random(3);
- if(skin == 1)
- {
- SetPlayerSkin(playerid,JData[jid][jSkin1]);
- }
- else if(skin == 2)
- {
- SetPlayerSkin(playerid,JData[jid][jSkin2]);
- }
- else if(skin == 3)
- {
- SetPlayerSkin(playerid,JData[jid][jSkin3]);
- }
- return 1;
- }
- /*=============================================================================================================*/
- stock GetIDFromJobName(jobname[])
- {
- new FILE[120];
- format(FILE,120,"Jobs/%s.ini",jobname);
- new ID = DOF2_GetInt(FILE,"ID");
- return ID;
- }
- /*=============================================================================================================*/
- /*=============================================================================================================*/
- /*
- native CreateJob(jid,jobname[],Float:X,Float:Y,Float:Z,skin1,skin2,skin3,w1,w2,w3,a1,a2,a3);
- native PlayerJoinToJob(playerid,jobname[]);
- native ChangePlayerJobSkin(playerid,jobname[]);
- native IsPlayerInJob(playerid,jobname[]);
- native IsPlayerAroundOfJob(playerid,jobname[]);
- native GetPlayerStats(playerid);
- native SetPlayerStats(playerid,money,points,level);
- native GetIDFromJobName(jobname[]);
- native SetPlayerJob(playerid,jobname[]);
- native GetPlayerJob(playerid);
- native LoadJob(jobname[]);
- native SetPlayerStatsEx(playerid,name[],value);
- native GetPlayerStatsEx(playerid,name[],value);
- */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement