Also ich versuche zu scripten dacher frag ich mich würde das als megaphone gehen?
if (strcmp(cmdtext, "/m", true) == 0 || strcmp(cmdtext, "/m", true) == 0)SendClientMessage(playerid, ROT,"Stop Polizei");
Also ich versuche zu scripten dacher frag ich mich würde das als megaphone gehen?
if (strcmp(cmdtext, "/m", true) == 0 || strcmp(cmdtext, "/m", true) == 0)SendClientMessage(playerid, ROT,"Stop Polizei");
Warum probierst du es nicht aus?
Nein.
Erstmal ist das hier sinnlos, weil es 2 mal die gleiche Bedingung ist:
Desweiteren würde er die Nachricht nur an dich senden, also musst du das SendClientMessage entweder durch ein SendClientMessageToAll austauschen oder du prüfst erst mit einer Schleife, wer sich in einer bestimmten Distanz zu dir befindet und schickst es dann nur an welche, die zB. 300m oder näher von dir entfernt sind.
ok danke werde mal schaun will scripten lernen nun ja und das is denk ich mal das leichteste
Wenn du das Fertig hast kannste das hier dann pls Posten?
if(strcmp(cmd, "/right", true) == 0)
{
new rightid;
tmp = strtok(cmdtext, idx);
rightid= strval(tmp);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_ORANGE, "Benutzung: /right [Spieler-ID]");
return 1;
}
if(IsPlayerConnected(rightid) || rightid== playerid)
{
SendClientMessage(playerid, COLOR_ORANGE, "Fahren sie Rechts ran");
return 1;
}
SendClientMessage(rightid, 0xFF0000AA, "Fahren sie Rechts ran.");
return 1;
}
code by me
Du musst nur halt einen Radius bestimmen oder dass es als PN geschickt wird (wie bei Frankensteins Script)
Es wird ja nur an die playerid und rightid geschickt, also keine Probleme...
ich sehe auf den ersten Blick ,dass das nicht das ist was sie wollen du musst dit umändern musste so machen das man /m dein text hier an chat raduis im umkreis von 30 bla
if(strcmp(cmd, "/m", true) == 0)
{
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_GRAD2, "Benutzung: /m [Text] Für das Megaphone");
return 1;
}
format(string, sizeof(string), "%s (Megaphone): %s", sendername, result);
ProxDetector(60.0, playerid, string,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW);
printf("%s", string);
}
else
{
return 1;
}
So sollte das aussehen, dürfte gehen
Quelle vom Radius: Godfather
Stell mal stock ProxDetector(...); rein. Sonst kann er wohl nichts damit anfangen.
oh sry ganz vergessen^^
forward ProxDetector(Float:radi, playerid, string[],col1,col2,col3,col4,col5);
forward ProxDetectorS(Float:radi, playerid, targetid);
zu den anderen forwards, dann dürfte es klappen^^
ich habe errors
D:\Programme\Rockstar Games\GTA San Andreas\server\gamemodes\BlackGamemode.pwn(226) : warning 225: unreachable code
D:\Programme\Rockstar Games\GTA San Andreas\server\gamemodes\BlackGamemode.pwn(295) : error 017: undefined symbol "sendername"
D:\Programme\Rockstar Games\GTA San Andreas\server\gamemodes\BlackGamemode.pwn(295) : error 017: undefined symbol "sendername"
D:\Programme\Rockstar Games\GTA San Andreas\server\gamemodes\BlackGamemode.pwn(295) : error 029: invalid expression, assumed zero
D:\Programme\Rockstar Games\GTA San Andreas\server\gamemodes\BlackGamemode.pwn(295) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
Auschnitt
if(strcmp(cmd, "/m", true) == 0)
{
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
EDIT: NUR NOCH 4ERRORS
versuchs mal mit new sendername[MAX_PLAYER_NAME]; merk dir so eine variable mal für die zukunft, kann man immer mal wieder gebrauchen
geht immmer noch nicht
aber zu mindestens n error weniger müsste es sein
poste ma die jetztigen errors
habs oben aktuliesiert
??? sry wo hast du was aktualisiert???, etnweder ich bin blind oder du hast es nicht gespeichert
new sendername[32];
und dann
GetPlayerName(playerid,sendername,32);
das dürfte gehen