Wanted system

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
  • Ich suche ein wanted system womit ich bei dem gf mode die wanteds jedes spieler speichern lassen aknn ,sodass auch nach einem vermeindlichem Timeout die wanteds da sind.Aber ich habe schon überall gesucht und habe nix gefunden.Wie muss ich das anstellen.Ich hätte da sone idee das man das im scriptfile ordner speichert.

  • Ist doch ganz einfach.
    Genauso wie Scheine auch gespeichert werden. (pCarLic, etc. Ihr fügt einfach eine pWanteds Variable ein, die beim disconecten die Wanteds speichert und beim Conecten setzt.)

    ICQ Scripting - Support 495961653
    Montags-Freitags ab 15 Uhr

  • Nein ich hab es schon in meinem GF wunderbar hinbekommen.^^
    Also nun weitere Hinweise:
    Bei enum pInfo (Zeile ~880) zb pWanteds hinzufügen.
    Denn in pInfo wird unter den Scriptfiles eure Spielerdaten gespeichert.
    Warum denn ganz neue File erstellen wenn man es nicht einfach bei den Spielerdaten hinzufügen kann?


    Dann habt ihr noch was bei public OnPlayerDisconnect(playerid) und bei public OnPlayerSpawn(playerid) was zu tun :D.

    ICQ Scripting - Support 495961653
    Montags-Freitags ab 15 Uhr

  • wie hast du das denn gemacht hab überall pWanteds und so eingefügt nur das is ja nur für die datei, man muss ja auch iergendwie scripten, dass die wanteds da gespeichert werden. Wie mach ich das weil bei mir is jetzt zwar Wanteds=0 in der Player.ini aba da wird nix gespeichert

  • Nein ich hab es schon in meinem GF wunderbar hinbekommen.^^
    Also nun weitere Hinweise:
    Bei enum pInfo (Zeile ~880) zb pWanteds hinzufügen.
    Denn in pInfo wird unter den Scriptfiles eure Spielerdaten gespeichert.
    Warum denn ganz neue File erstellen wenn man es nicht einfach bei den Spielerdaten hinzufügen kann?


    Dann habt ihr noch was bei public OnPlayerDisconnect(playerid) und bei public OnPlayerSpawn(playerid) was zu tun :D.

    Och mann das solltet ihr doch selbst machen,


    @ OnPlayerDisconnect:
    new wanteds;
    wanteds = GetPlayerWantedLevel(playerid);
    PlayerInfo[playerid][pWantedLevels] = wanteds;


    @ OnPlayerSpawn
    SetPlayerWantedLevel(playerid, PlayerInfo[playerid][pWanteds];

    ICQ Scripting - Support 495961653
    Montags-Freitags ab 15 Uhr

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • hmm also schwierig ist das nicht^^


    du machst einfach eine variable dafür die dann in die datei geschrieben wird mit den jeweiligen wert der sterne also 1-6.
    weiß nicht wo da das problem liegt^^ außer vllt das zeit problem

    ________________________________________________________________________________
    Meine Scriptdingenserzeugnisse und hilfen xD:


    [TUT]Variablen [INC]YodasInc

  • Meine güte was seid ihr komisch.Alle meint ihr SAMP wird 0 Server haben und 0 Spieler kuckt euch nur VCMP an da spielen auch noch genug und außerdem wenn gtaIV genauso schlecht aufm pC is wie auf der PS3 dann werden nur sehr wenige gta 4 zocken

  • also mein Problem ist es, dass wenn ich neu connecte, dass bei mir die Sterne noch angezeigt werden, doch wenn ein cop dann /wanteds macht, werden sie ihm nicht angezeigt ! was machen ?


    Bei mir sieht das so aus:


    if(strcmp(cmd, "/wanted", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(IsACop(playerid))
    {
    new wanteds;
    wanteds = GetPlayerWantedLevel(playerid);
    PlayerInfo[playerid][pWanteds] = wanteds;
    new x;
    SendClientMessage(playerid, COLOR_GREEN, "Wanteds:");
    for(new i=0; i < MAX_PLAYERS; i++) {
    if(IsPlayerConnected(i))
    {
    if(WantedLevel[i] > 0)
    {
    GetPlayerName(i, giveplayer, sizeof(giveplayer));
    format(string, sizeof(string), "%s%s: %d", string,giveplayer,WantedLevel[i],wanteds);
    x++;
    if(x > 3) {
    SendClientMessage(playerid, COLOR_YELLOW, string);
    x = 0;
    format(string, sizeof(string), "");
    } else {
    format(string, sizeof(string), "%s, ", string);
    }
    }
    }
    }
    if(x <= 3 && x > 0) {
    string[strlen(string)-2] = '.';
    SendClientMessage(playerid, COLOR_YELLOW, string);
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist kein Beamte !");
    }
    }//not connected
    return 1;
    }
    public SetPlayerCriminal(playerid,declare,reason[])
    {//example: SetPlayerCriminal(playerid,255, "Stealing A Police Vehicle");
    if(IsPlayerConnected(playerid))
    {
    //SetPlayerWantedLevel(playerid, PlayerInfo[playerid][pWanteds]);
    PlayerInfo[playerid][pCrimes] += 1;
    new points = WantedPoints[playerid];
    new turned[MAX_PLAYER_NAME];
    new turner[MAX_PLAYER_NAME];
    new turnmes[128];
    new wantedmes[128];
    new wlevel;
    strmid(PlayerCrime[playerid][pAccusedof], reason, 0, strlen(reason), 255);
    GetPlayerName(playerid, turned, sizeof(turned));
    if (declare == 255)
    {
    format(turner, sizeof(turner), "Unbekannt");
    strmid(PlayerCrime[playerid][pVictim], turner, 0, strlen(turner), 255);
    }
    else
    {
    if(IsPlayerConnected(declare))
    {
    GetPlayerName(declare, turner, sizeof(turner));
    strmid(PlayerCrime[playerid][pVictim], turner, 0, strlen(turner), 255);
    strmid(PlayerCrime[declare][pBplayer], turned, 0, strlen(turned), 255);
    strmid(PlayerCrime[declare][pAccusing], reason, 0, strlen(reason), 255);
    }
    }
    format(turnmes, sizeof(turnmes), "Du hast ein Verbrechen begangen ( %s ). Reporter: %s.",reason,turner);
    SendClientMessage(playerid, COLOR_LIGHTRED, turnmes);
    if(points > 0)
    {
    new
    pt,
    yesno;
    if(points == 3) { if(WantedLevel[playerid] != 1) { WantedLevel[playerid] = 1; wlevel = 1; yesno = 1; } }
    else if(points >= 4 && points <= 5) { if(WantedLevel[playerid] != 2) { WantedLevel[playerid] = 2; wlevel = 2; yesno = 1; } }
    else if(points >= 6 && points <= 7) { if(WantedLevel[playerid] != 3) { WantedLevel[playerid] = 3; wlevel = 3; yesno = 1; } }
    else if(points >= 8 && points <= 9) { if(WantedLevel[playerid] != 4) { WantedLevel[playerid] = 4; wlevel = 4; yesno = 1; } }
    else if(points >= 10 && points <= 11) { if(WantedLevel[playerid] != 5) { WantedLevel[playerid] = 5; wlevel = 5; yesno = 1; } }
    else if(points >= 12 && points <= 13) { if(WantedLevel[playerid] != 6) { WantedLevel[playerid] = 6; wlevel = 6; yesno = 1; } }
    else if(points >= 14) { if(WantedLevel[playerid] != 10) { WantedLevel[playerid] = 10; wlevel = 10; yesno = 1; } }
    if(WantedLevel[playerid] >= 1) { if(gTeam[playerid] == 3) { gTeam[playerid] = 4; } }
    pt=WantedLevel[playerid];
    if(pt>6) pt=6;
    SetPlayerWantedLevel(playerid,pt);
    if(yesno)
    {
    format(wantedmes, sizeof(wantedmes), "Dein Wanted Level: %d", wlevel);
    SendClientMessage(playerid, COLOR_YELLOW, wantedmes);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(PlayerInfo[i][pMember] == 1||PlayerInfo[i][pLeader] == 1)
    {
    format(cbjstore, sizeof(turnmes), "Notrufzentrale: Anrufer: %s",turner);
    SendClientMessage(i, TEAM_BLUE_COLOR, cbjstore);
    format(cbjstore, sizeof(turnmes), "Notrufzentrale: Verbrechen: %s, Gesucht: %s",reason,turned);
    SendClientMessage(i, TEAM_BLUE_COLOR, cbjstore);
    }
    }
    }
    }
    }
    }//not connected
    }

  • hmm ok das mit dem wanteds speichern und anzeigen geht jetzt, allerdings wenn ich dann dem Spieler ein neues Wanted gebe, bleibt bei /wanted das alte stehen also das wo bei pWanteds gespeichert wurde. Wie mach ich das, dass diese file pWanteds sofort erneuert wird ?


    Das sieht im mom so aus da lädt er dann die wanteds von der user.ini file aber wenn ich neues wanted gebe wird immernoch das von userfile angezeigt


    WantedLevel[i] = PlayerInfo[playerid][pWanteds];
    if(WantedLevel[i] > 0)
    {
    GetPlayerName(i, giveplayer, sizeof(giveplayer));
    format(string, sizeof(string), "%s%s: %d", string,giveplayer,WantedLevel[i]);
    x++;
    if(x > 3) {
    SendClientMessage(playerid, COLOR_YELLOW, string);
    x = 0;
    format(string, sizeof(string), "");
    } else {
    format(string, sizeof(string), "%s, ", string);
    }
    }
    }
    }

  • hmm Ich weis net ich komm einfach net weiter bei mir is das total verbuggt ! wenn ich /clear mache löscht es alle wanteds ! wenn ich connecte hat jeder die gleiche anzahl an wanteds wie ich ! etc. etc. etc.


    Kann mir jetzt mal bitte einer helfen wie ich das mache??? Ich wäre demjenigen sooooo was von dankbar... weil ich jetzt schon ewig daran rumbastele ! An einem selber klappt das iergendwie nur nicht mit anderen spielern


    Hier mal meine ideen dazu:
    breadfish.de/wcf/attachment/177/

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen