Markers Problem

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
  • Hey Leute,


    ich bin dabei ein /show /unshow System zu machen das problem ist
    ich möchte wenn man Connect da man keine Markers sieht
    Das habe ich erst so gemacht indem ich ShowPlayerMarkes(0); bei OnGameModeInit einfüge das probem ist dann geht /show nicht.
    ich bin langsam echt verwirrt ich hoffe ihr könnt mir helfen


    Spoiler anzeigen
    /show by Blitze (meine gingen i-wie nie richtig)
    if(strcmp(cmd, "/show", true,5) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    new str[70], pname[16]; GetPlayerName(playerid, pname, 16);
    if(!strlen(cmdtext[6]))
    {
    for(new i=0; i<=GetMaxPlayers(); i++)
    {
    if(IsPlayerConnected(i))
    {
    format(str, 70, " %s Ist nun für Alle Sichtbar",pname);
    SendClientMessage(i,COLOR_YELLOW,str);
    SetPlayerMarkerForPlayer(i,playerid,COLOR_ASKQ);
    }
    }
    }
    else
    {
    new id=strval(cmdtext[6]);
    if(IsPlayerConnected(id))
    {
    format(str, 70, " %s Ist nun für dich Sichtbar",pname);
    SendClientMessage(id,COLOR_YELLOW,str);
    SetPlayerMarkerForPlayer(id,playerid,COLOR_ASKQ);
    }
    }
    SetPlayerColor(playerid,COLOR_ASKQ);
    SendClientMessage(playerid, COLOR_ASKQ, "Du bist nun für alle Sichtbar!" );
    }
    return 1;
    }


    Spoiler anzeigen
    /unshow (meins :P)
    if(strcmp(cmd, "/us", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    new pname[256]; GetPlayerName(playerid, pname, 256);
    ShowPlayerMarkers(0);
    SetPlayerColor(playerid,COLOR_WHITE);
    SendClientMessage(playerid, COLOR_ASKQ, "Du bist nun nicht mehr auf der Karte sichtbar!");
    return 1;
    }
    return 1;
    }


    Ich hoffe ihr könnt mir helfen :)


    mfg Dedi

  • sollte eigentlich so sein laut code das man nur auf der karte ist wenn man /show macht dein problem versteh ich also nicht ganz

  • also mein Problem ist:


    Beim Connecten sind bereits marker auf der map bevor ich /show mache, die möchte ich weghaben, aber wenn ich sie mit

    ShowPlayerMarkers(0);
    bei
    public OnGameModeInit
    weggmache sind zwar die Markers bevor ich /show mache weg, aber es kommt auch keiner marker wenn ich /show mache
    jetzt verstanden?

  • stock togglePlayerMapIconVisibility(playerid,bool:visible)
    {
    SetPlayerColor(playerid, (GetPlayerColor(playerid) | 0xFF) - (visible ? 0x00 : 0xFF));
    }


    public OnPlayerSpawn(playerid))
    {
    togglePlayerMapIconVisibility(playerid,false);
    return 1;
    }


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if(!strcmp(cmdtext,"/show")) {
    togglePlayerMapIconVisibility(playerid, true);
    return 1;
    }
    if(!strcmp(cmdtext,"/hide")) {
    togglePlayerMapIconVisibility(playerid, false);
    return 1;
    }
    return 0;
    }



    Function togglePlayerMapIconVisibility by DracoBlue.

  • yuhuu es geht naja fast habe nur 1 Test durchgeführt aber bei /us habe ich ShowPlayerMarkers(0); vergessen aber toggel... drin gehabt naja wenn ich /us mache war die Person noch auf der map aber nicht in der Show farbe^^. Habe jetzt ShowPlayerMarkers(0); wieder drin und hoffe das es dann funktioniert


    thy
    mfg Dedi


    //edit nochmal getestet diesmal auch mit ShowPlayerMarkers(0); es geht tozdem wenn mach /us macht nicht weg dann ist man halt weiß auf der karte oO erst wenn man stirbt ist es weg
    //edit 2:
    gleich noch den neuen CMD rein :P
    if(strcmp(cmd, "/us", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    ShowPlayerMarkers(0);
    togglePlayerMapIconVisibility(playerid, false);
    SetPlayerColor(playerid,COLOR_WHITE);
    SendClientMessage(playerid, COLOR_ASKQ, "Du bist nun nicht mehr auf der Karte sichtbar!");
    return 1;
    }
    return 1;
    }



    2 Mal editiert, zuletzt von Tomi93 ()