Nach Tot ein freier Spieler | YYL

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
  • Hi


    Hier kennen bestimmt viele das YYL Script.. soweit gefällt es mir sehr gut und bin am editieren aber es gibt da ein kleines Problem
    Die Spieler wenn die Wanteds haben und getötet werden (Von einem Cop) landen sie nicht in der Zelle sondern spawnen wieder..(Am Zivispawn oder halt in der Base wenn sie in eine Fraktion sind)
    Und die Wanteds werden auch nicht gecleart??


    Ich freue mich auf Positive Antworten und hoffe mir kann einer Helfen


    Hier die OnPlayerDeath Zeile/n


    public OnPlayerDeath(playerid, killerid, reason)
    {
    M_OnPlayerDeath(playerid,killerid,reason);
    new name[MAX_PLAYER_NAME];
    new Float:px,Float:py,Float:pz;
    Drug[playerid] = 0;
    InCargo[playerid] = 0; InLevi[playerid] = 0;
    BuyCloths[playerid] = 0;
    new vid = GetPlayerVehicleID(playerid);
    new i;
    PlayerInfo[playerid][pDeaths] += 1;

    new victimteam;
    new killerteam;

    victimteam = gTeam[playerid];
    killerteam = gTeam[killerid];

    if(WantedLevel[playerid] >= 1)
    {
    if(IsACop(playerid))
    {
    new time = WantedLevel[playerid];
    ResetPlayerWeapons(playerid);
    PlayerInfo[playerid][pJailTime] = time * 300;
    PlayerInfo[playerid][pJailed] = 1;
    PlayerInfo[playerid][pArrested] += 1;
    SetPlayerInterior(playerid, 3);
    SetPlayerPos(playerid,263.8054,77.0934,1001.0391);
    SetPlayerFree(playerid,playerid, "Verhaftet");
    WantedPoints[playerid] = 0;
    WantedLevel[playerid] = 0;
    ClearCrime(playerid);
    SetPlayerWantedLevel(playerid,0);
    WantLawyer[playerid] = 1;
    WantedLevel[playerid] = 0;
    SetPlayerWantedLevel(playerid, 0);
    return 1;
    }
    }


    if(victimteam >= 3 && WantedPoints[playerid] > 0 && killerteam == 2)
    {
    SetPlayerFree(playerid,killerid, "Gekillt");
    }
    if(killerid != INVALID_PLAYER_ID)
    {
    PlayerInfo[killerid][pKills] +=1;
    }
    if(IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    for(i=0;i<MAX_PLAYERS;i++)
    {
    SetVehicleParamsForPlayer(vid,i, 0, 0);
    lock[vid] = false;
    }
    return 1;
    }


    Nochmal: Ich benutze das YYL Script!

  • Die Abfrage muss dahin, wo er Spawnt. Sprich: Unter OnPlayerSpawn. Das mit den Wanteds -> SetPlayerWanteds(playerid,0);



  • Erstmal danke für die Antwort also ich check das irgendwie nicht :S
    Mein OnPlayerSpawn sieht so aus


    --->


    public OnPlayerSpawn(playerid)
    {
    SetPlayerSkin(playerid,PlayerInfo[playerid][pChar]);
    if(GetPlayerSkin(playerid) == 288)
    {
    if(PlayerInfo[playerid][pChar] == 288 || PlayerInfo[playerid][pChar] == 0)
    {
    SetPlayerSkin(playerid, PlayerInfo[playerid][pModel]);
    }
    else
    {
    SetPlayerSkin(playerid,PlayerInfo[playerid][pChar]);
    }
    }


  • Zitat

    ja wo genau? :D


    Wie gesagt ->



    Zitat

    Die Abfrage muss dahin, wo er Spawnt. Sprich: Unter OnPlayerSpawn.

  • Sty3r kann nix er ist selber ein Anfänger^^


    Du musst einfach public OnPlayerSpawn(playerid)


    Unter


    public OnPlayerDeathSpawn reintun (glaube ich)

  • Zitat

    Sty3r kann nix er ist selber ein Anfänger^^

    Ahja.. Spricht der Profi..
    *Wie Alt bist du nochmal? 12, echt? Oh..

    Zitat

    Du musst einfach public OnPlayerSpawn(playerid)


    Unter


    public OnPlayerDeathSpawn reintun (glaube ich)

    Das zu deinem ersten Beitrag... >.>


    b2t:


    Einfach deine Abfrage für den Knast Kram unter OnPlayerSpawn packen und fertig!


  • Einfach deine Abfrage für den Knast Kram unter OnPlayerSpawn packen und fertig!


    Oh man-.- du sagst es so einfach ich bin aber ein Anfänger!
    ...Naja egal frag ich halt jemand anderen ^^ ich dachte hier wird geholfen aber nein :)

  • fast jamal.. du musst die Abfrage unter einmal unter public OnPlayerConnect und unter OnPlayerDeath ... Begründung: Wenn er joint wird überprüft ob er wanteds hat. wenn ja gehts in den Knast, wen nein spawnt er normal und


    Wenn er gekillt wird wir auch überprüft ob er Wanteds hat ,wenn ja gehts in den Knast

    Mit freundlichen Grüßen
    Developer
    Go/Python Developer | ehm. Webdeveloper | Fachinformatiker Anwendungsentwicklung
    Arbeitet in einem cloudigen Umfeld bei einem der größten deutschen Rechenzentrumsbetreibern

  • Fail /:


    ->
    public OnPlayerSpawn(playerid)
    {
    if(PlayerInfo[playerid][pJailed] == 1)
    {
    //Deine Sachen
    }
    return 1;
    }

  • Ich habe es so gemacht bekomme 1 Error "Undefined Symbol SetPlayerWanted.. blablabal"


    public OnPlayerSpawn(playerid)
    {
    SetPlayerWanteds(playerid,0); // Das habe ich eingefügt wie Sty3r es meinte^^
    SetPlayerSkin(playerid,PlayerInfo[playerid][pChar]);
    if(GetPlayerSkin(playerid) == 288)
    {
    if(PlayerInfo[playerid][pChar] == 288 || PlayerInfo[playerid][pChar] == 0)
    {
    SetPlayerSkin(playerid, PlayerInfo[playerid][pModel]);
    }
    else
    {
    SetPlayerSkin(playerid,PlayerInfo[playerid][pChar]);
    }
    }



    //EDIT:


    Was meinst du den mit "Deine Sachen"?

  • Nur mit SetPlayerWanted() Ohne S


    //

    Zitat

    Was meinst du den mit "Deine Sachen"?


    Sprech ich hier gegen eine Wand? Da fügste deine Sachen ein, was passiert wenn er im Knast ist und Spawnt.

  • Immer noch^^


    C:\DOKUME~1\Besitzer\EIGENE~1\DOWNLO~1\SAMP03~1\GAMEMO~1\YVL.pwn(7013) : error 017: undefined symbol "SetPlayerWanted"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.



    //EDIT:



    Bei mir war es mit SetPlayerWantedLevel definiert^^ das Problem ist gelöst nun habe ich es so:


    public OnPlayerConnect(playerid)
    {
    SetPlayerWantedLevel(playerid,0); //Grad eben GEMACHT
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, name, sizeof(name));
    if(!strcmp(name,"TramFahrer2",true))
    {
    gPlayerLogged[playerid] = 1;
    SpawnPlayer(playerid);
    return 1;
    }
    if(IsPlayerNPC(playerid))
    {
    gPlayerLogged[playerid] = 1;
    SpawnPlayer(playerid);
    return 1;
    }



    Und einmal hier so


    public OnPlayerSpawn(playerid)
    {
    SetPlayerWantedLevel(playerid,0);
    SetPlayerSkin(playerid,PlayerInfo[playerid][pChar]);
    if(GetPlayerSkin(playerid) == 288)
    {
    if(PlayerInfo[playerid][pChar] == 288 || PlayerInfo[playerid][pChar] == 0)
    {
    SetPlayerSkin(playerid, PlayerInfo[playerid][pModel]);
    }
    else
    {
    SetPlayerSkin(playerid,PlayerInfo[playerid][pChar]);
    }
    }



    Passt das so?




    //EDIT:



    Muss ich auch noch unter OnPlayerDeath?
    Weil wenn er stirbt und Wanteds hat soll er doch Knast landen.. und seine Wanteds sollen weg gehen und nicht bleiben
    Also bis jetzt sieht das bei mir so aus unter OnPlayerDeaht


    public OnPlayerDeath(playerid, killerid, reason)
    {
    M_OnPlayerDeath(playerid,killerid,reason);
    new name[MAX_PLAYER_NAME];
    new Float:px,Float:py,Float:pz;
    Drug[playerid] = 0;
    InCargo[playerid] = 0; InLevi[playerid] = 0;
    BuyCloths[playerid] = 0;
    new vid = GetPlayerVehicleID(playerid);
    new i;
    PlayerInfo[playerid][pDeaths] += 1;

    new victimteam;
    new killerteam;

    victimteam = gTeam[playerid];
    killerteam = gTeam[killerid];

    if(WantedLevel[playerid] >= 1)
    {
    if(IsACop(playerid))
    {
    new time = WantedLevel[playerid];
    ResetPlayerWeapons(playerid);
    PlayerInfo[playerid][pJailTime] = time * 300;
    PlayerInfo[playerid][pJailed] = 1;
    PlayerInfo[playerid][pArrested] += 1;
    SetPlayerInterior(playerid, 3);
    SetPlayerPos(playerid,263.8054,77.0934,1001.0391);
    SetPlayerFree(playerid,playerid, "Verhaftet");
    WantedPoints[playerid] = 0;
    WantedLevel[playerid] = 0;
    ClearCrime(playerid);
    SetPlayerWantedLevel(playerid,0);
    WantLawyer[playerid] = 1;
    WantedLevel[playerid] = 0;
    SetPlayerWantedLevel(playerid, 0);
    return 1;
    }
    }


    Ich hoffe jemand kann mir helfen

    2 Mal editiert, zuletzt von Fabi_x3 ()

  • Es heißt nicht SetPlayerWanted sondenr
    SetPlayerWantedLevel(playerid,0);
    ----------------------
    ZU deinem Problem:


    Du fragst bei OnplayerDeath ob der gekillte (playerid) von einem Beamten gekillt wird (pMember o. pLeader) und der gekillt wanteds hat. Wenn ja fügste halt dort alles ein, was passieren soll,wenn nein soll er spawnen!
    Bei OnPlayerConnect fragst du ab ob er im Knast ist wenn ja steckst du ihn wieder in den Knast!!


    Ich schreib dir später den Code bzw. meld dich per PN ich geh jetzt duschen!

  • Du fragst bei OnplayerDeath ob der gekillte (playerid) von einem Beamten gekillt wird (pMember o. pLeader) und der gekillt wanteds hat. Wenn ja fügste halt dort alles ein, was passieren soll,wenn nein soll er spawnen!
    Bei OnPlayerConnect fragst du ab ob er im Knast ist wenn ja steckst du ihn wieder in den Knast!!


    Ja aber das Problem ist ja ich weiß nicht wie ich das ganze machen soll da ich dabei bin das Scripten zu lernen^^ ich bin sozusagen ein Anfänger :)

  • Du musst auch bei OnPlayerSpawn eine Variable angeben wo er Spawnen soll ob Knast oder wo anders etc.



    also so
    z.B.


    onplayerspawn....
    {
    if(lol)
    {
    Spawn KNAST.
    }
    else
    {
    andere spawns
    }
    return 1;
    }