Jump to content
  • 0

Problema Factiuni


Question

Posted

Deci am o problema pentru mine grava.

Lucram la serverul de SA:MP si m-am gandit sa iau de pe un alt GM facut de autor v1 la v2 la  care lucram deoarece factiunile din v2 trebuie sa le fac cu /createfactions si sunt cam bugate. Cele din v1 merg perfect cu mici buguri care le rezolv.

Am vorbit cu unii scripteri care ma ajuta doar cu  $ [Mentalitate de roman]. Ei mi-au scos ca ma costa cam 7 eur ca e mult de lucru.

Va las comenzile si daca mai e ceva va mai las.

/factions V1

[pawn] if(strcmp(cmd, "/factions", true) == 0)

{

    new members_1, members_2, members_3;

        new members_4, members_5, members_6;

        new members_7, members_8, members_9;

        new members_10;

for(new i = 0; i < MAX_PLAYERS; i++)

{

switch(PlayerInfo[pMember])

{

    case 1: members_1++;

    case 2: members_2++;

    case 3: members_3++;

    case 4: members_4++;

    case 5: members_5++;

    case 6: members_6++;

    case 7: members_7++;

    case 8: members_8++;

    case 9: members_9++;

case 10: members_10++;

    }

}

//SendClientMessage(playerid, GREEN, "___________________________________________________");

if(FactionInfo[1][FactionType] != 6) format(string, sizeof(string), "Faction #1: %s | Owner: %s | Online Members: %d | Total Members: %d", FactionEmbed(1), FACTION1_OWNER, members_1, TOTAL_FACTION1_MEMBERS);

else format(string, sizeof(string), "Faction #1: %s | Owner: Classified | Online Members: ? | Total Members: ?", FACTION_1);

SendClientMessage(playerid, WHITE, string);

    if(FactionInfo[2][FactionType] != 6) format(string, sizeof(string), "Faction #2: %s | Owner: %s | Online Members: %d | Total Members: %d", FactionEmbed(2), FACTION2_OWNER, members_2, TOTAL_FACTION2_MEMBERS);

else format(string, sizeof(string), "Faction #2: %s | Owner: Classified | Online Members: ? | Total Members: ?", FACTION_2);

SendClientMessage(playerid, WHITE, string);

if(FactionInfo[3][FactionType] != 6) format(string, sizeof(string), "Faction #3: %s | Owner: %s | Online Members: %d | Total Members: %d", FactionEmbed(3), FACTION3_OWNER, members_3, TOTAL_FACTION3_MEMBERS);

else format(string, sizeof(string), "Faction #3: %s | Owner: Classified | Online Members: ? | Total Members: ?", FACTION_3);

SendClientMessage(playerid, WHITE, string);

if(FactionInfo[4][FactionType] != 6) format(string, sizeof(string), "Faction #4: %s | Owner: %s | Online Members: %d | Total Members: %d", FactionEmbed(4), FACTION4_OWNER, members_4, TOTAL_FACTION4_MEMBERS);

else format(string, sizeof(string), "Faction #4: %s | Owner: Classified | Online Members: ? | Total Members: ?", FACTION_4);

SendClientMessage(playerid, WHITE, string);

        if(FactionInfo[5][FactionType] != 6) format(string, sizeof(string), "Faction #5: %s | Owner: %s | Online Members: %d | Total Members: %d", FactionEmbed(5), FACTION5_OWNER, members_5, TOTAL_FACTION5_MEMBERS);

else format(string, sizeof(string), "Faction #5: %s | Owner: Classified | Online Members: ? | Total Members: ?", FACTION_5);

SendClientMessage(playerid, WHITE, string);

if(FactionInfo[6][FactionType] != 6) format(string, sizeof(string), "Faction #6: %s | Owner: %s | Online Members: %d | Total Members: %d", FactionEmbed(6), FACTION6_OWNER, members_6, TOTAL_FACTION6_MEMBERS);

else format(string, sizeof(string), "Faction #6: %s | Owner: Classified | Online Members: ? | Total Members: ?", FACTION_6);

SendClientMessage(playerid, WHITE, string);

if(FactionInfo[7][FactionType] != 6) format(string, sizeof(string), "Faction #7: %s | Owner: %s | Online Members: %d | Total Members: %d", FactionEmbed(7), FACTION7_OWNER, members_7, TOTAL_FACTION7_MEMBERS);

else format(string, sizeof(string), "Faction #7: %s | Owner: Classified | Online Members: ? | Total Members: ?", FACTION_7);

SendClientMessage(playerid, WHITE, string);

if(FactionInfo[8][FactionType] != 6) format(string, sizeof(string), "Faction #8: %s | Owner: %s | Online Members: %d | Total Members: %d", FactionEmbed(8), FACTION8_OWNER, members_8, TOTAL_FACTION8_MEMBERS);

else format(string, sizeof(string), "Faction #8: %s | Owner: Classified | Online Members: ? | Total Members: ?", FACTION_8);

SendClientMessage(playerid, WHITE, string);

if(FactionInfo[9][FactionType] != 6) format(string, sizeof(string), "Faction #9: %s | Owner: %s | Online Members: %d | Total Members: %d", FactionEmbed(9), FACTION9_OWNER, members_9, TOTAL_FACTION9_MEMBERS);

else format(string, sizeof(string), "Faction #9: %s | Owner: Classified | Online Members: ? | Total Members: ?", FACTION_9);

SendClientMessage(playerid, WHITE, string);

if(FactionInfo[10][FactionType] != 6) format(string, sizeof(string), "Faction #10: %s | Owner: %s | Online Members: %d | Total Members: %d", FactionEmbed(10), FACTION10_OWNER, members_10, TOTAL_FACTION10_MEMBERS);

else format(string, sizeof(string), "Faction #10: %s | Owner: Classified | Online Members: ? | Total Members: ?", FACTION_10);

SendClientMessage(playerid, WHITE, string);

    //SendClientMessage(playerid, GREEN, "___________________________________________________");

return 1;

}[/pawn]

Makeleader v1

[pawn] if(strcmp(cmd, "/makeleader", true) == 0)

{

    if(IsPlayerConnected(playerid))

    {

tmp = strtok(cmdtext, idx);

if(!strlen(tmp))

{

SyntaxMessage(playerid, "/makeleader [playerid/name] [number]");

return 1;

}

new para1;

para1 = ReturnUser(tmp);

if(IsPlayerNPC(para1)) return 1;

tmp = strtok(cmdtext, idx);

if(!strlen(tmp))

{

SyntaxMessage(playerid, "/makeleader [playerid/name] [number]");

return 1;

}

new faction;

faction = strval(tmp);

if(faction < 0 || faction > 10) { SendClientMessage(playerid, GREY, "Don't go below number 0, or above number 10."); return 1; }

if(PlayerInfo[playerid][pAdmin] >= 1337 || PlayerInfo[playerid][pFactionMod] > 0)

{

    if(IsPlayerConnected(para1))

    {

        if(para1 != INVALID_PLAYER_ID)

        {

            new ftext[100];

            GetPlayerName(playerid, sendername, sizeof(sendername));

            GetPlayerName(para1, giveplayer, sizeof(giveplayer));

if(faction == 0) { /*PlayerInfo[para1][pModel] = noobskin;*/ PlayerInfo[para1][pRank] = 0; ftext = "None"; MakeLeaderOf(para1, 0); }

else if(faction == 1) { /*PlayerInfo[para1][pModel] = 265;*/ PlayerInfo[para1][pRank] = 6; ftext = FACTION_1; MakeLeaderOf(para1, 1); }

else if(faction == 2) { /*PlayerInfo[para1][pModel] = 286;*/ PlayerInfo[para1][pRank] = 6; ftext = FACTION_2; MakeLeaderOf(para1, 2); }

else if(faction == 3) { /*PlayerInfo[para1][pModel] = 288;*/ PlayerInfo[para1][pRank] = 6; ftext = FACTION_3; MakeLeaderOf(para1, 3); }

else if(faction == 4) { /*PlayerInfo[para1][pModel] = 274;*/ PlayerInfo[para1][pRank] = 6; ftext = FACTION_4; MakeLeaderOf(para1, 4); }

else if(faction == 5) { /*PlayerInfo[para1][pModel] = 287;*/ PlayerInfo[para1][pRank] = 6; ftext = FACTION_5; MakeLeaderOf(para1, 5); }

else if(faction == 6) { /*PlayerInfo[para1][pModel] = 147;*/ PlayerInfo[para1][pRank] = 6; ftext = FACTION_6; MakeLeaderOf(para1, 6); }

else if(faction == 7) { /*PlayerInfo[para1][pModel] = 285;*/ PlayerInfo[para1][pRank] = 6; ftext = FACTION_7; MakeLeaderOf(para1, 7); }

else if(faction == 8) { /*PlayerInfo[para1][pModel] = 294;*/ PlayerInfo[para1][pRank] = 6; ftext = FACTION_8; MakeLeaderOf(para1, 8); }

else if(faction == 9) { /*PlayerInfo[para1][pModel] = 227;*/ PlayerInfo[para1][pRank] = 6; ftext = FACTION_9; MakeLeaderOf(para1, 9); }

else if(faction == 10) { /*PlayerInfo[para1][pModel] = 61;*/ PlayerInfo[para1][pRank] = 6; ftext = FACTION_10; MakeLeaderOf(para1, 10); }

format(string, sizeof(string), "* You have given %s leadership of the %s.", giveplayer,ftext);

SendClientMessage(playerid, LIGHTBLUE, string);

format(string, sizeof(string), "* %s has given you leadership of the %s.",sendername,ftext);

SendClientMessage(para1, LIGHTBLUE, string);

PlayerInfo[para1][pLeader] = faction;

PlayerInfo[para1][pMember] = faction;

PlayerInfo[para1][pDivision] = 0;

    //SetPlayerSkin(para1, PlayerInfo[para1][pModel]);

    SetPlayerToTeamColor(para1);

    OnPlayerSave(para1);

}

}

}

else

{

SendClientMessage(playerid, GREY, "    You are not authorized to use that command.");

}

}

return 1;

}[/pawn]

/factions V2

[pawn]

if(strcmp(cmd, "/factions", true) == 0)

{

    new members;

for (new i = 1; i < MAX_FACTIONS + 1; i ++)

    {

        if (!FactionInfo[FactionExists]) continue;

for (new j = 0; j < MAX_PLAYERS; j ++)

{

    if (!IsPlayerConnected(j)) continue;

    if (PlayerInfo[j][pMember] == i)

    {

        members++;

}

}

if (FactionInfo[FactionType] != 6) format(string, sizeof(string), "Faction #%d: %s | Owner: %s | Online Members: %d | Total Members: %d", i, FactionEmbed(i), FactionInfo[FactionLeader], members, FactionInfo[FactionMembers]);

else format(string, sizeof(string), "Faction #%d: %s | Owner: Classified | Online Members: ? | Total Members: ?", i, FactionInfo[FactionName]);

SendClientMessage(playerid, WHITE, string);

members = 0;

    }

return 1;

}[/pawn]

Createfaction [only v2]

[pawn] if (strcmp(cmd, "/createfaction", true) == 0)

{

    if(PlayerInfo[playerid][pAdmin] >= 1339 || PlayerInfo[playerid][pFactionMod])

{

    new name[64];

        tmp = strtok(cmdtext, idx);

    if(!strlen(tmp))

    {

      SyntaxMessage(playerid, "/createfaction [type] [name]");

      SendClientMessage(playerid, WHITE, "Available types: None[0], Law Enforcement[1], Agent[2], Army[3], Government[4], SWAT[5], Gov-Serv's Light Removal[6], News[7], Medic[8]");

            return 1;

            }

            new type = strval(tmp);

if (type < 0 || type > 8)

{

    SendClientMessage(playerid, GREY, "Invalid type ID.");

    return 1;

}

new factionid = -1;

for (new i = 1; i < MAX_FACTIONS + 1; i ++)

{

    if (!FactionInfo[FactionExists])

    {

        factionid = i;

        break;

    }

}

strmid(name, cmdtext, idx + 1, strlen(cmdtext));

            FactionInfo[factionid][FactionExists] = true;

format(FactionInfo[factionid][FactionName], 64, name);

format(FactionInfo[factionid][FactionLeader], 24, "None");

FactionInfo[factionid][FactionMembers] = 0;

FactionInfo[factionid][MaximumSkins] = 1;

FactionInfo[factionid][FactionSkins] = 0;

FactionInfo[factionid][FactionType] = type;

FactionInfo[factionid][FactionColor] = 0;

FactionInfo[factionid][FactionDivisions] = 0;

SaveFactions();

format(string, sizeof(string), "You have created a faction (ID: %d).", factionid);

SendClientMessage(playerid, YELLOW, string);

SendClientMessage(playerid, WHITE, "NOTE: Type /editfaction to edit this faction.");

return 1;

}

else

{

    SendClientMessage(playerid, GREY, "    You are not authorized to use this command.");

}

return 1;

}[/pawn]

/makeleader V2

[pawn] if(strcmp(cmd, "/makeleader", true) == 0)

{

    if(IsPlayerConnected(playerid))

    {

tmp = strtok(cmdtext, idx);

if(!strlen(tmp))

{

SyntaxMessage(playerid, "/makeleader [playerid/name] [number]");

return 1;

}

new para1;

para1 = ReturnUser(tmp);

if(IsPlayerNPC(para1)) return 1;

tmp = strtok(cmdtext, idx);

if(!strlen(tmp))

{

SyntaxMessage(playerid, "/makeleader [playerid/name] [number]");

return 1;

}

new faction;

faction = strval(tmp);

if(faction < 0 || faction > MAX_FACTIONS) { format(string, sizeof(string), "Faction ID can't be below 0 or above %d.", MAX_FACTIONS); SendClientMessage(playerid, GREY, string); return 1; }

if(faction != 0 && !FactionInfo[faction][FactionExists]) return SendClientMessage(playerid, GREY, "Invalid faction ID.");

if(PlayerInfo[playerid][pAdmin] >= 99999 || PlayerInfo[playerid][pFactionMod] > 0)

{

    if(IsPlayerConnected(para1))

    {

        if(para1 != INVALID_PLAYER_ID)

        {

            GetPlayerName(playerid, sendername, sizeof(sendername));

            GetPlayerName(para1, giveplayer, sizeof(giveplayer));

PlayerInfo[para1][pRank] = (faction) ? (6) : (0);

MakeLeaderOf(para1, faction);

format(string, sizeof(string), "WARNING :- You have given %s the leadership-badge of the %s orgnizaiton.", giveplayer,FactionInfo[faction][FactionName]);

SendClientMessage(playerid, LIGHTBLUE, string);

format(string, sizeof(string), "WARNING :- Adminstrator %s has given you the leadership-badge of the %s orgnization.",sendername,FactionInfo[faction][FactionName]);

SendClientMessage(para1, COLOR_LIGHTRED, string);

PlayerInfo[para1][pLeader] = faction;

PlayerInfo[para1][pMember] = faction;

PlayerInfo[para1][pDivision] = 0;

    SetPlayerToTeamColor(para1);

    OnPlayerSave(para1);

}

}

}

else

{

SendClientMessage(playerid, GREY, "    You are not authorized to use that command.");

}

}

return 1;

}[/pawn]

4 answers to this question

Recommended Posts

Posted

Normal sa ti se faca bug tu nu te uiti oleaca la comanda /factions V1 si comanda /makeleader V1 fata de cel de-al 2 lea.La al 2lea /makeleader poti sa iti dai leader la o singura factiune si anume Medici (factiunea 6)la fel si la factions.Iti apare numai Medicii la /factions.

 

 

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.