[pwn]
if(strcomp(cmd, "/gang", true) == 1)
{ if (!IsPlayerRegistered(playerid))
{
SendPlayerFormattedText(playerid, lang_texts[6][3] , 0,COLOUR_RED);
return 1;
}
set(cmd,strcharsplit(text, idx,strchar(" ")));
if (strlen(cmd) == 0) return 0;
if(strcomp(cmd, "help", true) == 1)
{
SendPlayerScrollingText(playerid, lang_texts[6][4] );
SendPlayerScrollingText(playerid, lang_texts[6][5] );
SendPlayerScrollingText(playerid, lang_texts[6][6] );
SendPlayerScrollingText(playerid, lang_texts[6][7] );
SendPlayerScrollingText(playerid, lang_texts[6][8] );
SendPlayerScrollingText(playerid, lang_texts[6][9] );
return 1;
}
if(strcomp(cmd, "commands", true) == 1)
{
SendPlayerScrollingText(playerid, lang_texts[6][10] );
SendPlayerScrollingText(playerid, lang_texts[6][11] );
SendPlayerScrollingText(playerid, lang_texts[6][12] );
SendPlayerScrollingText(playerid, lang_texts[6][13] );
SendPlayerScrollingText(playerid, lang_texts[6][14] );
SendPlayerScrollingText(playerid, lang_texts[6][15] );
SendPlayerScrollingText(playerid, lang_texts[6][16] );
SendPlayerScrollingText(playerid, lang_texts[6][17] );
SendPlayerScrollingText(playerid, lang_texts[6][18] );
SendPlayerScrollingText(playerid, lang_texts[6][19] );
SendPlayerScrollingText(playerid, lang_texts[6][20] );
return 1;
}
if((strcomp(cmd, "colours", true) == 1) || (strcomp(cmd, "COLOURs", true) == 1))
{
SendPlayerFormattedText(playerid, lang_texts[6][22], 0,COLOUR_GREEN);
for (new i = 0;i<=COLOURS_SIZE;i++)
{
format(tempstring, sizeof(tempstring), lang_texts[6][23] ,GangColours[i][colour_name]);
SendPlayerFormattedText(playerid, tempstring, 0,GangColours[i][colour_code]);
}
return 1;
}
if((strcomp(cmd, "stats", true) == 1) || (strcomp(cmd, "stat", true) == 1) || (strcomp(cmd, "status", true) == 1))
{
if (PlayerGangid[playerid] == 0)
{
SendPlayerFormattedText(playerid, lang_texts[6][24] , 0,COLOUR_RED);
return 1;
}
new gangid = PlayerGangid[playerid];
format(tempstring, sizeof(tempstring), lang_texts[6][25] , Gangs[gangid][gang_name]);
SendPlayerFormattedText(playerid, tempstring, 0,Gangs[gangid][gang_colour]);
format(tempstring, sizeof(tempstring), lang_texts[6][26] , Gangs[gangid][gang_kills]);
SendPlayerFormattedText(playerid, tempstring, 0,COLOUR_MISC);
format(tempstring, sizeof(tempstring), lang_texts[6][27] , Gangs[gangid][gang_score]);
SendPlayerFormattedText(playerid, tempstring, 0,COLOUR_MISC);
format(tempstring, sizeof(tempstring), lang_texts[6][28] , GangOnlineCount(gangid));
SendPlayerFormattedText(playerid, tempstring, 0,COLOUR_MISC);
return 1;
}
if(strcomp(cmd, "members", true) == 1)
{
if (PlayerGangid[playerid] == 0)
{
SendPlayerFormattedText(playerid, lang_texts[6][29] , 0,COLOUR_RED);
return 1;
}
new gangid = PlayerGangid[playerid];
new status[10];
format(tempstring, sizeof(tempstring), lang_texts[6][30] , Gangs[gangid][gang_name]);
SendPlayerFormattedText(playerid, tempstring, 0,Gangs[gangid][gang_colour]);
for (new gangmember = 0;gangmember<MAX_GANG_SIZE;gangmember++)
{ // foreach member
new memberid = GangMembers[gangid][gangmember];
if (strlen(GangMemberInfo[memberid][member_name]) > 0)
{
if (GangMemberInfo[memberid][member_online])
{
set(status,"Online");
format(tempstring, sizeof(tempstring), lang_texts[6][31] , GangMemberInfo[memberid][member_name],status,GetPlayerLevel(GangMemberInfo[memberid][member_playerid]));
}
else
{
set(status,"Offline");
format(tempstring, sizeof(tempstring), lang_texts[6][32] , GangMemberInfo[memberid][member_name],status);
}
SendPlayerFormattedText(playerid, tempstring, 0,COLOUR_MISC);
}
}
return 1;
}
if(strcomp(cmd, "create", true) == 1)
{
if (PlayerGangid[playerid] != 0)
{
SendPlayerFormattedText(playerid, lang_texts[6][33] , 0,COLOUR_RED);
return 1;
}
if (oGetPlayerMoney(playerid) < GANG_CREATE_COST)
{
format(tempstring, sizeof(tempstring), lang_texts[6][34] , GANG_CREATE_COST);
SendPlayerFormattedText(playerid, tempstring, 0,COLOUR_RED);
return 1;
}
new gangname[MAX_STRING];
new colourname[MAX_NAME];
new gangcolour=255;
set(colourname,strcharsplit(text, idx,strchar(" ")));
if(!strlen(colourname))
{
SendPlayerFormattedText(playerid, lang_texts[6][35] , 0,COLOUR_RED);
SendPlayerFormattedText(playerid, lang_texts[6][36] , 0,COLOUR_RED);
return 1;
}
for (new colourid=0;colourid<COLOURS_SIZE;colourid++)
{
if (strcomp(colourname,GangColours[colourid][colour_name],true) == 1)
{
gangcolour = GangColours[colourid][colour_code];
}
}
if (gangcolour == 255)
{
SendPlayerFormattedText(playerid, lang_texts[6][37] , 0,COLOUR_RED);
SendPlayerFormattedText(playerid, lang_texts[6][38] , 0,COLOUR_RED);
return 1;
}
set(gangname,text);
strdel(gangname, 0, idx);
if (strlen(gangname) <3)
{
SendPlayerFormattedText(playerid, lang_texts[6][39] , 0,COLOUR_RED);
return 1;
}
if (strlen(gangname) >40)
{
SendPlayerFormattedText(playerid, lang_texts[6][40] , 0,COLOUR_RED);
return 1;
}
new tempname[MAX_STRING];
set(tempname,gangname);
if (!StringCharCheck(tempname))
{
SendPlayerFormattedText(playerid, lang_texts[6][41] , 0,COLOUR_RED);
return 1;
}
if (GangCreate(playerid,gangname,gangcolour) != 0)
{
oGivePlayerMoney(playerid,0-GANG_CREATE_COST,1);
SendPlayerFormattedText(playerid, lang_texts[6][42] , 0,COLOUR_GREEN);
new logstring[256];
format(logstring, sizeof (logstring), "player: %d: %s: created gang '%s' ",playerid,oGetPlayerName(playerid),gangname);
WriteLog(logstring);
}
else
{
SendPlayerFormattedText(playerid, lang_texts[6][43] , 0,COLOUR_RED);
}
return 1;
} // end create
if((strcomp(cmd, "accept", true) == 1) || (strcomp(cmd, "join", true) == 1))
{
if (PlayerGangid[playerid] != 0)
{
SendPlayerFormattedText(playerid, lang_texts[6][44] , 0,COLOUR_RED);
return 1;
}
if (GangInvite[playerid] == 0)
{
SendPlayerFormattedText(playerid, lang_texts[6][45] , 0,COLOUR_RED);
return 1;
}
new gangid = GangInvite[playerid];
if (GangOnlineCount(gangid) >= MAX_GANG_SIZE)
{
SendPlayerFormattedText(playerid, lang_texts[6][46] , 0,COLOUR_RED);
GangInvite[playerid] = 0;
return 1;
}
if (GangJoinMember(gangid,playerid) == 1)
{
format(tempstring, sizeof(tempstring), lang_texts[6][47] ,Gangs[gangid][gang_name]);
SendPlayerFormattedText(playerid, tempstring, 0,COLOUR_GANG);
format(tempstring, sizeof(tempstring), lang_texts[6][48] , oGetPlayerName(playerid));
SendGangMessage(gangid,tempstring,COLOUR_GANG);
new logstring[256];
format(logstring, sizeof (logstring), "player: %d: %s: have joined '%s' gang.",playerid,oGetPlayerName(playerid),Gangs[gangid][gang_name]);
WriteLog(logstring);
return 1;
}
else
{
format(tempstring, sizeof(tempstring), lang_texts[6][49] , Gangs[gangid][gang_name]);
SendPlayerFormattedText(playerid, tempstring, 0,COLOUR_RED);
return 1;
}
}
if (PlayerGangid[playerid] == 0)
{
SendPlayerFormattedText(playerid, lang_texts[6][50] , 0,COLOUR_RED);
return 1;
}
new gangid = PlayerGangid[playerid];
new leadermemberid = GangMembers[gangid][0];
if((strcomp(cmd, "quit", true) == 1) || (strcomp(cmd, "leave", true) == 1))
{
if (PlayerGangid[playerid] == 0)
{
SendPlayerFormattedText(playerid, lang_texts[6][51] , 0,COLOUR_RED);
return 1;
}
GangRemoveMember(gangid,oGetPlayerName(playerid));
return 1;
}
if(strcomp(cmd, "invite", true) == 1)
{
if (strcomp(GangMemberInfo[leadermemberid][member_name],oGetPlayerName(playerid),false) == 0)
{ // player is not leader of this gang
SendPlayerFormattedText(playerid, lang_texts[6][52] , 0,COLOUR_RED);
return 1;
}
new inviteid = INVALID_PLAYER_ID;
new inviteplayername[MAX_NAME];
set(inviteplayername,text);
strdel(inviteplayername, 0, idx);
if (!strlen(inviteplayername))
{
SendPlayerFormattedText(playerid, lang_texts[6][53] , 0,COLOUR_RED);
return 1;
}
for (new i = 0;i<MAX_PLAYERS;i++)
{
if (IsPlayerRegistered(i))
{
if (strcomp(oGetPlayerName(i),inviteplayername,true) == 1)
{
inviteid = i;
break;
}
}
}
if (inviteid == INVALID_PLAYER_ID)
{
SendPlayerFormattedText(playerid, lang_texts[6][54] , 0,COLOUR_RED);
return 1;
}
if (!IsPlayerRegistered(inviteid))
{
SendPlayerFormattedText(playerid, lang_texts[6][55] , 0,COLOUR_RED);
SendPlayerFormattedText(playerid, lang_texts[6][56] , 0,COLOUR_RED);
return 1;
}
if (PlayerGangid[inviteid] != 0)
{
SendPlayerFormattedText(playerid, lang_texts[6][57] , 0,COLOUR_RED);
return 1;
}
format(tempstring, sizeof(tempstring), lang_texts[6][58] , oGetPlayerName(playerid),Gangs[gangid][gang_name]);
SendPlayerFormattedText(inviteid, tempstring, 0,COLOUR_GANG);
format(tempstring, sizeof(tempstring), lang_texts[6][59] , oGetPlayerName(inviteid),Gangs[gangid][gang_name]);
SendPlayerFormattedText(playerid, tempstring, 0,COLOUR_GANG);
GangInvite[inviteid] = gangid;
new logstring[256];
format(logstring, sizeof (logstring), "player: %d: %s: has invited %s to join gang '%s'.",playerid,oGetPlayerName(playerid),oGetPlayerName(inviteid),Gangs[gangid][gang_name]);
WriteLog(logstring);
return 1;
}
if(strcomp(cmd, "kick", true) == 1)
{
if (strcomp(GangMemberInfo[leadermemberid][member_name],oGetPlayerName(playerid),false) == 0)
{
SendPlayerFormattedText(playerid, lang_texts[6][60] , 0,COLOUR_RED);
return 1;
}
new kickplayername[MAX_NAME];
set(kickplayername,text);
strdel(kickplayername, 0, idx);
if (!strlen(kickplayername))
{
SendPlayerFormattedText(playerid, lang_texts[6][61] , 0,COLOUR_RED);
return 1;
}
if (GangRemoveMember(gangid,kickplayername))
{
format(tempstring, sizeof(tempstring), lang_texts[6][62] , kickplayername);
SendPlayerFormattedText(playerid, tempstring, 0,COLOUR_GREEN);
}
else
{
format(tempstring, sizeof(tempstring), lang_texts[6][63] , kickplayername);
SendPlayerFormattedText(playerid, tempstring, 0,COLOUR_RED);
}
return 1;
}
if((strcomp(cmd, "colour", true) == 1) || (strcomp(cmd, "COLOUR", true) == 1))
{
if (strcomp(GangMemberInfo[leadermemberid][member_name],oGetPlayerName(playerid),false) == 0)
{
SendPlayerFormattedText(playerid, lang_texts[6][64] , 0,COLOUR_RED);
return 1;
}
if (oGetPlayerMoney(playerid) < GANG_COLOUR_COST)
{
SendPlayerFormattedText(playerid, lang_texts[6][65] , GANG_COLOUR_COST,COLOUR_RED);
return 1;
}
new colourname[MAX_NAME];
new gangcolour;
set(colourname,strcharsplit(text, idx,strchar(" ")));
if(!strlen(colourname))
{
SendPlayerFormattedText(playerid, lang_texts[6][66] , 0,COLOUR_RED);
return 1;
}
[/pwn]