26.07.2010, 19:08
Can someone help me make a Team Chat system.
Thanks
(Command /tc)
Thanks
(Command /tc)
forward SendTeamMessage(team, color, string[]);
new cmd[256];
new idx;
cmd = strtok(cmdtext, idx);
if(strcmp(cmd, "/teamchat", true) == 0 || strcmp(cmd, "/tc", true) == 0)
{
if(IsPlayerConnected(playerid))
{
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: (/t)eam©hat [message]");
return 1;
}
new team = gTeam[playerid];
new string[128];
format(string, sizeof(string), "[TEAM]: %s: %s", sendername, result);
SendTeamMessage(team, 0x7BDDA5AA, string);
printf("%s", string);
}
return 1;
}
public SendTeamMessage(team, color, string[])
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(gTeam[i] == team)
{
SendClientMessage(i, color, string);
}
}
}
}
strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
index++;
}
new offset = index;
new result[20];
while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
{
result[index - offset] = string[index];
index++;
}
result[index - offset] = EOS;
return result;
}
new cmd[256];
new idx;
cmd = strtok(cmdtext, idx);
public OnPlayerCommandText(playerid, cmdtext[])
{
new cmd[256];
new idx;
cmd = strtok(cmdtext, idx);
if(strcmp(cmd, "/teamchat", true) == 0 || strcmp(cmd, "/tc", true) == 0)
{
if(IsPlayerConnected(playerid))
{
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: (/t)eam©hat [message]");
return 1;
}
new team = gTeam[playerid];
new string[128];
format(string, sizeof(string), "[TEAM]: %s: %s", sendername, result);
SendTeamMessage(team, 0x7BDDA5AA, string);
printf("%s", string);
}
return 1;
}
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(277) : error 004: function "SetPlayerToTeamColor" is not implemented
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(375) : error 017: undefined symbol "strtok"
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(375) : error 033: array must be indexed (variable "cmd")
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(397) : error 017: undefined symbol "COLOR_WHITE"
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(398) : error 079: inconsistent return types (array & non-array)
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(403) : error 004: function "SendTeamMessage" is not implemented
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(406) : error 079: inconsistent return types (array & non-array)
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(409) : error 029: invalid expression, assumed zero
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(409) : error 004: function "SendTeamMessage" is not implemented
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(415) : error 017: undefined symbol "team"
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(417) : error 017: undefined symbol "color"
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(423) : error 029: invalid expression, assumed zero
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(423) : error 004: function "OnPlayerEnterVehicle" is not implemented
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(425) : error 079: inconsistent return types (array & non-array)
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(428) : warning 225: unreachable code
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(428) : error 029: invalid expression, assumed zero
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(428) : error 004: function "OnPlayerExitVehicle" is not implemented
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(430) : error 079: inconsistent return types (array & non-array)
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(433) : warning 225: unreachable code
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(433) : error 029: invalid expression, assumed zero
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(433) : error 004: function "OnPlayerStateChange" is not implemented
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(435) : error 079: inconsistent return types (array & non-array)
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(438) : warning 225: unreachable code
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(438) : error 029: invalid expression, assumed zero
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(438) : error 004: function "OnPlayerEnterCheckpoint" is not implemented
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(441) : error 079: inconsistent return types (array & non-array)
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(444) : warning 225: unreachable code
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(444) : error 029: invalid expression, assumed zero
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(444) : error 004: function "OnPlayerLeaveCheckpoint" is not implemented
C:\Users\Johnny\Desktop\Urban TDM\gamemodes\UTDM.pwn(446) : error 079: inconsistent return types (array & non-array)
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
26 Errors.
public OnPlayerCommandText(playerid, cmdtext[])
{
new cmd[256];
new idx;
cmd = strtok(cmdtext, idx);
if(strcmp(cmd, "/teamchat", true) == 0 || strcmp(cmd, "/tc", true) == 0)
{
if(IsPlayerConnected(playerid))
{
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: (/t)eam©hat [message]");
return 1;
}
new team = gTeam[playerid];
new string[128];
format(string, sizeof(string), "[TEAM]: %s: %s", sendername, result);
SendTeamMessage(team, 0x7BDDA5AA, string);
printf("%s", string);
}
return 1;
}
return 0;
}