Vergisst nicht , ich bin ein NOOB im scripten.
Soo , nach langer Zeit hab ich mir mal wieder vorgenommen was "leichtes" zu scripten.
Da ich mehreres geschafft habe , ist mir ein Cmd noch eingefallen... /me..
Ich wusste nicht wie ich es machen soll , deshalb wende ich mich nun an euch
Es sollte jeder benutzen können ( nicht AdminLvl1 oder so )
Farbe egal , alles egal hauptsache es funktioniert.
Ich danke schonmal im vorraus
mfG
/me [text]
- xWater
- 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
-
-
if(strcmp(cmd, "/me", true) == 0)
{
if(IsPlayerConnected(playerid))
{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, " /me [DeineAktion]");
return 1;
}
format(string, sizeof(string), "* %s %s", sendername, result);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
return 1;
} -
nimm dcmd dazu is besser und übersichtlicher meiner meinung nach
-
Und mit ZCMD gehts nochmals schneller:
COMMAND:me(playerid,params[])
{
if(isnull(params))
return SendClientMessage(playerid,0xff0000ff,"Anwendung: /me <Text>");
new string[128];
GetPlayerName(playerid,string,sizeof(string));
format(string,sizeof(string),"* %s %s",string,params);
SendClientMessageToAll(GetPlayerColor(playerid),string);
return 1;
}Hört doch mal auf mit DCMD, ZCMD ist um längen besser.
-
C:\Users\Berkan\Desktop\GTAServer\[q-uniT]Knight online\gamemodes\berkan.pwn(463) : error 017: undefined symbol "cmd"
C:\Users\Berkan\Desktop\GTAServer\[q-uniT]Knight online\gamemodes\berkan.pwn(468) : error 017: undefined symbol "sendername"
C:\Users\Berkan\Desktop\GTAServer\[q-uniT]Knight online\gamemodes\berkan.pwn(468) : error 017: undefined symbol "sendername"
C:\Users\Berkan\Desktop\GTAServer\[q-uniT]Knight online\gamemodes\berkan.pwn(468) : error 029: invalid expression, assumed zero
C:\Users\Berkan\Desktop\GTAServer\[q-uniT]Knight online\gamemodes\berkan.pwn(468) : fatal error 107: too many error messages on one lineCompilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
5 Errors.
463 = if(strcmp(cmd, "/me", true) == 0)
468 = GetPlayerName(playerid, sendername, sizeof(sendername));
bei 463 , kann es sein das es nicht "cmd" ist sondern "cmdtext" ?
//Edit : Das gehört zu das , was Deadwalker geschickt hat. -
if(!strcmp(cmdtext, "/me", true, 3)) // 3 is the length of /me
{
if(!cmdtext[3])return SendClientMessage(playerid, 0xFF0000FF, "USAGE: /me [aktion]");
new str[128];
GetPlayerName(playerid, str, sizeof(str));
format(str, sizeof(str), "* %s %s", str, cmdtext[4]);
SendMessageToPlayerInRange(playerid,20.0,lila, str);
return 1;
}
hier sollte funken -
ich bekomme ein error: Undefinded Symbol: SendMessageToPlayerInRange
-
breadfish.de
Hat das Thema geschlossen.