Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Include
- #include <a_samp>
- #include <dini>
- #include <mysql_stock>
- #include <db_stock_pex>
- #include <string>
- #include <sscanf2>
- #pragma dynamic 50000
- new Mode;
- stock HasPermissionGroup(group[],pex[])
- {
- new perm[4096], cmd[512];
- format(cmd,512,"%s-",pex);
- if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"0",true)==0)
- {
- Mode = 0;
- }
- else if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"MySQL",true)==0)
- {
- Mode = 1;
- }
- else if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"File",true)==0)
- {
- Mode = 2;
- }
- else
- {
- Mode = 3;
- }
- if(Mode==1)
- {
- format(perm,4096,"%s",mysql_get("servergroup","permissions","name",group));
- if(strfind(perm,cmd)>=0 || strfind(perm,"*",false)>=0)
- {
- return 1;
- }
- else
- {
- return 0;
- }
- }
- else if(Mode==2)
- {
- new GDat[64];
- format(GDat,64,"/Permissions/Group/%s.grp",group);
- format(perm,4096,"%s",dini_Get(GDat,"Permissions"));
- if(strfind(perm,cmd)>=0 || strfind(perm,"*",false)>=0)
- {
- return 1;
- }
- else
- {
- return 0;
- }
- }
- else if(Mode==3)
- {
- format(perm,4096,"%s",db_get("servergroup","permissions","name",group));
- if(strfind(perm,cmd)>=0 || strfind(perm,"*",false)>=0)
- {
- return 1;
- }
- else
- {
- return 0;
- }
- }
- else
- {
- return 0;
- }
- }
- stock HasPermission(playerid,pex[])
- {
- new cmd[512];
- format(cmd,512,"%s-",pex);
- if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"0",true)==0)
- {
- Mode = 0;
- }
- else if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"MySQL",true)==0)
- {
- Mode = 1;
- }
- else if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"File",true)==0)
- {
- Mode = 2;
- }
- else
- {
- Mode = 3;
- }
- if(Mode==1)
- {
- if(strfind(mysql_get("user","permissions","name",GetSpielerName(playerid)),cmd)>=0 || strfind(mysql_get("user","permissions","name",GetSpielerName(playerid)),"*",false)>=0)
- {
- return 1;
- }
- else
- {
- if(strcmp(mysql_get("user","servergroup","name",GetSpielerName(playerid)),"-",false)==0)
- {
- return 0;
- }
- else
- {
- new endpos,i=0,string[4096],group[32];
- format(string,4096,"%s",mysql_get("user","servergroup","name",GetSpielerName(playerid)));
- while(endpos!=-1)
- {
- new startpos = strfind(string,"-");
- endpos = strfind(string,"-",false,startpos+1);
- strmid(group,string,startpos+1,endpos);
- strdel(string,startpos,endpos);
- if(HasPermissionGroup(group,pex)==1)
- {
- i = 1;
- break;
- }
- else
- {
- i = 0;
- }
- }
- return i;
- }
- }
- }
- else if(Mode==2)
- {
- new PlayerDat[64];
- format(PlayerDat,64,"/Permissions/User/%s.pex",GetSpielerName(playerid));
- if(strfind(dini_Get(PlayerDat,"Permissions"),cmd,false)>=0 || strfind(dini_Get(PlayerDat,"permissions"),"*",false)>=0)
- {
- return 1;
- }
- else
- {
- if(strcmp(dini_Get(PlayerDat,"Permissions"),"-",false)==0)
- {
- return 0;
- }
- else
- {
- new i=0,endpos,string[4096],group[32];
- format(string,4096,"%s",dini_Get(PlayerDat,"Permissions"));
- while(endpos!=-1)
- {
- new startpos = strfind(string,"-");
- endpos = strfind(string,"-",false,startpos+1);
- strmid(group,string,startpos+1,endpos);
- strdel(string,startpos,endpos);
- if(HasPermissionGroup(group,pex)==1)
- {
- i = 1;
- break;
- }
- else
- {
- i = 0;
- }
- }
- return i;
- }
- }
- }
- else if(Mode==3)
- {
- if(strfind(db_get("user","permissions","name",GetSpielerName(playerid)),cmd)>=0 || strfind(db_get("user","permissions","name",GetSpielerName(playerid)),"*",false)>=0)
- {
- print("1");
- return 1;
- }
- else
- {
- if(strcmp(db_get("user","servergroup","name",GetSpielerName(playerid)),"-",false)==0)
- {
- return 0;
- }
- else
- {
- new i=0,endpos,string[4096],group[32];
- format(string,4096,"%s",db_get("user","servergroup","name",GetSpielerName(playerid)));
- while(endpos!=-1)
- {
- new startpos = strfind(string,"-");
- endpos = strfind(string,"-",false,startpos+1);
- strmid(group,string,startpos+1,endpos);
- strdel(string,startpos,endpos);
- if(HasPermissionGroup(group,pex)==1)
- {
- i = 1;
- break;
- }
- else
- {
- i = 0;
- }
- }
- return i;
- }
- }
- }
- else
- {
- return 0;
- }
- }
- stock GivePermission(playerid,pex[])
- {
- if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"0",true)==0)
- {
- Mode = 0;
- }
- else if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"MySQL",true)==0)
- {
- Mode = 1;
- }
- else if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"File",true)==0)
- {
- Mode = 2;
- }
- else
- {
- Mode = 3;
- }
- if(strcmp(pex,"lkwnljwalnk",true)!=0)
- {
- if(Mode==1)
- {
- if(strcmp(mysql_get("user","name","name",GetSpielerName(playerid)),"0",true)==0)
- {
- return 0;
- }
- else
- {
- new string[4096];
- format(string,4096,"%s%s-",mysql_get("user","permissions","name",GetSpielerName(playerid)),pex);
- mysql_update("user","permissions",string,"name",GetSpielerName(playerid));
- if(strcmp(mysql_get("user","permissions","name",GetSpielerName(playerid)),"0",false)==0)
- {
- return 0;
- }
- else if(strcmp(mysql_get("user","permissions","name",GetSpielerName(playerid)),string,false)!=0)
- {
- return 0;
- }
- else
- {
- return 1;
- }
- }
- }
- else if(Mode==2)
- {
- new PlayerDat[64], newpex[4096];
- format(PlayerDat,64,"/Permissions/User/%s.pex",GetSpielerName(playerid));
- format(newpex,4096,"%s%s-",dini_Get(PlayerDat,"Permissions"),pex);
- dini_Set(PlayerDat,"Permissions",newpex);
- if(strcmp(dini_Get(PlayerDat,"Permissions"),"0",true)==0)
- {
- return 0;
- }
- else if(strcmp(dini_Get(PlayerDat,"Permissions"),newpex,false)==0 && strfind(dini_Get(PlayerDat,"Permissions"),pex)>=0)
- {
- return 1;
- }
- else
- {
- return 0;
- }
- }
- else if(Mode==3)
- {
- if(strcmp(db_get("user","name","name",GetSpielerName(playerid)),"0",true)==0)
- {
- return 0;
- }
- else
- {
- new string[4096];
- format(string,4096,"%s%s-",db_get("user","permissions","name",GetSpielerName(playerid)),pex);
- db_update("user","permissions",string,"name",GetSpielerName(playerid));
- if(strcmp(db_get("user","permissions","name",GetSpielerName(playerid)),"0",false)==0)
- {
- return 0;
- }
- else if(strcmp(db_get("user","permissions","name",GetSpielerName(playerid)),string,false)!=0)
- {
- return 0;
- }
- else
- {
- return 1;
- }
- }
- }
- else
- {
- return 0;
- }
- }
- else
- {
- return 0;
- }
- }
- stock TakePermission(playerid,pex[])
- {
- if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"0",true)==0)
- {
- Mode = 0;
- }
- else if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"MySQL",true)==0)
- {
- Mode = 1;
- }
- else if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"File",true)==0)
- {
- Mode = 2;
- }
- else
- {
- Mode = 3;
- }
- if(strcmp(pex,"jwdlkjnbawd",true)!=0)
- {
- if(Mode==1)
- {
- if(strcmp(mysql_get("user","name","name",GetSpielerName(playerid)),"0",true)==0)
- {
- return 0;
- }
- else
- {
- new string[4096];
- format(string,4096,"%s",mysql_get("user","permissions","name",GetSpielerName(playerid)));
- new startpos = strfind(string,pex);
- if(startpos>=0)
- {
- new endpos = strfind(string,"-",false,startpos);
- strdel(string,startpos-1,endpos);
- mysql_update("user","permissions",string,"name",GetSpielerName(playerid));
- if(strcmp(mysql_get("user","permissions","name",GetSpielerName(playerid)),"0",false)==0)
- {
- return 0;
- }
- else if(strcmp(mysql_get("user","permissions","name",GetSpielerName(playerid)),string,false)!=0)
- {
- return 0;
- }
- else
- {
- return 1;
- }
- }
- else
- {
- return 0;
- }
- }
- }
- else if(Mode==2)
- {
- new PlayerDat[64], string[4096];
- format(PlayerDat,64,"/Permissions/User/%s.pex",GetSpielerName(playerid));
- format(string,4096,"%s",dini_Get(PlayerDat,"Permissions"));
- new startpos = strfind(string,pex);
- if(startpos>=0)
- {
- new endpos = strfind(string,"-",false,startpos);
- strdel(string,startpos-1,endpos);
- dini_Set(PlayerDat,"Permissions",string);
- if(strcmp(dini_Get(PlayerDat,"Permissions"),"0",true)==0)
- {
- return 0;
- }
- else if(strcmp(dini_Get(PlayerDat,"Permissions"),string,false)==0 && strfind(dini_Get(PlayerDat,"Permissions"),pex)==-1)
- {
- return 1;
- }
- else
- {
- return 0;
- }
- }
- else
- {
- return 0;
- }
- }
- else if(Mode==3)
- {
- if(strcmp(db_get("user","name","name",GetSpielerName(playerid)),"0",true)==0)
- {
- return 0;
- }
- else
- {
- new string[4096];
- format(string,4096,"%s",db_get("user","permissions","name",GetSpielerName(playerid)));
- new startpos = strfind(string,pex);
- if(startpos>=0)
- {
- print("1");
- new endpos = strfind(string,"-",false,startpos);
- strdel(string,startpos-1,endpos);
- db_update("user","permissions",string,"name",GetSpielerName(playerid));
- if(strcmp(db_get("user","permissions","name",GetSpielerName(playerid)),"0",false)==0)
- {
- return 0;
- }
- else if(strcmp(db_get("user","permissions","name",GetSpielerName(playerid)),string,false)!=0)
- {
- return 0;
- }
- else
- {
- return 1;
- }
- }
- else
- {
- print("No found");
- return 0;
- }
- }
- }
- else
- {
- return 0;
- }
- }
- else
- {
- return 0;
- }
- }
- stock GivePermissionGroup(group[],pex[])
- {
- if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"0",true)==0)
- {
- Mode = 0;
- }
- else if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"MySQL",true)==0)
- {
- Mode = 1;
- }
- else if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"File",true)==0)
- {
- Mode = 2;
- }
- else
- {
- Mode = 3;
- }
- if(strcmp(pex,"uwadkjbwadlk",true)!=0)
- {
- if(Mode==1)
- {
- if(strcmp(mysql_get("servergroup","name","name",group),"0",true)==0)
- {
- return 0;
- }
- else
- {
- new string[4096];
- format(string,4096,"%s%s-",mysql_get("servergroup","permissions","name",group),pex);
- mysql_update("servergroup","permissions",string,"name",group);
- if(strcmp(mysql_get("servergroup","permissions","name",group),"0",false)==0)
- {
- return 0;
- }
- else if(strcmp(mysql_get("servergroup","permissions","name",group),string,false)!=0)
- {
- return 0;
- }
- else
- {
- return 1;
- }
- }
- }
- else if(Mode==2)
- {
- new GroupDat[64];
- format(GroupDat,64,"/Permissions/Group/%s.grp",group);
- if(dini_Exists(GroupDat))
- {
- new string[4096];
- format(string,4096,"%s%s-",db_get("servergroup","permissions","name",group),pex);
- dini_Set(GroupDat,"Permissions",string);
- if(strcmp(dini_Get(GroupDat,"Permissions"),"0",true)==0 || strcmp(dini_Get(GroupDat,"Permissions"),string)!=0)
- {
- return 0;
- }
- else
- {
- return 1;
- }
- }
- else
- {
- return 0;
- }
- }
- else if(Mode==3)
- {
- if(strcmp(db_get("servergroup","name","name",group),"0",true)==0)
- {
- return 0;
- }
- else
- {
- new string[4096];
- format(string,4096,"%s%s-",db_get("servergroup","permissions","name",group),pex);
- db_update("servergroup","permissions",string,"name",group);
- if(strcmp(db_get("servergroup","permissions","name",group),"0",false)==0)
- {
- return 0;
- }
- else if(strcmp(db_get("servergroup","permissions","name",group),string,false)!=0)
- {
- return 0;
- }
- else
- {
- return 1;
- }
- }
- }
- else
- {
- return 0;
- }
- }
- else
- {
- return 0;
- }
- }
- stock TakePermissionGroup(group[],pex[])
- {
- if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"0",true)==0)
- {
- Mode = 0;
- }
- else if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"MySQL",true)==0)
- {
- Mode = 1;
- }
- else if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"File",true)==0)
- {
- Mode = 2;
- }
- else
- {
- Mode = 3;
- }
- if(strcmp(pex,"lnkwdnlkj",true)!=0)
- {
- if(Mode==1)
- {
- if(strcmp(mysql_get("servergroup","name","name",group),"0",true)==0)
- {
- return 0;
- }
- else
- {
- new string[4096];
- format(string,4096,"%s",mysql_get("servergroup","permissions","name",group));
- new startpos = strfind(string,pex);
- if(startpos>=0)
- {
- new endpos = strfind(string,"-",false,startpos);
- strdel(string,startpos-1,endpos);
- mysql_update("servergroup","permissions",string,"name",group);
- if(strcmp(mysql_get("servergroup","permissions","name",group),"0",false)==0)
- {
- return 0;
- }
- else if(strcmp(mysql_get("servergroup","permissions","name",group),string,false)!=0)
- {
- return 0;
- }
- else
- {
- return 1;
- }
- }
- else
- {
- return 0;
- }
- }
- }
- else if(Mode==2)
- {
- new GroupDat[64], string[4096];
- format(GroupDat,64,"/Permissions/Group/%s.grp",group);
- format(string,4096,"%s",dini_Get(GroupDat,"Permissions"));
- new startpos = strfind(string,pex);
- if(startpos>=0)
- {
- new endpos = strfind(string,"-",false,startpos);
- strdel(string,startpos-1,endpos);
- dini_Set(GroupDat,"Permissions",string);
- if(strcmp(dini_Get(GroupDat,"Permissions"),"0",true)==0)
- {
- return 0;
- }
- else if(strcmp(dini_Get(GroupDat,"Permissions"),string,false)==0 && strfind(dini_Get(GroupDat,"Permissions"),pex)==-1)
- {
- return 1;
- }
- else
- {
- return 0;
- }
- }
- else
- {
- return 0;
- }
- }
- else if(Mode==3)
- {
- if(strcmp(db_get("servergroup","name","name",group),"0",true)==0)
- {
- return 0;
- }
- else
- {
- new string[4096];
- format(string,4096,"%s",db_get("servergroup","permissions","name",group));
- new startpos = strfind(string,pex);
- if(startpos>=0)
- {
- new endpos = strfind(string,"-",false,startpos);
- strdel(string,startpos-1,endpos);
- db_update("servergroup","permissions",string,"name",group);
- if(strcmp(db_get("servergroup","permissions","name",group),"0",false)==0)
- {
- return 0;
- }
- else if(strcmp(db_get("servergroup","permissions","name",group),string,false)!=0)
- {
- return 0;
- }
- else
- {
- return 1;
- }
- }
- else
- {
- return 0;
- }
- }
- }
- else
- {
- return 0;
- }
- }
- else
- {
- return 0;
- }
- }
- stock IsInGroup(playerid,group[])
- {
- new string[4096];
- if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"0",true)==0)
- {
- Mode = 0;
- }
- else if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"MySQL",true)==0)
- {
- Mode = 1;
- }
- else if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"File",true)==0)
- {
- Mode = 2;
- }
- else
- {
- Mode = 3;
- }
- if(Mode==1)
- {
- format(string,4096,"%s",mysql_get("user","servergroup","name",GetSpielerName(playerid)));
- if(strfind(string,group)>=0)
- {
- return 1;
- }
- else
- {
- return 0;
- }
- }
- else if(Mode==2)
- {
- new PlayerDat[64];
- format(PlayerDat,64,"/Permissions/User/%s.pex",GetSpielerName(playerid));
- format(string,4096,"%s",dini_Get(PlayerDat,"servergroup"));
- if(strfind(string,group)>=0)
- {
- return 1;
- }
- else
- {
- return 0;
- }
- }
- else if(Mode==3)
- {
- format(string,4096,"%s",db_get("user","servergroup","name",GetSpielerName(playerid)));
- if(strfind(string,group)>=0)
- {
- return 1;
- }
- else
- {
- return 0;
- }
- }
- else
- {
- return 0;
- }
- }
- stock DeleteAllFromGroup(group[])
- {
- if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"0",true)==0)
- {
- Mode = 0;
- }
- else if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"MySQL",true)==0)
- {
- Mode = 1;
- }
- else if(strcmp(dini_Get("PermissionsEx.cfg","Mode"),"File",true)==0)
- {
- Mode = 2;
- }
- else
- {
- Mode = 3;
- }
- if(Mode==1)
- {
- new string[4096];
- format(string,4096,"%s",mysql_get("servergroup","user","name",group));
- if(strcmp(string,"-",false)==0)
- {
- return 0;
- }
- else
- {
- new endpos,user[32];
- while(endpos!=-1)
- {
- new startpos = strfind(string,"-");
- endpos = strfind(string,"-",false,startpos+1);
- strmid(user,string,startpos+1,endpos);
- new groupstring[4096];
- format(groupstring,4096,"%s",mysql_get("user","servergroup","name",user));
- new stpos = strfind(groupstring,group);
- new epos = strfind(groupstring,"-",false,stpos);
- strdel(groupstring,stpos,epos+1);
- mysql_update("user","servergroup",groupstring,"name",user);
- strdel(string,startpos,endpos);
- }
- return 1;
- }
- }
- else if(Mode==2)
- {
- new string[4096],GroupDat[64],PlayerDat[64];
- format(GroupDat,64,"/Permissions/Group/%s.grp",group);
- format(string,4096,"%s",dini_Get(GroupDat,"user"));
- if(strcmp(string,"-",false)==0)
- {
- return 0;
- }
- else
- {
- new endpos,user[32];
- while(endpos!=-1)
- {
- new startpos = strfind(string,"-");
- endpos = strfind(string,"-",false,startpos+1);
- strmid(user,string,startpos+1,endpos);
- format(PlayerDat,64,"/Permissions/Group/%s.pex",user);
- new groupstring[4096];
- format(groupstring,4096,"%s",dini_Get(PlayerDat,"servergroup"));
- new stpos = strfind(groupstring,group);
- new epos = strfind(groupstring,"-",false,stpos);
- strdel(groupstring,stpos,epos+1);
- dini_Set(PlayerDat,"servergroup",groupstring);
- strdel(string,startpos,endpos);
- }
- return 1;
- }
- }
- else if(Mode==3)
- {
- new string[4096];
- format(string,4096,"%s",db_get("servergroup","user","name",group));
- if(strcmp(string,"-",false)==0)
- {
- return 0;
- }
- else
- {
- new endpos,user[32];
- while(endpos!=-1)
- {
- new startpos = strfind(string,"-");
- endpos = strfind(string,"-",false,startpos+1);
- strmid(user,string,startpos+1,endpos);
- new groupstring[4096];
- format(groupstring,4096,"%s",db_get("user","servergroup","name",user));
- new stpos = strfind(groupstring,group);
- new epos = strfind(groupstring,"-",false,stpos);
- strdel(groupstring,stpos,epos+1);
- db_update("user","servergroup",groupstring,"name",user);
- strdel(string,startpos,endpos);
- }
- return 1;
- }
- }
- else
- {
- return 0;
- }
- }
- stock GetSpielerName(playerid)
- {
- new get[32];
- GetPlayerName(playerid,get,32);
- return get;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement