mhm kann heut abend au nisg merh finden penn glei ein
Nützliche Codeschnipsel
- breadfish
- Geschlossen
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
-
-
okay trotzdem danke für deine Bemühungen
-
VehicleChat(playerid,text[])
playerid = Player ID des Spieler der den Text schreibt
text = Textnachricht die an die restlichen Leute im Fahrzeug gesendet werden soll.... Bezug auf den Thread : Klick
#define COLOR_RED 0xAA3333AA
#define COLOR_BLUE 0x0099FFAAstock VehicleChat(playerid,text[]) {
new
vid=GetPlayerVehicleID(playerid),
s[128],
ThePlayer[MAX_PLAYER_NAME];
GetPlayerName(playerid,ThePlayer,MAX_PLAYER_NAME);
format(s,sizeof(s),"[VehicleChat]%s: %s",ThePlayer,text);
if(vid!=0) {
for(new i,j=GetMaxPlayers();i<j;i++) {
if(GetPlayerVehicleID(i)==vid) {
SendClientMessage(i,COLOR_BLUE,s);
}
}
}
return 1;
}
/* Beispiel */
public OnPlayerCommandText(playerid, cmdtext[])
{
if(!strcmp(cmdtext,"/vchat",false,6)) {
if(!strlen(cmdtext[7])) return SendClientMessage(playerid,COLOR_RED,"You failed!");
return VehicleChat(playerid,cmdtext[7]);
}
return 0;
}Kann man das auch für nur ein Bestimmtes Fahrzeug machen? Ich bräuchte das nur für ein Kart, im NICHT Gf.
MfG, Black_Sun
-
Zu blöd es muss heissen:
#define COLOR_BLUE 0x0000FFFF -
joa ein cmd nur für rcon admins der dein fahrzeug heilt und gleichzeitgi flippt xD
public OnPlayerCommandText(playerid, cmdtext[])
{
if(!strcmp("/fix", cmdtext, true) && IsPlayerAdmin(playerid))
{
if(!IsPlayerAdmin(playerid))
{
SendClientMessage(playerid,COLOR_WHITE,"Du bist nicht eingeloggt als Rcon Admin!");
}
else
{
new veh;
veh = GetPlayerVehicleID(playerid);
SetVehicleHealth(veh,1000.0);
SetVehicleZAngle(veh, 270.0);
SendClientMessage(playerid, COLOR_WHITE, "Fahrzeug gefixt!");
}
return 1;
} -
Also, mit dem Command kannst du in den /afk Modus gehen, oder dein Auto /abschliessen.
Unter public OnVehicleSpawn(vehicleid) Dass einfügen:
SetVehicleParamsForPlayer(vehicleid,0,0); // Damit Spawnt das Fahrzeug wieder offen für alle.Unter public OnPlayerCommand(playerid, cmdtext []) dass einfügen:
if (strcmp(cmdtext, "/zu", true)==0 || strcmp(cmdtext, "/lock", true) == 0) //
{
if(IsPlayerInAnyVehicle(playerid))
{
new Statu ;
Statu=GetPlayerState(playerid);
new vehicleid = GetPlayerVehicleID(playerid);
if(Statu!=PLAYER_STATE_DRIVER)
{
SendClientMessage(playerid,COLOR_GREY,"Nur der Fahrer kann abschliessen!");
return 1;
}
new i;
for(i=0;i<MAX_PLAYERS;i++)
{
if(i != playerid)
{
SetVehicleParamsForPlayer(vehicleid,i, 0, 1);
}
}
new Float:X;
new Float:Y;
new Float:Z;
SendClientMessage(playerid, COLOR_GREEN, "Fahrzeug abgeschlossen");
GetPlayerPos(playerid,X,Y,Z);
PlayerPlaySound(playerid,1056,X,Y,Z);
}
else
{
SendClientMessage(playerid, COLOR_RED, "Du kannst nur in einem Auto ein Fahrzeug abschliessen!");
}
return 1;
}if (strcmp(cmdtext, "/auf", true) == 0 || strcmp(cmdtext, "/unlock", true) == 0)
{
if(IsPlayerInAnyVehicle(playerid))
{
new Status ;
Status = GetPlayerState(playerid);
new vehicleid = GetPlayerVehicleID(playerid);
if(Status!=PLAYER_STATE_DRIVER)
{
SendClientMessage(playerid,COLOR_RED,"Nur der Fahrer hat den Schluessel zum aufschliessen!");
return 1;
}
new i;
for(i=0;i<MAX_PLAYERS;i++)
{
SetVehicleParamsForPlayer(vehicleid,i, 0, 0);
}
SendClientMessage(playerid, COLOR_GREEN, "Fahrzeug aufgeschlossen");
new Float:X;
new Float:Y;
new Float:Z;
GetPlayerPos(playerid,X,Y,Z);
PlayerPlaySound(playerid,1057,X,Y,Z);
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Du bist in keinem Fahrzeug!");
}
return 1;
}
Mit /auf und /unlock kannste aufschliessen mit /zu und /lock abschliessen.Hy also ich hab deinen code befolgt aber die Autos bleiben dann nicht gespert O_o
Also wenn ich ein Auto abbschließe dann rausgehe und wieder rein will " geht es " aber es ist ja abgeschlossen , mein spieler soll nicht rein gehen können , es sei denn ich mach /auf und es funktioniert dann erst...
kann mir da einer bitte helfen?
Danke !
MFG
-
if(strcmp(cmdtext, "/language", true) == 0)
{
new variable[50];
variable = getstrspc(cmdtext, 1);
new sprache = strval(variable);
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
new eng[50],ger[50];if(!strlen(variable))
return SendClientMessage(playerid, COLOR_RED, "Usage: /language 1 for German else an other (ka zahl^^) for english man");
if(!IsNumeric(variable))
return SendClientMessage(playerid, COLOR_RED, "Usage: /language 1 for German else an other (ka zahl^^) for english man");
if(sprache==1)
{
format(ger, 50, "[GER]%s",name);
SetPlayerName(playerid,ger);
SendClientMessage(playerid, COLOR_WHITE, "Du hast die Deutsche Sprache gewählt");
}
else
{
format(eng, 50, "[ENG]%s",name);
SetPlayerName(playerid,eng);
SendClientMessage(playerid, COLOR_WHITE, "You choose the english language");
}
return 1;
}Hallo dies ist ein Befehl, mit dem man Seine Nationalität vor seinem Namen schreibt. Undzwar machst du /language 1 steht wird dein Name in [GER]DeinName geändert.
MFG Chriss -
Wenn du nun erstmal /language 1 eingibst, ist dein Name [GER]Name.
Wenn du danach /language 2 eingibst, ist dein Name [ENG][GER]Name.
So gehts nicht, Chriss -
Naja man(n) wechselt ja nicht eifnach so seine Nationalität oder?Also muss man den Befehl auch nur 1 mal eingeben (hab aber auch nciht dran gedacht ^^)
-
Und falls man so einen langen Namen wie Hans_Peter_Lustig hat, kannst du deine Userfiles in die Tonne werfen, vorrausgesetzt der Name wird dann in den Userfiles auch korrekt überschrieben.
-
-
Dieses Codeschnitzel ist recht simpel und sorgt nur dafür, dass man nicht etwas wie "7LOGIN mEINpw" macht, oder sonstiges mit einer 7 als erstes zeichen.
Man baut es einfach als erstes in OnPlayerText ein und es funktioniert.
if(text[0] == '7')
{
new string[128];
format(string,sizeof(string),"/%s",text[1]);
OnPlayerCommandText(playerid,string);
return 0;
}Wegen schlechter Einrückung noch Pastebin: Hier
MfG Maercell
-
Es geht noch einfacher:
if(text[0]=='7')
{
text[0]='/';
OnPlayerCommandText(playerid,text);
return 0;
} -
str_format(aEditString[], const aFormat[]) // (c) DMA
{
new lReturnValue[0x20][0x80], lPosition = 1, lMove, lAGet;
for(new i = 0x0; i < strlen(aEditString); i++)
{
if(aEditString[i] == aFormat[lAGet])
{
if(lPosition != 0x20)
{
lReturnValue[lPosition][lMove] = '\0';
lMove = 0x0;
++lPosition;
if(lAGet < (strlen(aFormat)-0x1))
{
lAGet++;
}
}
}
else
{
if(lMove < 0x80)
{
lReturnValue[lPosition][lMove] = aEditString[i];
lMove++;
}
}
}
lReturnValue[lPosition][lMove] = '\0';
lReturnValue[0x0][0x0] = lPosition;
return lReturnValue;
}
Informationen: Der Wiedergabewert ist ein 32x128 (0x20*0x80) großes Array.
Die erste Zelle von 0 (0x0) ist mit der größe der benutzten Zellen belegt. -
Funktioniert nur zuverlässig bist max 24 Slots!
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/settime", , true) == 0)
{
SetWorldTime(playerid);
return 1;
}
return 0;
} -
Was soll dass denn bitte bringen???
Wenn du ID 1 bist, wird die Zeit auf 1 gestellt, lol.. -
Funktioniert nur zuverlässig bist max 24 Slots!
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/settime", , true) == 0)
{
SetWorldTime(playerid);
return 1;
}
return 0;
}Schrott??
Und wieso sollte eine /settime Funktion nur bis 24 Slots funktionieren? oO
-
Best CMD of teh Year!
kkthxbai do ya th1ng br0
-
Best CMD of teh Year!
kkthxbai do ya th1ng br0
T1h5 cmd 15 1336 -
wie wäre es wenn ihr deutsch schreibt
-
Tz Tz Tz, DMA und Goldi, unsere beiden Forumspammer.
-