Guarded
#1

how can I save the kicks and ban in a text document .txt



Commands

PHP код:
CMD:ban(playerid,params[])
{
         if(
PlayerInfo[playerid][cAdmin] >= 3)
         {
         new 
IDgname[MAX_PLAYER_NAME], reason[70];
         new 
string[125];
         if(
sscanf(params,"us[70]",ID,reason)) return SendClientMessage(playerid,-1"*Uso: /ban [playerid] [razуn]");
         if(
ID == INVALID_PLAYER_ID || !IsPlayerConnected(ID)) return SendClientMessage(playerid, -1"La ID ingresada es incorrecta");
         
GetPlayerName(ID,gname,sizeof(gname));
         
format(stringsizeof(string), "El usuario %s(%d) ha sido baneado por el administrador %s(%d) (razуn: %s)"gnameIDNombre(playerid), playeridreason);
         
SendClientMessageToAll(COLOR_KBstring);
         
Ban(ID);}
         return 
1;
}
CMD:kick(playerid,params[])
{
         if(
PlayerInfo[playerid][cAdmin] >= 3)
         {
         new 
IDgname[MAX_PLAYER_NAME] ,reason[70];
         new 
string[125];
         if(
sscanf(params,"us[70]",ID,reason)) return SendClientMessage(playerid,-1"*Uso: /kick [playerid] [razуn]");
         if(
ID == INVALID_PLAYER_ID || !IsPlayerConnected(ID)) return SendClientMessage(playerid, -1"La ID ingresada es incorrecta");
         
GetPlayerName(ID,gname,sizeof(gname));
         
format(stringsizeof(string), "El usuario %s(%d) ha sido expulsado por el administrador %s(%d) (razуn: %s)"gnameIDNombre(playerid), playeridreason);
         
SendClientMessageToAll(COLOR_KBstring);
         
Kick(ID);}
         return 
1;

Reply
#2

Here it's all u need.
https://sampwiki.blast.hk/wiki/File_Functions

But my advice it's to use ******, the y_ini include.
Reply
#3

I do not know how to do it, I'm new could help me
Reply
#4

try it and reply if you got any issues!

Код:
CMD:ban(playerid,params[]) {
	if(PlayerInfo[playerid][LoggedIn] == 1) {
		if(PlayerInfo[playerid][Level] >= 4) {
		    new tmp[128], tmp2[128], Index;		tmp = strtok(params,Index), tmp2 = strtok(params,Index);
		    if(isnull(params)) return SendClientMessage(playerid, red, "USAGE: /ban [playerid] [reason]");
			if(isnull(tmp2)) return SendClientMessage(playerid, red, "ERROR: You must give a reason");
	    	new player1, playername[MAX_PLAYER_NAME], adminname[MAX_PLAYER_NAME], string[128];
			player1 = strval(tmp);
		 	if(IsPlayerConnected(player1) && player1 != INVALID_PLAYER_ID && player1 != playerid && (PlayerInfo[player1][Level] != ServerInfo[MaxAdminLevel]) ) {
				GetPlayerName(player1, playername, sizeof(playername)); GetPlayerName(playerid, adminname, sizeof(adminname));
				new year,month,day,hour,minuite,second; getdate(year, month, day); gettime(hour,minuite,second);
				CMDMessageToAdmins(playerid,"BAN");
				format(string,sizeof(string),"{ffff00}%s {ff0000}has been banned by Administrator {ffff00}%s {ff0000}[Reason: %s] [Date: %d/%d/%d] [Time: %d:%d]",playername,adminname,params[2],day,month,year,hour,minuite);
				SendClientMessageToAll(grey,string);
				SaveToFile("BanLog",string);
				aresetpall(player1);
				print(string);
				if(udb_Exists(PlayerName2(player1)) && PlayerInfo[player1][LoggedIn] == 1) dUserSetINT(PlayerName2(player1)).("banned",1);
				format(string,sizeof(string),"banned by Administrator %s. Reason: %s", adminname, params[2] );
				return BanEx(player1, string);
			} else return SendClientMessage(playerid, red, "Player is not connected or is yourself or is the highest level admin");
		} else return SendClientMessage(playerid,red,"ERROR: You are not a high enough level to use this command");
	} else return SendClientMessage(playerid,red,"ERROR: You must be logged in to use this commands");
}
Код:
CMD:kick(playerid,params[]) {
	if(PlayerInfo[playerid][LoggedIn] == 1) {
	    if(PlayerInfo[playerid][Level] >= 3) {
		    new tmp[128], tmp2[128], Index;		tmp = strtok(params,Index), tmp2 = strtok(params,Index);
		    if(isnull(params)) return SendClientMessage(playerid, red, "USAGE: /kick [playerid] [reason]");
	    	new player1, playername[MAX_PLAYER_NAME], adminname[MAX_PLAYER_NAME], string[128];
			player1 = strval(tmp);

		 	if(IsPlayerConnected(player1) && player1 != INVALID_PLAYER_ID && player1 != playerid && (PlayerInfo[player1][Level] != ServerInfo[MaxAdminLevel]) ) {
				GetPlayerName(player1, playername, sizeof(playername));		GetPlayerName(playerid, adminname, sizeof(adminname));
				CMDMessageToAdmins(playerid,"KICK");
				if(isnull(tmp2)) {
					format(string,sizeof(string),"{ffff00}%s {ff0000}has been kicked by Administrator {ffff00}%s {ff0000}[no reason given] ",playername,adminname); SendClientMessageToAll(grey,string);
					SaveToFile("KickLog",string); print(string); return Kick(player1);
				} else {
					format(string,sizeof(string),"{ffff00}%s {ff0000}has been kicked by Administrator {ffff00}%s {ff0000}[reason: %s]",playername,adminname,params[2]); SendClientMessageToAll(grey,string);
					SaveToFile("KickLog",string); print(string); return Kick(player1); }
			} else return SendClientMessage(playerid, red, "Player is not connected or is yourself or is the highest level admin");
		} else return SendClientMessage(playerid,red,"ERROR: You are not a high enough level to use this command");
	} else return SendClientMessage(playerid,red,"ERROR: You must be logged in to use this commands");
}
Reply
#5

many variables and others without defining, I just want the kick and ban to be saved in a .txt document
Reply
#6

Код:
CMD:ban(playerid,params[]) 
{ 
         if(PlayerInfo[playerid][cAdmin] >= 3) 
         { 
         new ID, gname[MAX_PLAYER_NAME], reason[70]; 
         new string[125]; 
         if(sscanf(params,"us[70]",ID,reason)) return SendClientMessage(playerid,-1, "*Uso: /ban [playerid] [razуn]"); 
         if(ID == INVALID_PLAYER_ID || !IsPlayerConnected(ID)) return SendClientMessage(playerid, -1, "La ID ingresada es incorrecta"); 
         GetPlayerName(ID,gname,sizeof(gname)); 
         format(string, sizeof(string), "El usuario %s(%d) ha sido baneado por el administrador %s(%d) (razуn: %s)", gname, ID, Nombre(playerid), playerid, reason); 
         SendClientMessageToAll(COLOR_KB, string); 
         SaveToFile("BanLog",string);
         Ban(ID);} 
         return 1; 
} 

CMD:kick(playerid,params[]) 
{ 
         if(PlayerInfo[playerid][cAdmin] >= 3) 
         { 
         new ID, gname[MAX_PLAYER_NAME] ,reason[70]; 
         new string[125]; 
         if(sscanf(params,"us[70]",ID,reason)) return SendClientMessage(playerid,-1, "*Uso: /kick [playerid] [razуn]"); 
         if(ID == INVALID_PLAYER_ID || !IsPlayerConnected(ID)) return SendClientMessage(playerid, -1, "La ID ingresada es incorrecta"); 
         GetPlayerName(ID,gname,sizeof(gname)); 
         format(string, sizeof(string), "El usuario %s(%d) ha sido expulsado por el administrador %s(%d) (razуn: %s)", gname, ID, Nombre(playerid), playerid, reason); 
         SendClientMessageToAll(COLOR_KB, string); 
         SaveToFile("KickLog",string);
         Kick(ID);} 
         return 1; 
}
Reply
#7

undefined symbol "SaveToFile"
Reply
#8

Put this on top of the script

Код:
#define SAVE_LOGS
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)