Schwer zu erklärender Fehler :P

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
  • Hallo Leute,
    ich möchte eig heute mein Script erweitern, doch ich habe ein mittelgroßes Problem :P
    Und zwar:
    Ich möchte, dass wenn ein Spieler, der in den LSPD Dresspoint geht,
    getestet wird, ob er Polizist ist.
    Wenn er es ist soll er gewisse Waffen bekommen,
    auf der Map unsichtbar sein usw usw...
    Nun , dass schaffe ich ja noch :P
    Aber wenn ich jetzt machen möchte, dass wenn er wieder in den Dresspoint geht, soll er wieder den Zivi Dress bekommen.
    Wie geht das?
    Ich hoffe das kann jemand...
    Ich habe es bisher so:
    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    if(pickupid == lspddress)
    {
    pInfo[playerid][dressed] = 0;
    if(gTeam[playerid] == Cops)
    {
    SetPlayerSkin(playerid,280);
    GivePlayerWeapon(playerid,3,9999);
    GivePlayerWeapon(playerid,24,9999);
    GivePlayerWeapon(playerid,28,9999);
    GivePlayerWeapon(playerid,31,9999);
    GivePlayerWeapon(playerid,17,9999);
    pInfo[playerid][dressed] = 1;
    ShowPlayerMarkers(0);
    SetPlayerColor(playerid,COLOR_BLUE);
    }
    else if(gLeader[playerid] == Cops)
    {
    SetPlayerSkin(playerid,288);
    GivePlayerWeapon(playerid,3,9999);
    GivePlayerWeapon(playerid,24,9999);
    GivePlayerWeapon(playerid,25,9999);
    GivePlayerWeapon(playerid,28,9999);
    GivePlayerWeapon(playerid,31,9999);
    GivePlayerWeapon(playerid,34,9999);
    GivePlayerWeapon(playerid,17,9999);
    GivePlayerWeapon(playerid,45,9999);
    pInfo[playerid][dressed] = 1;
    ShowPlayerMarkers(0);
    SetPlayerColor(playerid,COLOR_BLUE);
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du bist nicht in dieser Jobgruppe");
    }
    pInfo[playerid][dressed] = 1;
    ShowPlayerMarkers(1);
    SetPlayerSkin(playerid,185);
    ResetPlayerWeapons(playerid);
    }

    if(pickupid == medicdress)
    {
    pInfo[playerid][dressed] = 0;
    if(gTeam[playerid] == Medic)
    {
    SetPlayerSkin(playerid,275);
    pInfo[playerid][dressed] = 1;
    }
    else if(gLeader[playerid] == Medic)
    {
    SetPlayerSkin(playerid,274);
    pInfo[playerid][dressed] = 1;
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du bist nicht in der richtigen Jobgruppe.");
    }
    pInfo[playerid][dressed] = 1;
    SetPlayerSkin(playerid,185);
    }
    return 1;
    }
    Ich hoffe auf Hilfe, denn ich möchte, dass es endlich funktioniert :P
    MfG
    Maxx

  • new gPlayerOldSkin[MAX_PLAYERS];
    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    if(pickupid == lspddress)
    {
    pInfo[playerid][dressed] = 0;
    if(gTeam[playerid] == Cops)
    {
    gPlayerOldSkin[playerid] = GetPlayerSkin(playerid);
    SetPlayerSkin(playerid,280);
    GivePlayerWeapon(playerid,3,9999);
    GivePlayerWeapon(playerid,24,9999);
    GivePlayerWeapon(playerid,28,9999);
    GivePlayerWeapon(playerid,31,9999);
    GivePlayerWeapon(playerid,17,9999);
    pInfo[playerid][dressed] = 1;
    ShowPlayerMarkers(0);
    SetPlayerColor(playerid,COLOR_BLUE);
    }
    else if(gLeader[playerid] == Cops)
    {
    gPlayerOldSkin[playerid] = GetPlayerSkin(playerid);
    SetPlayerSkin(playerid,288);
    GivePlayerWeapon(playerid,3,9999);
    GivePlayerWeapon(playerid,24,9999);
    GivePlayerWeapon(playerid,25,9999);
    GivePlayerWeapon(playerid,28,9999);
    GivePlayerWeapon(playerid,31,9999);
    GivePlayerWeapon(playerid,34,9999);
    GivePlayerWeapon(playerid,17,9999);
    GivePlayerWeapon(playerid,45,9999);
    pInfo[playerid][dressed] = 1;
    ShowPlayerMarkers(0);
    SetPlayerColor(playerid,COLOR_BLUE);
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du bist nicht in dieser Jobgruppe");
    }
    pInfo[playerid][dressed] = 1;
    ShowPlayerMarkers(1);
    SetPlayerSkin(playerid,gPlayerOldSkin[playerid]);
    ResetPlayerWeapons(playerid);
    }


    if(pickupid == medicdress)
    {
    pInfo[playerid][dressed] = 0;
    if(gTeam[playerid] == Medic)
    {
    gPlayerOldSkin[playerid] = GetPlayerSkin(playerid);
    SetPlayerSkin(playerid,275);
    pInfo[playerid][dressed] = 1;
    }
    else if(gLeader[playerid] == Medic)
    {
    gPlayerOldSkin[playerid] = GetPlayerSkin(playerid);
    SetPlayerSkin(playerid,274);
    pInfo[playerid][dressed] = 1;
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du bist nicht in der richtigen Jobgruppe.");
    }
    pInfo[playerid][dressed] = 1;
    SetPlayerSkin(playerid,gPlayerOldSkin[playerid]);
    }
    return 1;
    }


    Nicht getestet, soltle aber funktionieren.

  • Nein. Die erste Variable (pDressed) gibt an ob der Spieler im Pickup war bzw. sich umgezogen hat. gPlayerOldSkin gibt die "alte" Skin ID an.

  • Sollte es. Habe mich gerade nicht allzu intensiv damit beschäftigt, aber es sollte so funktionieren.

  • Es funktioniert nicht.
    Ich werde nach dem ersten reingehen (wo ich kein Cop bin)
    zu CJ, d.h. Skin Id 0.
    Wenn ich dann Cop bin, bleibe ich CJ bekomme keine Waffen und nix.
    Ich knn es so oft wiederholen wie ich will.
    Bitte Bitte Helft mir weiter
    MfG
    Maxx

    Einmal editiert, zuletzt von Maxx ()