Hallo.Undzwar hätte ich da eine Frage.Die hat zwar kaum was mit MadAd zu tun aber durch sein Script ist mir die Frage gekommen.Undzwar am Anfang bekommt ja jeder Spieler eine Farbe z.B. Violett.In dieser Farbe ist halt sein Name und seine Position auf der Karte (keine Ahnung ob es verschiedene Farben sind aber ich hatte nur 1Freund auf meinem Hamachi Testserver und der war halt lila^^) naja jetzt würde ich gerne wissen, wie ich das deaktivieren kann? Also wenn ich
public OnPlayerConnect(playerid)
SetPlayerColor(playerid,weiß);
machen würde, hätte es ja keinen Sinn, da die spieler noch weiß angezeigt werden.Gibt es irgendeine Farbe für unsichtbar oder irgendeinen Command mit dem man das deaktivieren kann?
Nochein Beispiel:
Ich gehe Adminduty, werde halt orange angezeigt.Wenn ich nun Adminduty verlasse möchte ich nicht mehr auf der Karte angezeigt werden.
THX im Vorraus Mr.Tadäus (ich weiß, dass es Thaddäus geschrieben wird :D)
MadAd
- MrTadäus
- Geschlossen
- Erledigt
-
-
public SetPlayerToTeamColor(playerid)
Gibt es das in deinem Script?
-
Nope
-
meinst du die marker auf der karte?
-
Jo meint er.
Das wie bei einem DM script alle Markiert sind -
teil meines aduty befehls
dcmd_aduty
{
SetPlayerColor(playerid,COLOR_ORANGE);
}
Nun möchte ich das wieder rückgängig machen, sodass mein Name wieder weiß ist und ich nicht mehr auf der Karte sichtbar bin. -
Also wenn du den command umbauen willst das du weiss bleibst
nimm SetPlayerColor weg
und schau mal ob in den aduty was von maker / makers steht SetPlayerMaker ca. so ?
wenn ja poste mal
Mfg. Qini
-
Ich möchte, dass mein Name weiß angezeigt wir und ich auf der karte nicht mehr sichtbar bin, wenn ich /stopaduty eingebe.
//EDIT: Warst du nich ma bei [SOUL] ???
-
Schikk mall den /stopduty command mache es dir so dass du nicht mehr angezeigt wirst und weiss bist
[SOUL] Wehr Spielt da alles ? kenne ich so nicht.
-
öhh wenn du weiß angezeigt werden willst, mach an der stelle an der es passieren soll
SetPlayerColor(playerid,0xFFFFFFFF);ich weiß wie alle marker auf der karte deakivieren werden, aber nicht wie ein einzelner deaktiviert wird
-
-
Mach
ShowPlayerMarkers(0);
Dann sieht man die Marker nicht mehr.
-
Werd ma auf nen Freund warten und schauen obs geklappt hat.Danke =)
-
Mach
ShowPlayerMarkers(0);
Dann sieht man die Marker nicht mehr.
ich glaube dann werden alle Marker deaktiviert.. ich dachte es soll nur ein Marker von einem einzigstem Spieler deaktivieren
-
Am Anfang sollen alle marker deaktiviert werden.Nur wenn man /aduty eingibt, nachdem man schon aduty war (alsoa duty verlasse) soll nur die Markierung von demjenigen gelöscht werden.Also ,dass er nicht mehr angezeigt wird.
Und jetztz nocheine frage.Wie mache ich nun, dass wenn man in aduty reingeht, dass man wieder auf der karte markiert wird? -
Du musst an der richtigen Stelle im Script, also wo du es haben willst:
SetPlayerColor(playerid,0xFFFFFF00); // unsichtbar (weiß)
eingeben und für sichtbar:
SetPlayerColor(playerid,0xFFFFFFFF); // sichtbar (weiß)Das Prinzip ist ganz einfach, jede Farbe setzt sich aus folgendem Code zusammen: 0x + Farb-HEX-Code + Transparenz in HEX-Code
Farb-HEX-Codes findet man in Google und die Transparenz ist100% bei 00 und 0% bei FF. Das ganze wird unter Alpha-Values auf der Seite http://wiki.sa-mp.com/wiki/Colors_List schön erklärt.
Ob du jetzt alle Spieler oder nur einen bestimmten Spieler unsichtbar machen oder sichtbar machen willst ist egal, du musst nur wissen wo du den Befehl einfügst und ob du ihn in einer Schleife verbauen musst, weil du zum Beispiel alle Spieler unsichtbar/sichtbar machen willst oder nicht weil du nur einen Spieler veränderst, musst du selbst wissen.
-
Also so?
Onplayerconnect
SetPlayerColor(playerid,0xFFFFFF00); // unsichtbar (weiß)
Da ja jeder mit einer Farbe z.B. Orange,Lila spawnt
und dann beim /adutydcmd_aduty(playerid,params[] )
{
#pragma unused params
if(aduty[playerid] == 0)
{
new Name[MAX_PLAYER_NAME];
new string[128];
GetPlayerName(playerid,Name,sizeof(Name));
format(string,sizeof(string),"Admin %s befindet sich nun im Adminduty!",Name);
SendClientMessageToAll(GELB,string);
SetPlayerHealth(playerid, 10000);
SetPlayerArmour(playerid, 10000);
SetPlayerColor(playerid, 0xFF8C00FF); // Sichtbar Orange
new Float:x,Float:y,Float:z;
format(string,256,"Admin");
aduty[playerid] = 1;
return 1;
}
else if(aduty[playerid] == 1) //Wenn er den Befehl eingibt und die Variable diesmal auf True/1 ist weil man den Befehl schonmal eingegeben hat
{
new Name[MAX_PLAYER_NAME];
new string[128];
GetPlayerName(playerid,Name,sizeof(Name));
format(string,sizeof(string),"Admin %s befindet sich nun nicht mehr im Adminduty!",Name);
SendClientMessageToAll(GELB,string);
SetPlayerHealth(playerid, 100);
SetPlayerArmour(playerid, 0);
SetPlayerColor(playerid, 0xFFFFFF00); // Unsichtbar Weiß
aduty[playerid] = 0;
}return 1;
} -
breadfish.de
Hat das Thema geschlossen.