Jetzt wirds spam.
In seinem ersten Post verwendet er SendClientMessage so denke ich das es nicht für alle Spieler auf dem Server sichtbar sein soll.
Und ein Fehler ist es gewiss nicht!
Jetzt wirds spam.
In seinem ersten Post verwendet er SendClientMessage so denke ich das es nicht für alle Spieler auf dem Server sichtbar sein soll.
Und ein Fehler ist es gewiss nicht!
Stell sicher, das du den ocmd Befehl unter keinem Public stehen hast.
Params werden nicht gebraucht, dann kannst du unter den Befehl auch noch #pragma unused params schreiben.
Alles anzeigen[quote='*GHOSTRIDER*','index.php?page=Thread&postID=1557424#post1557424']ocmd:mduty(playerid,params[])
{
if(!isPlayerInFrakt(playerid,2)) return SendClientMessage(playerid,Rot,"Nur Beamte des Rettungsdienstes dürfen das.");
if(!IsPlayerInRangeofPoint(playerid,X,Y,Z(Pickup Koordinaten)) return SendClientMessage(playerid,Rot,"Du stehst nicht am /Mduty Punkt.");
SetPlayerSkin(playerid,276);
SendClientMessage(playerid,Gelb,"Medical %s befüllt seinen Medickoffer, und geht in den Dienst");
return 1;
}[/quote]
Falsch!
{
if(!isPlayerInFrakt(playerid,2)) return SendClientMessage(playerid,Rot,"Nur Beamte des Rettungsdienstes dürfen das.");
if(!IsPlayerInRangeofPoint(playerid,X,Y,Z(Pickup Koordinaten)) return SendClientMessage(playerid,Rot,"Du stehst nicht am /Mduty Punkt.");
SetPlayerSkin(playerid,276);
new str[128];//definen des strings
format(str,sizeof(str)," %s befüllt ... und geht ... in den dienst",PlayerName(playerid));//formatieren des string mit dem namen 'str'
SendClientMessageToAll(-1,str);//string 'str' wird an alle Spieler gesendet[/quote]
Deins ist auch nicht besser da du nicht playername definiert hast also hier noch mal das komplette.
ocmd:mduty(playerid,params[])
{
new name[30], string[125];
GetPlayerName(playerid,name,sizeof(name));
if(!isPlayerInFrakt(playerid,2)) return SendClientMessage(playerid,Rot,"Nur Beamte des Rettungsdienstes dürfen das.");
if(!IsPlayerInRangeofPoint(playerid,Reichweite,X,Y,Z)) return SendClientMessage(playerid,Rot,"Du stehst nicht am /Mduty Punkt.");
SetPlayerSkin(playerid,276);
format(string,sizeof(string),"Medical %s befüllt seinen Medickoffer, und geht in den Dienst",name);
SendClientMessage(playerid, Gelb, string);
return 1;
}
Oh Cmon
Das mit dem formatieren habe ich oben schon geschrieben gehabt sodass ich nun auf seine Frage einging.
//Edit
Poste mal deine Zeile mit den ersetzten Koordinaten in IsPlayerInRangeOfPoint.
ocmd:mduty(playerid,params[])
{
if(!isPlayerInFrakt(playerid,2)) return SendClientMessage(playerid,Rot,"Nur Beamte des Rettungsdienstes dürfen das.");
if(!IsPlayerInRangeofPoint(playerid,Reichweite,X,Y,Z(Pickup Koordinaten)) return SendClientMessage(playerid,Rot,"Du stehst nicht am /Mduty Punkt.");
SetPlayerSkin(playerid,276);
SendClientMessage(playerid,Gelb,"Medical %s befüllt seinen Medickoffer, und geht in den Dienst");
return 1;
}
SendClientMessage(playerid,Gelb,"Medical %s befüllt seinen Medickoffer, und geht in den Dienst");
Ich meine diese Zeile.
Das müsste so aussehen.
new name[30], string[125];
GetPlayerName(playerid,name,sizeof(name));
format(string,sizeof(string),"Medical %s befüllt seinen Medickoffer, und geht in den Dienst",name);
SendClientMessage(playerid, Gelb, string);
mfg
Alles anzeigenNabend,
habe gerade versucht, einen /mduty Befehl zu machen, das man einen bestimmten Skin bekommt, und dann angezeigt bekommt
das man Onduty ist.
So den gewählten Skin erhält man auch, aber die meldung kommt nicht. So nun meine warnung beim compilen ...
C:\Users\Jennifer\Desktop\GTA SESAMT\Jennys Server\gamemodes\jennysalfmade.pwn(107) : warning 204: symbol is assigned a value that is never used: "mduty"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
1 Warning.
new mduty; //Medic DutyPunkt
mduty=CreatePickup(1275,1,31.3661,-181.5880,1404.8177);
ocmd:mduty(playerid,params[])
{
if(!isPlayerInFrakt(playerid,2)) return SendClientMessage(playerid,Rot,"Nur Beamte des Rettungsdienstes dürfen das.");
SetPlayerSkin(playerid,276);
SendClientMessage(playerid,Gelb,"Medical %s befüllt seinen Medickoffer, und geht in den Dienst");
return 1;
}
Du musst den Text auch formatieren, so geht das nicht.
Am besten postest du die Zeile in der sich der Error befindet oder gibst mit magische Kräfte mit denen ich durch den Bildschirm auf dein Script zugreifen kann um die Error Zeile zu orten.
Servus Leute,
bei einem Teamabfrage von
Account[playerid][Team] == 2
wie kann ich unter OnPlayerDeath gescheit abfragen das nach einer standart schleife(max_player) & der abfrage
man Funktionen für das jeweilige Team erstellt?
Ich kann Funktionen ja nur für killerid oder playerid schreiben, aber wie man ich es für ein Team?
Wie binde ich Account[playerid[i nach der Schleife]] in eine eigene Schleife an sprich das die Schleife das ganze Team durch läuft?
Auf welche Sprach Kenntnisse basiert das Filterscript sprich woher weiß man das es zu 100% korrekt übersetzt wird wenn es nicht mal der google translator schafft?
Kannst mich per PM deine TV Daten hinterlassen, dann mache ich es dir dann habe ich auch die direkten Variablen.
if(strcmp("/aduty",cmdtext,true)==0)
{
if(IsPlayerAnAdmin(playerid,1)||GetPVarInt(playerid,"FM")==1)
{
new sName[MAX_PLAYER_NAME];
GetPlayerName(playerid,sName,sizeof(sName));
if(adminduty[playerid]==1)
{
adminduty[playerid]=0;
//new string[128];
format(string,sizeof(string),"%s hat den Admindienst beendet.",SpielerName(playerid));
SendClientMessageToAll(COLOR_GREEN,string);
willangezeigtwerden[playerid]=0;
TextDrawHideForPlayer(playerid,aduty);
SetPlayerHealth(playerid, 100);
SetPlayerArmour(playerid, 100);
new string[50]
format(string,sizeof(string),"%s",sName);
SetPlayerName(playerid,string);
//changeMasked(playerid);
if(duty[playerid]==1){SetPlayerSkin(playerid,SpielerInfo[playerid][dutyskin]);}else{SetPlayerSkin(playerid,SpielerInfo[playerid][Skin]);}
return 1;
}
else if(adminduty[playerid]==0)
{
adminduty[playerid]=1;
//new string[128];
format(string,sizeof(string),"%s hat den Admindienst begonnen.",SpielerName(playerid));
SendClientMessageToAll(COLOR_GREEN,string);
willangezeigtwerden[playerid]=1;
TextDrawShowForPlayer(playerid,aduty);
//changeMasked(playerid);
SetPlayerSkin(playerid,164);
new string2[50];
format(string2,sizeof(string2),"[ADTUY]%s",sName);
SetPlayerName(playerid,string2);
SetPlayerHealth(playerid, 500);
SetPlayerArmour(playerid, 100);
SetPlayerColor(playerid,Rot);
return 1;
}
return 1;
}
return 1;
}
Man könnte es über OnPlayerUpdate abfragen.
OnPlayerUpdate stoppt wenn der Spieler sich nicht im Spiel befindet.
//Edit
Sprich du arbeitest mit einem Timer, einer Variable und Abfragen.
mfg
Alles anzeigenÖhm, 2,(is der Range von dem Point) 1208.0734 = x -918.2900 = y und 43.0589 = z z.B.
Aber das ding ist, wenn ich das versuche, und es funktioniert ist ja immernoch nicht das DonateRank problem gelöst oder?
//edit .. Das andere mit der - koordinate als erstes, also der letzte range of point ist in SF am Bahnhof ... Der fängt nunmal mit - an ... warum auch immer ... SF ist offensichtlich was sehr negatives *smile
Tut mir leid, mein Fehler ich hab mich verlesen.
Das mit dem Donate kannst du einfach dazu machen.
if(SpielerInfo[playerid][pDonateRank] == 0)
{
if(!IsPlayerInRangeOfPoint(playerid,2,1208.0734,-918.2900,43.0589) || !IsPlayerInRangeOfPoint(playerid,2,1505.0288,-1698.5586,14.0469) || !IsPlayerInRangeOfPoint(playerid,2,-1981.5076,130.0961,27.6875) return SendClientMessage(playerid, COLOR_RED,"Du bist an keinem /ad Punkt");
{
//Aktion
}
}
else if(SpielerInfo[playerid][pDonateRank] == 1)
{
//Aktion
}
Dann geh mit einer forschleife durch alle team2 Spieler durch die in der Nähe bei killerd [Team1] dabei waren.
Probier das mal.
if(!IsPlayerInRangeOfPoint(playerid,2,1208.0734,-918.2900,43.0589) || !IsPlayerInRangeOfPoint(playerid,2,1505.0288,-1698.5586,14.0469) || !IsPlayerInRangeOfPoint(playerid,2,-1981.5076,130.0961,27.6875) return SendClientMessage(playerid, COLOR_RED,"Du bist an keinem /ad Punkt");
{
//Aktion
}
//Edit
Bist du auch sicher das
2,-1981.5076,130.0961,27.6875
die X,Y,Z Werte sind? Sieht mir eher danach aus das du den Skin mit geaddet hast und Z weg gelassen hast.
mfg
SendClientMessageToAll(-1,string);
Gebe mal für -1 eine Farbe an.
ROT,GELB however
//
Kommt da nicht auch ein return 1 hin?
Alles klar, danke für eure Erleuchtung ihr Erleuchter.
Dennoch würde ich es suchen und entfernen .
Und warum sollte man es machen wenn es nicht verwendet wird? Den Sinn dahinter verstehe ich jetzt nicht so ganz.
Entweder vollenden oder löschen.
mfg
- Gangzonen http://wiki.sa-mp.com/wiki/GangZoneCreate(Gangzone Creater)
- Bei betritt einer anderen Fraktions/Gang starten lassen.(Wie man die Gangzone zum blinken bringt weiß ich jetzt nicht genau)
- Funktionen nach Wunsch einbauen.
- Abfragen starten wer wen tötet.
Mehr ist da nicht.
/e1