CMD:ban(playerid, params[])
{
if(PlayerInfo[playerid][Admin] < 1) return NotAdmin(playerid);
new id, reason[64];
if(sscanf(params, "us", id, reason))
{
SendClientMessage(playerid, c_green, "Usage: /ban [PLayerID/PartOfName] [Reason]");
return 1;
}
new string[128];
new Name[MAX_PLAYER_NAME], PlayerName[MAX_PLAYER_NAME];
GetPlayerName(playerid, Name, sizeof(Name));
GetPlayerName(id, PlayerName, sizeof(PlayerName));
format(string, sizeof(string), "%s has been banned by administrator %s. Reason: %s.", PlayerName, Name, reason);
SendClientMessageToAll(COLOR_RED, string);
new file[128];
format(file, sizeof(file), "RRP/BannedList/%s.ini", PlayerName);
if(dini_Exists(file) == 0)
{
new weapons, ammo;
for(new i = 0; i < 13; i++)
{
dini_Create(file);
dini_Set(file, "Reason", reason);
dini_Set(file, "Banner", Name);
new pIP[16];
GetPlayerIp(id, pIP, sizeof(pIP));
dini_Set(file, "IP", pIP);
new Float:x, Float:y, Float:z;
dini_IntSet(file, "LastCar", PlayerInfo[id][LastCar]);
GetPlayerPos(id, x, y, z);
new pos[64];
format(pos, sizeof(pos), "(%f, %f, %f)", x, y, z);
dini_Set(file, "Position", pos);
GetPlayerWeaponData(playerid, i, weapons, ammo);
new slota[64];
format(slota, sizeof(slota), "Slot(%i):Weapon(%i) / Ammo(%i)", i, weapons, ammo);
dini_Set(file, "Weapons", slota);
Ban(id);
return 1;
}
return 1;
}
return 1;
}
Vocк salva apenas em "Weapons"
Deveria ter algo como Weapons_0 , Weapons_1 , Weapons_2 etc |
CMD:ban(playerid, params[])
{
if(PlayerInfo[playerid][Admin] < 1) return NotAdmin(playerid);
new id, reason[64];
if(sscanf(params, "us", id, reason))
{
SendClientMessage(playerid, c_green, "Usage: /ban [PLayerID/PartOfName] [Reason]");
return 1;
}
new string[128];
new Name[MAX_PLAYER_NAME], PlayerName[MAX_PLAYER_NAME];
GetPlayerName(playerid, Name, sizeof(Name));
GetPlayerName(id, PlayerName, sizeof(PlayerName));
format(string, sizeof(string), "%s has been banned by administrator %s. Reason: %s.", PlayerName, Name, reason);
SendClientMessageToAll(COLOR_RED, string);
new file[128];
format(file, sizeof(file), "RRP/BannedList/%s.ini", PlayerName);
if(dini_Exists(file) == 0)
{
new weapons, ammo;
for(new i = 0; i < 13; i++)
{
dini_Create(file);
dini_Set(file, "Reason", reason);
dini_Set(file, "Banner", Name);
new pIP[16];
GetPlayerIp(id, pIP, sizeof(pIP));
dini_Set(file, "IP", pIP);
new Float:x, Float:y, Float:z;
dini_IntSet(file, "LastCar", PlayerInfo[id][LastCar]);
GetPlayerPos(id, x, y, z);
new pos[64];
format(pos, sizeof(pos), "(%f, %f, %f)", x, y, z);
dini_Set(file, "Position", pos);
GetPlayerWeaponData(playerid, i, weapons, ammo);
new slota[64];
if(i == 0)
{
format(slota, sizeof(slota), "Slot(%i):Weapon(%i) / Ammo(%i)", i, weapons, ammo);
dini_Set(file, "Weapons0", slota);
}
if(i == 1)
{
format(slota, sizeof(slota), "Slot(%i):Weapon(%i) / Ammo(%i)", i, weapons, ammo);
dini_Set(file, "Weapons1", slota);
}
if(i == 2)
{
format(slota, sizeof(slota), "Slot(%i):Weapon(%i) / Ammo(%i)", i, weapons, ammo);
dini_Set(file, "Weapons2", slota);
}
if(i == 3)
{
format(slota, sizeof(slota), "Slot(%i):Weapon(%i) / Ammo(%i)", i, weapons, ammo);
dini_Set(file, "Weapons3", slota);
}
if(i == 4)
{
format(slota, sizeof(slota), "Slot(%i):Weapon(%i) / Ammo(%i)", i, weapons, ammo);
dini_Set(file, "Weapons4", slota);
}
if(i == 5)
{
format(slota, sizeof(slota), "Slot(%i):Weapon(%i) / Ammo(%i)", i, weapons, ammo);
dini_Set(file, "Weapons5", slota);
}
if(i == 6)
{
format(slota, sizeof(slota), "Slot(%i):Weapon(%i) / Ammo(%i)", i, weapons, ammo);
dini_Set(file, "Weapons6", slota);
}
if(i == 7)
{
format(slota, sizeof(slota), "Slot(%i):Weapon(%i) / Ammo(%i)", i, weapons, ammo);
dini_Set(file, "Weapons7", slota);
}
if(i == 8)
{
format(slota, sizeof(slota), "Slot(%i):Weapon(%i) / Ammo(%i)", i, weapons, ammo);
dini_Set(file, "Weapons8", slota);
}
if(i == 9)
{
format(slota, sizeof(slota), "Slot(%i):Weapon(%i) / Ammo(%i)", i, weapons, ammo);
dini_Set(file, "Weapons9", slota);
}
if(i == 10)
{
format(slota, sizeof(slota), "Slot(%i):Weapon(%i) / Ammo(%i)", i, weapons, ammo);
dini_Set(file, "Weapons10", slota);
}
if(i == 11)
{
format(slota, sizeof(slota), "Slot(%i):Weapon(%i) / Ammo(%i)", i, weapons, ammo);
dini_Set(file, "Weapons11", slota);
}
if(i == 12)
{
format(slota, sizeof(slota), "Slot(%i):Weapon(%i) / Ammo(%i)", i, weapons, ammo);
dini_Set(file, "Weapons12", slota);
}
Ban(id);
return 1;
}
return 1;
}
return 1;
}
CMD:ban(playerid, params[])
{
if(PlayerInfo[playerid][Admin] < 1) return NotAdmin(playerid);
new id, reason[64];
if(sscanf(params, "us", id, reason))
{
SendClientMessage(playerid, c_green, "Usage: /ban [PLayerID/PartOfName] [Reason]");
return 1;
}
new string[128];
new slot;
new Name[MAX_PLAYER_NAME], PlayerName[MAX_PLAYER_NAME];
GetPlayerName(playerid, Name, sizeof(Name));
GetPlayerName(id, PlayerName, sizeof(PlayerName));
format(string, sizeof(string), "%s has been banned by administrator %s. Reason: %s.", PlayerName, Name, reason);
SendClientMessageToAll(COLOR_RED, string);
new file[128];
format(file, sizeof(file), "RRP/BannedList/%s.ini", PlayerName);
if(dini_Exists(file) == 0)
{
new weapons, ammo;
for(new i = 0; i < 13; i++)
{
slot++;
dini_Create(file);
dini_Set(file, "Reason", reason);
dini_Set(file, "Banner", Name);
new pIP[16];
GetPlayerIp(id, pIP, sizeof(pIP));
dini_Set(file, "IP", pIP);
new Float:x, Float:y, Float:z;
dini_IntSet(file, "LastCar", PlayerInfo[id][LastCar]);
GetPlayerPos(id, x, y, z);
new pos[64];
format(pos, sizeof(pos), "(%f, %f, %f)", x, y, z);
dini_Set(file, "Position", pos);
GetPlayerWeaponData(playerid, i, weapons, ammo);
new slota[64];
format(slota, sizeof(slota), "Slot(%i):Weapon(%i) / Ammo(%i)", slot, weapons, i);
dini_Set(file, "Weapons", slota);
Ban(id);
return 1;
}
return 1;
}
return 1;
}
tenta ae!
pawn Код:
|
CMD:ban(playerid, params[])
{
if(PlayerInfo[playerid][Admin] < 1) return NotAdmin(playerid);
new id, reason[64];
if(sscanf(params, "us", id, reason))
{
SendClientMessage(playerid, c_green, "Usage: /ban [PLayerID/PartOfName] [Reason]");
return 1;
}
new string[128];
new slot;
new Name[MAX_PLAYER_NAME], PlayerName[MAX_PLAYER_NAME];
GetPlayerName(playerid, Name, sizeof(Name));
GetPlayerName(id, PlayerName, sizeof(PlayerName));
format(string, sizeof(string), "%s has been banned by administrator %s. Reason: %s.", PlayerName, Name, reason);
SendClientMessageToAll(COLOR_RED, string);
new file[128];
format(file, sizeof(file), "RRP/BannedList/%s.ini", PlayerName);
if(!dini_Exists(file))
{
new weapons, ammo,pIP[16],pos[64],Float:x, Float:y, Float:z,slota[64],str[128];
dini_Create(file);
dini_Set(file, "Reason", reason);
dini_Set(file, "Banner", Name);
GetPlayerIp(id, pIP, sizeof(pIP));
dini_Set(file, "IP", pIP);
dini_IntSet(file, "LastCar", PlayerInfo[id][LastCar]);
GetPlayerPos(id, x, y, z);
format(pos, sizeof(pos), "(%f, %f, %f)", x, y, z);
dini_Set(file, "Position", pos);
for(new i = 0; i < 13; i++)
{
GetPlayerWeaponData(playerid, i, weapons, ammo);
format(slota, sizeof(slota), "Slot(%i):Weapon(%i) / Ammo(%i)", i, weapons, ammo);
format(str,sizeof(str),"Weapons%d",i);
dini_Set(file, str, slota);
Ban(id);
}
return 1;
}
return 0;
}
No Caso fiz uma mudanзa no seu codigo(q tava meio sem logica), no caso agora ele vai salvar as armas e tal em uma string diferente
ex: Weapons0=Slot(1):Weapon(5) / Ammo(50) Weapons1=Slot(2):Weapon(1) / Ammo(1) e assim consecutivamente atй o slot final o codigo estб abaixo espere que funcione (nao testei) pawn Код:
|
CMD:ban(playerid, params[])
{
if(PlayerInfo[playerid][Admin] < 1) return NotAdmin(playerid);
new id, reason[64];
if(sscanf(params, "us", id, reason))
{
SendClientMessage(playerid, c_green, "Usage: /ban [PLayerID/PartOfName] [Reason]");
return 1;
}
new string[128];
new slot;
new Name[MAX_PLAYER_NAME], PlayerName[MAX_PLAYER_NAME];
GetPlayerName(playerid, Name, sizeof(Name));
GetPlayerName(id, PlayerName, sizeof(PlayerName));
format(string, sizeof(string), "%s has been banned by administrator %s. Reason: %s.", PlayerName, Name, reason);
SendClientMessageToAll(COLOR_RED, string);
new file[128];
format(file, sizeof(file), "RRP/BannedList/%s.ini", PlayerName);
if(!dini_Exists(file))
{
new weapons[13][2], pIP[16],pos[64],Float:x, Float:y, Float:z,slota[64],str[128];
dini_Create(file);
dini_Set(file, "Reason", reason);
dini_Set(file, "Banner", Name);
GetPlayerIp(id, pIP, sizeof(pIP));
dini_Set(file, "IP", pIP);
dini_IntSet(file, "LastCar", PlayerInfo[id][LastCar]);
GetPlayerPos(id, x, y, z);
format(pos, sizeof(pos), "(%f, %f, %f)", x, y, z);
dini_Set(file, "Position", pos);
for(new i = 0; i < 13; i++)
{
GetPlayerWeaponData(playerid, i, weapons[i][0], weapons[i][1]);
format(slota, sizeof(slota), "Slot(%i):Weapon(%i) / Ammo(%i)", i, weapons[i][0], weapons[i][1]);
format(str,sizeof(str),"Weapons%d",i);
dini_Set(file, str, slota);
}
Ban(id);
return 1;
}
return 0;
}