-
Az lenne gond az alábbi kóddal, hogy ha teamchatbe irunk(mindegy melyikbe), akkor kiírja teamchatbe is meg simán is.
MessageToOr(playerid,color,const string[])
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i)) if(GetPlayerSkin(playerid) == 285) SendClientMessage(i, color, string);
}
return 1;
}
MessageToRab(playerid,color,const string[])
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i)) if(GetPlayerSkin(playerid) == 181) SendClientMessage(i, color, string);
}
return 1;
}
public OnPlayerText(playerid, text[])
{
new estr[128];
format( estr , 128 , \"[%i]: %s\" , playerid , text );
SendPlayerMessageToAll( playerid , estr );
SetPlayerChatBubble(playerid, text, 0xFF00EEAA, 80.0, 9000);
//team-chat
if(text[0] == \'+\')
{
new str[128];
new pName[MAX_PLAYER_NAME];
GetPlayerName(playerid,pName,sizeof(pName));
format(str, sizeof(str),\"[Õr Team-Chat] %s: %s\", pName, text[1]);
MessageToOr(playerid,0x33FF33AA,str);
return 0;
}
if(text[0] == \'!\')
{
new str[128];
new pName[MAX_PLAYER_NAME];
GetPlayerName(playerid,pName,sizeof(pName));
format(str, sizeof(str),\"[Rab Team-Chat] %s: %s\", pName, text[1]);
MessageToRab(playerid,0x33FF33AA,str);
return 0;
}
return 0;
}
-
OnPlayerText callback-nál
return 0;
-
OnPlayerText callback-nál
return 0;
0 van, ha 1-re átírom mûködik, de akkor ha sima chat-be írok amit mindenki lát, megduplázza a szöveget(kétszer jeleníti meg).
-
Az egész OnPlayerText részt másold be.
-
Az egész OnPlayerText részt másold be.
Itt az egész, de elõbb is az egészet írtam.
public OnPlayerText(playerid, text[])
{
new estr[128];
format( estr , 128 , \"[%i]: %s\" , playerid , text );
SendPlayerMessageToAll( playerid , estr );
SetPlayerChatBubble(playerid, text, 0xFF00EEAA, 80.0, 9000);
//team-chat
if(text[0] == \'+\')
{
new str[128];
new pName[MAX_PLAYER_NAME];
GetPlayerName(playerid,pName,sizeof(pName));
format(str, sizeof(str),\"[Õr Team-Chat] %s: %s\", pName, text[1]);
MessageToOr(playerid,0x33FF33AA,str);
return 0;
}
if(text[0] == \'!\')
{
new str[128];
new pName[MAX_PLAYER_NAME];
GetPlayerName(playerid,pName,sizeof(pName));
format(str, sizeof(str),\"[Rab Team-Chat] %s: %s\", pName, text[1]);
MessageToRab(playerid,0x33FF33AA,str);
return 0;
}
return 0;
}
-
logikus,elôbb zajlódik le a norm. chat,azt rakd utoljára,mivel ìgy feleslegeden tèr vissza a teamchat.
(telorol voltam)
-
public OnPlayerText(playerid, text[])
{
//team-chat
if(text[0] == \'+\')
{
new str[128];
new pName[MAX_PLAYER_NAME];
GetPlayerName(playerid,pName,sizeof(pName));
format(str, sizeof(str),\"[Õr Team-Chat] %s: %s\", pName, text[1]);
MessageToOr(playerid,0x33FF33AA,str);
return 0;
}
if(text[0] == \'!\')
{
new str[128];
new pName[MAX_PLAYER_NAME];
GetPlayerName(playerid,pName,sizeof(pName));
format(str, sizeof(str),\"[Rab Team-Chat] %s: %s\", pName, text[1]);
MessageToRab(playerid,0x33FF33AA,str);
return 0;
}
new estr[128];
format( estr , 128 , \"[%i]: %s\" , playerid , text );
SendPlayerMessageToAll( playerid , estr );
SetPlayerChatBubble(playerid, text, 0xFF00EEAA, 80.0, 9000);
return 0;
}
-
public OnPlayerText(playerid, text[])
{
//team-chat
if(text[0] == \'+\')
{
new str[128];
new pName[MAX_PLAYER_NAME];
GetPlayerName(playerid,pName,sizeof(pName));
format(str, sizeof(str),\"[Õr Team-Chat] %s: %s\", pName, text[1]);
MessageToOr(playerid,0x33FF33AA,str);
return 0;
}
if(text[0] == \'!\')
{
new str[128];
new pName[MAX_PLAYER_NAME];
GetPlayerName(playerid,pName,sizeof(pName));
format(str, sizeof(str),\"[Rab Team-Chat] %s: %s\", pName, text[1]);
MessageToRab(playerid,0x33FF33AA,str);
return 0;
}
new estr[128];
format( estr , 128 , \"[%i]: %s\" , playerid , text );
SendPlayerMessageToAll( playerid , estr );
SetPlayerChatBubble(playerid, text, 0xFF00EEAA, 80.0, 9000);
return 0;
}
Most nem írja ki duplán. Viszont kiírja simába is hogy \"![szöveg]\" és teamchat-be is, így rossz.
-
public OnPlayerText(playerid, text[])
{
//team-chat
if(text[0] == \'+\')
{
new str[128];
new pName[MAX_PLAYER_NAME];
GetPlayerName(playerid,pName,sizeof(pName));
format(str, sizeof(str),\"[Õr Team-Chat] %s: %s\", pName, text[1]);
MessageToOr(playerid,0x33FF33AA,str);
return 1;
}
if(text[0] == \'!\')
{
new str[128];
new pName[MAX_PLAYER_NAME];
GetPlayerName(playerid,pName,sizeof(pName));
format(str, sizeof(str),\"[Rab Team-Chat] %s: %s\", pName, text[1]);
MessageToRab(playerid,0x33FF33AA,str);
return 1;
}
new estr[128];
format( estr , 128 , \"[%i]: %s\" , playerid , text );
SendPlayerMessageToAll( playerid , estr );
SetPlayerChatBubble(playerid, text, 0xFF00EEAA, 80.0, 9000);
return 0;
}
-
Az a probléma, hogy amikor írunk teamchat-be, pl. õr ír egyet, azt látja a rab és a sima player is(aki se rab se õr). És a rabok is látják az õrét.. hibás az egész magyarván. Mi lehet a hiba? Itt a teljes kód:
MessageToOr(playerid,color,const string[])
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i)) if(GetPlayerSkin(playerid) == 285) SendClientMessage(i, color, string);
}
return 1;
}
MessageToRab(playerid,color,const string[])
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i)) if(GetPlayerSkin(playerid) == 181) SendClientMessage(i, color, string);
}
return 1;
}
public OnPlayerText(playerid, text[])
{
//===teamchat====
if(text[0] == \'+\')
{
new str[128];
new pName[MAX_PLAYER_NAME];
GetPlayerName(playerid,pName,sizeof(pName));
format(str, sizeof(str),\"[Õr Team-Chat] %s: %s\", pName, text[1]);
MessageToOr(playerid,0x33FF33AA,str);
return 0;
}
if(text[0] == \'!\')
{
new str[128];
new pName[MAX_PLAYER_NAME];
GetPlayerName(playerid,pName,sizeof(pName));
format(str, sizeof(str),\"[Rab Team-Chat] %s: %s\", pName, text[1]);
MessageToRab(playerid,0x33FF33AA,str);
return 0;
}
new estr[128];
format( estr , 128 , \"[%i]: %s\" , playerid , text );
SendPlayerMessageToAll( playerid , estr );
SetPlayerChatBubble(playerid, text, 0xFF00EEAA, 80.0, 9000);
return 0;
}
-
SendClientMessageToAll(playerid, Szín ,str);
-
SendClientMessageToAll(playerid, Szín ,str);
mínúszeeeeegybazdmeg
-
Playerid paramètert töröld ès GetPlayerSkin(i)
(telorol voltam)
-
Így megyen nézzd meg?
public OnPlayerText(playerid, text[])
{
new estr[128];
format( estr , 128 , \"[%i]: %s\" , playerid , text );
SendPlayerMessageToAll( playerid , estr );
SetPlayerChatBubble(playerid, text, 0xFF00EEAA, 80.0, 9000);
//team-chat
if(text[0] == \'+\')
{
new str[128];
new pName[MAX_PLAYER_NAME];
GetPlayerName(playerid,pName,sizeof(pName));
format(str, sizeof(str),\"[Õr Team-Chat] %s: %s\", pName, text[1]);
MessageToOr(playerid,0x33FF33AA,str);
return 1;
}
if(text[0] == \'!\')
{
new str[128];
new pName[MAX_PLAYER_NAME];
GetPlayerName(playerid,pName,sizeof(pName));
format(str, sizeof(str),\"[Rab Team-Chat] %s: %s\", pName, text[1]);
MessageToRab(playerid,0x33FF33AA,str);
return 1;
}
return 0;
}
-
Te suri.. elolvastad hogy milyen témába írsz? Team chat. A team chat az a csapat chat, ha pl. van két csapat és mindkettõnek külön chat, amit csak az adott csapaton belûl látnak. Nem sendclientmessagetoall, mert azt MINDENKI látja. Mielõtt írsz nézd meg hogy mirõl van szó..
A probléma megoldódott kadaram, köszi, ment a + .