Wanted -> Cop tötet ihn -> Knast

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
  • ja kommt drauf an wie deine variabeln lauten.... GF ZB
    if(PlayerInfo[killerid][pMember] == 1)
    {
    if(PlayerInfo[playerid][pWantedlevel] > 0)
    {
    Hier kannste ihn in knast stecken...
    SetPlayerPos(playerid....
    }
    }

  • ja dann musste schon sagen wie deine variabel lautet für Die Spieler Informationen... bzw PlayerInfo[playerid][pWantedLevel] ... ist gleich GetPlayerWantedLevel(playerid);

  • Naja mit deinen Erfahrungen würde ich sagen, du hast Selfmade runtergelanden und dann einfach editiert -.-´



    Wie oben schon gesagt, einfach KillerID abfragen dann die Wantedanzahl von dem Spieler und dann im Knast spawnen lassen mit InteriorID.




    lg


    pS

  • Hallo Keyboy,
    Du verstehst da was falsch.
    Fußboden will nicht wissen ob du ein Gf oder Selfmade hast.
    Sonder er will dein Variablen wissen die du Definiert hast.
    Er hat ja schon ein beispil vorgegeben. Ich selber weiß auch nicht wie man so ein Wanted dings bums scriptet.
    Daher kann ich dir auch nicht wirklich helfen. Fakt ist aber das Fußboden einer der Erfahresten hier ist also
    schau mal in dein Script wie deine Variablen heißen bzw Definiert sind und Poste sie. Ansonsten poste dein Script einfach mal bei Pastebin und stelle den Link mit in den Tread. Dann kann Fußboden nach den Variablen schaun. Denn wenn Fußboden die Variablen von dir nicht weiß kann er auch nicht Helfen so leit es ihm tut.


    Mfg


    Ps. Scrips Runderladen und weiter Scripten ist was für den Ar... egal ob es ein Selfmade ist oder ein Gf. Selber machen ist 1.) Schöner und 2.) Lernste dabei auch mehr.


    Klick meh !! du

  • was willst du mir mit dem text sagen?

    Gruß
    keyboy

    www.g4e-clan.de


    Kein (unbez.) Scripting-Support per PN | Dafür ist das Forum da.

  • Also das ist ganz einfach.



    OnPlayerDeath(playerid,killerid)
    {
    for(new i = 0; i < GetMaxPlayers(); i++)
    {
    if(killerid == Dann z.B. IstEinCop(i) && PlayerHatWanteds(playerid)) //IstEinCop(i) und PlayerHatWanteds(playerid) definieren bzw. ändern wie du es hast.
    {
    SetPlayerPos(....); //Koordinaten in Knast.
    PlayerImKnast[playerid] = 1; //Definieren
    //... Die Sachen die noch reinsollen...
    }
    }
    return 1;
    }


    Ist halt bei nem Selfmade anders :|

  • äm für was brauchst du da bitte ne schleife?


    die beiden variablen sind doch da das ist einmal playerid ( die id des gekillten)
    killerid (die id des mörders)


    das heißt
    public OnPlayerDeath(playerid,killerid)
    {
    if(killerid == "IsACop")
    {
    SetPlayerPos(playerid,X,Y,Z);
    SetPlayerInterior(playerid,intid);
    }
    }

  • Gaaanz einfach ich habs mir auch selbstgemacht (*hust* xD)


    forward Knastzeitstart1(playerid); // Wenn der Spieler 1 Wanted hat
    forward Knastzeitstart2(playerid); // Wenn der Spieler 2 Wanteds hat
    forward Knastzeitstart3(playerid); // Wenn der Spieler 3 Wanteds hat
    forward Knastzeitstart4(playerid); // Wenn der Spieler 4Wanteds hat
    forward Knastzeitstart5(playerid); // Wenn der Spieler 5 Wanteds hat
    forward Knastzeitstart6(playerid); // Wenn der Spieler 6 Wanteds hat
    forward Knastzeitende(playerid); // Wenn die Knastzeit zuende ist...


    Unter OnPlayerDeath:


    if(GetPlayerWantedLevel(playerid) == 1)
    {
    SetTimerEx("Knastzeitstart1", 1,false, "d", playerid);
    return 1;
    }
    if(GetPlayerWantedLevel(playerid) == 2)
    {
    SetTimerEx("Knastzeitstart2", 1,false, "d", playerid);
    return 1;
    }
    if(GetPlayerWantedLevel(playerid) == 3)
    {
    SetTimerEx("Knastzeitstart3", 1,false, "d", playerid);
    return 1;
    }
    if(GetPlayerWantedLevel(playerid) == 4)
    {
    SetTimerEx("Knastzeitstart4", 1,false, "d", playerid);
    return 1;
    }
    if(GetPlayerWantedLevel(playerid) == 5)
    {
    SetTimerEx("Knastzeitstart5", 1,false, "d", playerid);
    return 1;
    }
    if(GetPlayerWantedLevel(playerid) == 6)
    {
    SetTimerEx("Knastzeitstart6", 1,false, "d", playerid);
    return 1;
    }


    Und gaaanz unten die Publics:


    public Knastzeitstart1(playerid) //Der Timer für den Spieler
    {

    TogglePlayerControllable(playerid,0);
    GivePlayerHealth(playerid, 50);
    SetPlayerPos(playerid,264.4514,77.2993,1001.0391);
    SetPlayerInterior(playerid,6);
    ResetPlayerWeapons(playerid);
    SendClientMessage(playerid, COLOR_YELLOW, "Du wurdest für 60 Sekunden verhaftet!");
    SetTimerEx("Knastzeitende",60*1000, false, "d", playerid);
    new name[MAX_PLAYER_NAME], string[44];
    GetPlayerName(playerid, name, sizeof(name));
    format(string, sizeof(string), "%s wurde verhaftet!",name);
    SendClientMessageToAll(COLOR_RED, string);
    GivePlayerMoney(playerid, -150);
    if(SpielerInfo[playerid][Firma] == 1)
    {
    GivePlayerMoney(playerid, 50);
    return 1;
    }
    return 1;
    }



    public Knastzeitstart2(playerid) //Der Timer für den Spieler
    {


    TogglePlayerControllable(playerid,0);
    GivePlayerHealth(playerid, 50);
    SetPlayerPos(playerid,264.4514,77.2993,1001.0391);
    SetPlayerInterior(playerid,6);
    ResetPlayerWeapons(playerid);
    SendClientMessage(playerid, COLOR_YELLOW, "Du wurdest für 120 Sekunden verhaftet!");
    SetTimerEx("Knastzeitende",120*1000, false, "d", playerid);
    new name[MAX_PLAYER_NAME], string[44];
    GetPlayerName(playerid, name, sizeof(name));
    format(string, sizeof(string), "%s wurde verhaftet!",name);
    SendClientMessageToAll(COLOR_RED, string);
    GivePlayerMoney(playerid, -150);
    if(SpielerInfo[playerid][Firma] == 1)
    {
    GivePlayerMoney(playerid, 50);
    return 1;
    }
    return 1;
    }


    public Knastzeitstart3(playerid) //Der Timer für den Spieler
    {


    TogglePlayerControllable(playerid,0);
    GivePlayerHealth(playerid, 50);
    SetPlayerPos(playerid,264.4514,77.2993,1001.0391);
    SetPlayerInterior(playerid,6);
    ResetPlayerWeapons(playerid);
    SendClientMessage(playerid, COLOR_YELLOW, "Du wurdest für 180 Sekunden verhaftet!");
    SetTimerEx("Knastzeitende",180*1000, false, "d", playerid);
    new name[MAX_PLAYER_NAME], string[44];
    GetPlayerName(playerid, name, sizeof(name));
    format(string, sizeof(string), "%s wurde verhaftet!",name);
    SendClientMessageToAll(COLOR_RED, string);
    GivePlayerMoney(playerid, -150);
    if(SpielerInfo[playerid][Firma] == 1)
    {
    GivePlayerMoney(playerid, 50);
    return 1;
    }
    return 1;
    }


    public Knastzeitstart4(playerid) //Der Timer für den Spieler
    {


    TogglePlayerControllable(playerid,0);
    GivePlayerHealth(playerid, 50);
    SetPlayerPos(playerid,264.4514,77.2993,1001.0391);
    SetPlayerInterior(playerid,6);
    ResetPlayerWeapons(playerid);
    SendClientMessage(playerid, COLOR_YELLOW, "Du wurdest für 240 Sekunden verhaftet!");
    SetTimerEx("Knastzeitende",240*1000, false, "d", playerid);
    new name[MAX_PLAYER_NAME], string[44];
    GetPlayerName(playerid, name, sizeof(name));
    format(string, sizeof(string), "%s wurde verhaftet!",name);
    SendClientMessageToAll(COLOR_RED, string);
    GivePlayerMoney(playerid, -150);
    if(SpielerInfo[playerid][Firma] == 1)
    {
    GivePlayerMoney(playerid, 50);
    return 1;
    }
    return 1;
    }


    public Knastzeitstart5(playerid) //Der Timer für den Spieler
    {


    TogglePlayerControllable(playerid,0);
    GivePlayerHealth(playerid, 50);
    SetPlayerPos(playerid,264.4514,77.2993,1001.0391);
    SetPlayerInterior(playerid,6);
    ResetPlayerWeapons(playerid);
    SendClientMessage(playerid, COLOR_YELLOW, "Du wurdest für 300 Sekunden verhaftet!");
    SetTimerEx("Knastzeitende",300*1000, false, "d", playerid);
    new name[MAX_PLAYER_NAME], string[44];
    GetPlayerName(playerid, name, sizeof(name));
    format(string, sizeof(string), "%s wurde verhaftet!",name);
    SendClientMessageToAll(COLOR_RED, string);
    GivePlayerMoney(playerid, -150);
    if(SpielerInfo[playerid][Firma] == 1)
    {
    GivePlayerMoney(playerid, 50);
    return 1;
    }
    return 1;
    }



    public Knastzeitstart6(playerid) //Der Timer für den Spieler
    {


    TogglePlayerControllable(playerid,0);
    GivePlayerHealth(playerid, 50);
    SetPlayerPos(playerid,264.4514,77.2993,1001.0391);
    SetPlayerInterior(playerid,6);
    ResetPlayerWeapons(playerid);
    SendClientMessage(playerid, COLOR_YELLOW, "Du wurdest für 360 Sekunden verhaftet!");
    SetTimerEx("Knastzeitende1",360*1000, false, "d", playerid);
    new name[MAX_PLAYER_NAME], string[44];
    GetPlayerName(playerid, name, sizeof(name));
    format(string, sizeof(string), "%s wurde verhaftet!",name);
    SendClientMessageToAll(COLOR_RED, string);
    GivePlayerMoney(playerid, -150);
    if(SpielerInfo[playerid][Firma] == 1)
    {
    GivePlayerMoney(playerid, 50);
    return 1;
    }
    return 1;
    }


    public Knastzeitende(playerid) //Der Timer für den Spieler
    {
    new string[50];
    SetPlayerWantedLevel(playerid, 0);
    TogglePlayerControllable(playerid,1); //Entfreezed den Spieler
    SetPlayerPos(playerid,1552.4564,-1675.8525,16.1953);
    SetPlayerInterior(playerid, 0);
    format(string, sizeof(string), "~g~ Freiheit ~h~ Sei nun ein besserer Zivilist");
    GameTextForPlayer(playerid, string, 3000, 1);
    return 1;
    }


    Nur kommt der Spieler dann in den Knast wenn er stirbt... nicht nur wenn ihn ein Cop tötet.


    Ich hoffe du kannst das gebrauchen :P


    MfG;
    Honig.

  • Wie wäre es, wenn du es einfach so machst:
    SetTimer("Knastzeit",ZEIT,0);
    So ist es viel eichfacher, du musst nur ein Public erstellen.
    forward Knastzeit(playerid);
    if(GetPlayerWantedLevel(playerid) == 1)
    {
    SetTimer("Knastzeit",Zeit,0);
    return 1;
    }
    if(GetPlayerWantedLevel(playerid) == 2)
    {...

    public Knastzeit(playerid)
    {
    TogglePlayerControllable(playerid,0);
    GivePlayerHealth(playerid, 50);
    SetPlayerPos(playerid,264.4514,77.2993,1001.0391);
    SetPlayerInterior(playerid,6);
    ResetPlayerWeapons(playerid);
    SendClientMessage(playerid, COLOR_YELLOW, "Du wurdest für 60 Sekunden verhaftet!");
    new name[MAX_PLAYER_NAME], string[44];
    GetPlayerName(playerid, name, sizeof(name));
    format(string, sizeof(string), "%s wurde verhaftet!",name);
    SendClientMessageToAll(COLOR_RED, string);
    GivePlayerMoney(playerid, -150);
    if(SpielerInfo[playerid][Firma] == 1)
    {
    GivePlayerMoney(playerid, 50);
    return 1;// Dieses Return ist überflüssig!
    }
    return 1;
    }


    MfG Waoler

  • Nein. Du kannst ja mit if(GetPlayerWantedLevel(playerid) == 1)
    {
    SetTimer("Knastzeit",Zeit,0);
    return 1;
    }
    if(GetPlayerWantedLevel(playerid) == 2)
    {... Immer für alle Wanteds alles definieren. Wenn er 1 Wanted level hat usw.
    Bei Wanted1=SetTimer("Knastzeit",30000,0);
    bei 2=SetTimer("Knastzeit",60000,0);
    usw.
    Verstanden? Oder soll ich noch genauer erklären?


    MfG Waoler

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