Clan / Group When Relog not saved!
#1

Hi Guys i make group system but when i relog all groups Restart and not saved i thing for im not make Folder in Scirptfiles ? So What i can to do ? To SAVE IT ?

Код:
COMMAND:groupcreate(playerid, params[])
{
  	if(group[playerid][gid] != -1) return SendClientMessage(playerid, 0xFF0000, "Leave your group with {FFFFFF}/groupleave{FF0000} before creating a new one!");
  	if(strlen(params) > 49 || strlen(params) < 3) return SendClientMessage(playerid, 0xFF0000, "Usage: {FFFFFF}/groupcreate{FF0000} (Group name 3-50 characters)!");
	if(IsGroupTaken(params)) return SendClientMessage(playerid, 0xFF0000, "Group name is already in use!");
	CreateGroup(params, playerid);
  	return 1;
}

COMMAND:groupleave(playerid, params[])
{
	if(group[playerid][gid] == -1) return SendClientMessage(playerid, 0xFF0000, "You are not in a group to leave one!");
 	LeaveGroup(playerid, 0);
 	return 1;
}

COMMAND:groupinvite(playerid, params[])
{
	if(group[playerid][order] != 1) return SendClientMessage(playerid, 0xFF0000, "You are not the leader of the group, you cannot invite people!");
	new cid;
	if(isnull(params)) return SendClientMessage(playerid, 0xFF0000, "Usage: {FFFFFF}/Groupinvite{FF0000} (playerid)");
	cid = strval(params);
	if(!IsPlayerConnected(cid)) return SendClientMessage(playerid, 0xFF0000, "Player Is not connected!");
	if(group[cid][gid] == group[playerid][gid]) return SendClientMessage(playerid, 0xFF0000, "Player Is already in your group!");
 	if(group[cid][invited] == group[playerid][gid]) return SendClientMessage(playerid, 0xFF0000, "Player has already been invited to your group!");
	if(group[cid][attemptjoin] == group[playerid][gid]) return GroupJoin(cid, group[playerid][gid]);
	group[cid][invited] = group[playerid][gid];
 	new string[125], pname[24];
 	GetPlayerName(playerid, pname, 24);
 	format(string, sizeof(string), "You have been invited to join group {FFFFFF}%s(%d){FFCC66} by {FFFFFF}%s(%d). /groupjoin %d", groupinfo[group[playerid][gid]][grname], group[playerid][gid], pname, playerid, group[playerid][gid]);
	SendClientMessage(cid, 0xFFCC66, string);
 	GetPlayerName(cid, pname, 24);
	format(string, sizeof(string), "You have invited {FFFFFF}%s(%d){FFCC66} to join your group!", pname, cid);
	SendClientMessage(playerid, 0xFFCC66, string);
 	return 1;
}

COMMAND:groupleader(playerid, params[])
{
	if(group[playerid][order] != 1) return SendClientMessage(playerid, 0xFF0000, "You are not the leader of the group, you cannot change the leader!");
	new cid;
	if(isnull(params)) return SendClientMessage(playerid, 0xFF0000, "Usage: {FFFFFF}/Groupleader{FF0000} (playerid)");
	cid = strval(params);
	if(!IsPlayerConnected(cid)) return SendClientMessage(playerid, 0xFF0000, "Player Is not connected!");
	if(cid == playerid)  return SendClientMessage(playerid, 0xFF0000, "You are already group leader, silly.");
	if(group[playerid][gid] != group[cid][gid]) return SendClientMessage(playerid, 0xFF0000, "Player Is not in your group!");
	ChangeMemberOrder(group[playerid][gid], 1);
	group[playerid][order] = GroupMembers(group[playerid][gid]);
	return 1;
}

COMMAND:groupjoin(playerid, params[])
{
	if(group[playerid][gid] != -1) return SendClientMessage(playerid, 0xFF0000, "You are already in a group! Leave your current one before joining another one!");
	new grid;
	if( (isnull(params) && group[playerid][invited] != -1 ) || ( strval(params) == group[playerid][invited] && group[playerid][invited] != -1) ) return GroupJoin(playerid, group[playerid][invited]);
	if(isnull(params)) return SendClientMessage(playerid, 0xFF0000, "Usage: {FFFFFF}/groupjoin{FF0000} (groupid)");
	grid = strval(params);
	if(!groupinfo[grid][active]) return SendClientMessage(playerid, 0xFF0000, "The group you have tried to join doesn't exist!");
	group[playerid][attemptjoin] = grid;
	new string[125], pname[24];
	GetPlayerName(playerid, pname, 24);
	format(string, sizeof(string), "You have requested to join group %s(ID:%d)", groupinfo[grid][grname], grid);
	SendClientMessage(playerid, 0xFFCC66, string);
	format(string, sizeof(string), "{FFFFFF}%s(%d) {FFCC66}has requested to join your group. Type /groupinvite %d to accept", pname, playerid, playerid);
	SendMessageToLeader(grid, string);
	return 1;
}

COMMAND:groupkick(playerid, params[])
{
	if(group[playerid][order] != 1) return SendClientMessage(playerid, 0xFF0000, "You are not the leader of a group, you cannot kick!");
	new cid;
	if(isnull(params)) return SendClientMessage(playerid, 0xFF0000, "Usage: {FFFFFF}/Groupkick{FF0000} (playerid)");
	cid = strval(params);
	if(!IsPlayerConnected(cid)) return SendClientMessage(playerid, 0xFF0000, "Player Is not connected!");
	if(cid == playerid)  return SendClientMessage(playerid, 0xFF0000, "You cannot kick yourself, silly.");
	if(group[playerid][gid] != group[cid][gid]) return SendClientMessage(playerid, 0xFF0000, "Player Is not in your group!");
	LeaveGroup(cid, 1);
	return 1;
}

COMMAND:groupmessage(playerid, params[])
{
	if(group[playerid][gid] == -1) return SendClientMessage(playerid, 0xFF0000, "You are not in a group, you cannot group message!");
	if(isnull(params)) return SendClientMessage(playerid, 0xFF0000, "Usage: {FFFFFF}[GROUP]/gm{FF0000} [GROUP](message)");
	new pname[24], string[140+24];
	GetPlayerName(playerid, pname, 24);
	format(string, sizeof(string), "%s(%d): [Group]%s", pname, playerid, params);
	SendMessageToAllGroupMembers(group[playerid][gid], string);
	return 1;
}


COMMAND:grouplist(playerid, params[])
{
    if(isnull(params) && group[playerid][gid] == -1) return SendClientMessage(playerid, 0xFF0000, "Usage: {FFFFFF}/grouplist{FF0000} (group)");
	if(isnull(params))
	{
 		DisplayGroupMembers(group[playerid][gid], playerid);
   		return 1;
	}
 	new grid = strval(params);
  	if(!groupinfo[grid][active]) return SendClientMessage(playerid, 0xFF0000, "The group ID you have entered is not active!");
   	DisplayGroupMembers(grid, playerid);
	return 1;
}
What i can to do? i given u the codes
Reply
#2

Commands don't help, we need OnPlayerConnect and OnPlayerDisconnect codes.
Reply
#3

Код:
public OnPlayerConnect(playerid)
{
	group[playerid][gid] = -1;
	group[playerid][invited] = -1;
	group[playerid][attemptjoin] = -1;
	return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    LeaveGroup(playerid, 2);
	return 1;
}
take
Reply
#4

See you aren't saving them, how are you expecting them to save and load?
Reply
#5

i dont know ? i try to make it only how to i can save/load it ?
Reply
#6

Quote:
Originally Posted by RedRex
Посмотреть сообщение
i dont know ? i try to make it only how to i can save/load it ?
Excuse me, I dont understand your english.
Reply
#7

use a saving system INI SQLite or MySQL
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)