All pastes #807991 Raw Edit

Untitled

public text v1 · immutable
·published 2007-12-07 04:55 UTC
rendered paste body
	if(strcmp(cmd, "/makeadmin", true) == 0)
	{
	    if(IsPlayerConnected(playerid))
	    {
	    if(!PlayerAt(20,playerid,1500.0000,-887.0979,32.5584))
		{
		GetPlayerName(playerid, findtarget, sizeof(findtarget));
		
		
		if(IsAdmin(playerid))
		{
		
         	tmp = strtok(cmdtext, idx);


			if(!strlen(tmp))

			{
				SendClientMessage(playerid, lightred, "Makeadmin usage ||   /makeadmin [playerid/PartOfName]");
				return 1;
			}
	    	 	new adminP;
	   		 	adminP = ReturnUser(tmp);
				if(IsPlayerConnected(adminP))
 				{
					if(adminP != INVALID_PLAYER_ID)
			        {
			        new givenP;
					givenP = ReturnUser(tmp);
			        new stringx[60];
			        GetPlayerName(givenP, sender, sizeof(sender));
			        format(stringx, sizeof(stringx), "You gave %s admin rights", sender);
			        SendClientMessage(playerid, lightblue2, stringx);
			         new string2[60];
			        GetPlayerName(playerid, findtarget, sizeof(findtarget));
			        format(string2, sizeof(string2), "%s has given you admin rights", findtarget);
			        SendClientMessage(playerid, lightblue2, string2);
			        
			       if(!fexist("names.ini"))
 					{
 					fcreate("names.ini");
 						new File: files = fopen("names.ini", io_append);
   						new adminstring[256];

   						GetPlayerName(adminP, findtarget, sizeof(findtarget));

						format(adminstring, sizeof(adminstring), "%s", findtarget);

						fwrite(files, adminstring);

						fclose(files);
 					}
 					else
 					{
 				
				//	 fcreate("names.ini");
				//	 }+++++++
              			new File: files = fopen("names.ini", io_append);
   						new adminstring[256];

   						GetPlayerName(adminP, findtarget, sizeof(findtarget));

						format(adminstring, sizeof(adminstring), "\r\n%s", findtarget);

						fwrite(files, adminstring);

						fclose(files);
						}
							if(!fexist("ip.ini"))
 							{
 							fcreate("ip.ini");
 							new File: files1 = fopen("ip.ini", io_append);
   						new adminstring2[256];

   						GetPlayerIp(adminP, sender, 7);

						format(adminstring2, sizeof(adminstring2), "%s", sender);

						fwrite(files1, adminstring2);

						fclose(files1);
 							}
 							else
 							{
						new File: files1 = fopen("ip.ini", io_append);
   						new adminstring2[256];

   						GetPlayerIp(adminP, sender, 7);

						format(adminstring2, sizeof(adminstring2), "\r\n%s", sender);

						fwrite(files1, adminstring2);

						fclose(files1);
						}
			        }

			        }
			        }
			        
						else
						{
					    	SendClientMessage(playerid, lightred, "You dont have access to that command");
						}
						}

					    	else
						{
							SendClientMessage(playerid, lightred, "Incorrect playerid/name");
						}



		}



		return 1;
	}

// above is how i make people admins, so thats is the writing part.

//below reading part


public IsAdmin(playerid)
{
new string[256];
new string2[256];
new name[MAX_PLAYER_NAME];
new ip[8];
GetPlayerName(playerid, name, sizeof(name));
GetPlayerIp(playerid, ip, sizeof(ip));
new File:filename = fopen("names.ini", io_read);
new File:filename2 = fopen("ip.ini", io_read);
	if(filename)
	{
     		new MyVal[256];
    		while(fread(filename, string))
    		{
        	if(strcmp(string, name, true, 24)==0)
        	{
            MyVal[255]=GetVal(2, string);
            
            if(filename2)
			{
     		new MyVal2[256];
    		while(fread(filename2, string2))
    		{
        	if(strcmp(string2, ip, true, 7)==0)
        	{
            MyVal2[255]=GetVal(2, string2);
            
            return 1;
            }
            }
            }
        	}
 			}
	     
		}
		else{
		SendClientMessage(playerid, lightred, "You are not authorized to use that admin command");
		}
	fclose(filename);

return 0;
}


//ah and you need that nipplet.

GetVal(numb, str[]) {
    new tmp[256], idx;
    for(new i=0; i<numb; i++) {
        tmp=strtok(str, idx);
    }
    return strval(tmp);
}

//good luck, dont mind the spacing.. im lazy.