OnGameModeInit
Da hab ich den radius auf 15 m gesetzt aber wie mache ich das da steht zb: Adri sagt: Hi
x sagt:
- mimpus
- Geschlossen
- Erledigt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
beschreibe dein Problem mal bitte genauer
-
Arbeite doch mit der Function Format. Das könnte dann ungefähr so aussehen.
new str[125];
format(str, sizeof(str), "%s sagt: %s", name, text);
Natürlich unter onplayertext und du musst den namen noch getten.//edit: Ungetestet.
//edit1:Fehler im ersten Edit. -
Unter OnPlayerText
new string[128];
format(string,128,"%s sagt: %s",SpielerName(playerid),text);
for(new i = 0;i<MAX_PLAYERS;i ++)
{
new Float:X,Float:Y,Float:Z;
GetPlayerPos(playerid,X,Y,Z);
if(IsPlayerInRangeOfPoint(i,15.0,X,Y,Z))
{
SendClientMessage(i,White,string);
return 0;
}
} -
aber mal voll falsch, erstenes ein return in der for-schleife, d.h. nur einer kriegt den text zu lesen, zweitens wird bei dir die methode getplayerpos 500 mal ausgeführt ... sinnlos oder ?
new string[128];
format(string,128,"%s sagt: %s",SpielerName(playerid),text);
new Float:X,Float:Y,Float:Z;
GetPlayerPos(playerid,X,Y,Z);
for(new i = 0;i<MAX_PLAYERS;i ++)
{
if(IsPlayerInRangeOfPoint(i,15.0,X,Y,Z))
{
SendClientMessage(i,White,string);
}
}
return 0; -
Wie wärs den noch ob Spieler i überhaupt connected ist?
-
Wie wärs den noch ob Spieler i überhaupt connected ist?
Da fällt mir noch ein. Und ob der Spieler ein NPC ist -
Da fällt mir noch ein. Und ob der Spieler ein NPC istokey, da ich selbst keine npcs nutze hab ichs vergessen
-
Und ob der Spieler ein NPC ist
Sinnlos, auf diese 1millisekunde kommt es auch nicht mehr anUnd so sollte der Code aussehen:
new string[128], Float:X,Float:Y,Float:Z;
format(string,128,"%s sagt: %s",SpielerName(playerid),text);
GetPlayerPos(playerid,X,Y,Z);
for(new i; i<MAX_PLAYERS; i++)
{
if(!IsPlayerConnected(i)) continue;
if(!IsPlayerInRangeOfPoint(i,15.0,X,Y,Z)) continue;
SendClientMessage(i,White,string);
}
return 0;mfg.
-
breadfish.de
Hat das Thema geschlossen.