CMD:setchan(playerid, params[])
{
new SChannel;
if(sscanf(params, "d", SChannel)) return SendClientMessage(playerid, 0xFF0000AA, "[USAGE]: /setchan [1-99999]");
else if (SChannel > 99999 || SChannel == 0) return SendClientMessage(playerid, 0xFF0000AA, "[ERROR]: Your channel needs to be between 1 and 99999");
else
{
new string[128];
format(string, sizeof(string), "You've succesfully set your channel number to: '%d'.", SChannel);
SendClientMessage(playerid, 0x81CFAB00, string);
PSChannel[playerid] = SChannel;
}
return 1;
}
#include <dini>
#define CHANSAV "channels.ini"
public OnGameModeInit() //OnFilterScriptInit if using an FS
{
if(!dini_Exists(CHANSAV)) dini_Create(CHANSAV);
return 1;
}
public OnPlayerConnect(playerid)
{
new pName[MAX_PLAYER_NAME];
GetPlayerName(playerid, pName, sizeof(pName));
PSChannel[playerid] = dini_Int(CHANSAV, pName);
return 1;
}
CMD:setchan(playerid, params[])
{
new SChannel;
if(sscanf(params, "d", SChannel)) return SendClientMessage(playerid, 0xFF0000AA, "[USAGE]: /setchan [1-99999]");
else if(SChannel > 99999 || SChannel < 1) return SendClientMessage(playerid, 0xFF0000AA, "[ERROR]: Your channel needs to be between 1 and 99999");
else
{
new string[120];
format(string, sizeof(string), "You've succesfully set your channel number to: '%d'.", SChannel);
SendClientMessage(playerid, 0x81CFAB00, string);
PSChannel[playerid] = SChannel;
new pName[MAX_PLAYER_NAME];
GetPlayerName(playerid, pName, sizeof(pName));
dini_IntSet(CHANSAV, pName, SChannel);
}
return 1;
}
Do you have an admin system or register/login system already?
EDIT: If not, try this. pawn Код:
|
CMD:setchan(playerid, params[])
{
new SChannel;
if(sscanf(params, "d", SChannel)) return SendClientMessage(playerid, 0xFF0000AA, "[USAGE]: /setchan [1-99999]");
else if (SChannel > 99999 || SChannel == 0) return SendClientMessage(playerid, 0xFF0000AA, "[ERROR]: Your channel needs to be between 1 and 99999");
else
{
new string[128];
format(string, sizeof(string), "You've succesfully set your channel number to: '%d'.", SChannel);
SendClientMessage(playerid, 0x81CFAB00, string);
PSChannel[playerid] = SChannel;
}
return 1;
}
CMD:wt(playerid, params[])
{
new Sstring[128],
pName[MAX_PLAYER_NAME];
if(sscanf(params, "s[128]", Sstring)) return SendClientMessage(playerid, 0xFF0000AA, "[USAGE]: /wt [text]");
else if (PSChannel[playerid] == 0) return SendClientMessage(playerid, 0xFF0000AA, "[ERROR]: You are not in a wt channel! Use /setchan.");
else
{
new string[128];
GetPlayerName(playerid, pName, sizeof(pName));
for(new i; i < MAX_PLAYERS; i++)
{
if(PSChannel[i] == PSChannel[playerid])
{
format(string, sizeof(string), "* %d %s: %s", PSChannel[playerid], pName, Sstring);
SendClientMessage(playerid, 0xFFFF00AA, string);
}
else
{
}
}
}
return 1;
}
CMD:resetchan(playerid, params[])
{
PSChannel[playerid] = 0;
SendClientMessage(playerid, 0x81CFAB00, "You've successfully set your walkie talkie channel to none.");
#pragma unused params
return 1;
}
That code doesn't help at all. I need to know how the user files are saved so I can save the channel in the user file.
|
Well just post your /login or /register command. I'm sure you can find that.
|