PDA

Просмотр полной версии : [Мануал] Простая система лидерки mxINI



gangzone.ini
03.03.2015, 11:47
В начало мода:



#define C_GROVE 0x009900AA
#define C_BALLAS 0xCC00FFAA
#define C_AZTECAS 0x00b4e1AA
#define C_VAGOS 0xffcd00AA
#define C_RIFA 0x6666ffAA


#define MAX_ORGANIZATION 5 //Максимальное количество фракций.

static const organization_name[MAX_ORGANIZATION][] =// название организаций
{"Grove Street", "The Ballas", "Varios Los Aztecas", "Los Santos Vagos", "The Rifa"};
static const organizaton_clist[MAX_ORGANIZATION] = //клисты организаций
{C_GROVE, C_BALLAS, C_AZTECAS, C_VAGOS, C_RIFA};


Добавим к PlayerInfo:


p_leader,
p_organization,
p_rang,


CreateAccount:


ini_setInteger(iniFile,"leader", p_info[playerid][p_leader]);
ini_setInteger(iniFile,"organization", p_info[playerid][p_organization]);
ini_setInteger(iniFile,"rang", p_info[playerid][p_rang]);


OnPlayerLogin:


ini_ïetInteger(iniFile,"leader", p_info[playerid][p_leader]);
ini_ïetInteger(iniFile,"organization", p_info[playerid][p_organization]);
ini_ïetInteger(iniFile,"rang", p_info[playerid][p_rang]);


SavePlayer:


ini_setInteger(iniFile,"leader", p_info[playerid][p_leader]);
ini_setInteger(iniFile,"organization", p_info[playerid][p_organization]);
ini_setInteger(iniFile,"rang", p_info[playerid][p_rang]);


К командам:


CMD:setleader(playerid, params[])
{
new
string[(27)+(18)];
if(sscanf(params, "ud", params[0], params[1])) return SendClientMessage(playerid, 0xAFAFAFAA, "Используйте: /setleader [id игрока] [id организации]");
format(string, sizeof(string), "Теперь Вы лидер фракции \"%s\"", organization_name[params[0]-1]);
SendClientMessage(params[0], 0xFFFF00AA, string);
p_info[params[0]][p_organization] = params[1];
p_info[params[0]][p_leader] = 1;
p_info[params[0]][p_rang] = 10;
SetPlayerColor((params[0], organizaton_clist[params[1]-1]);
return true;
}


Буду дополнять.

Mazzilla
03.03.2015, 14:02
Я бы GetOrgName массивом сделал:

new GetOrgName[][11] = { //Увеличиваем если название больше 11 симлов
"Отсутствует",
"Фракция №1",
"Фракция №2"
};
Использование:

GetOrgName[ PlayerInfo[params[0]][pLeader] ]