Bots Töten für Mission! [HILFE]

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
  • Guten Tag!
    Ich habe mir gerade so im Kopf überlegt ob es möglich wäre das man einen Bot zb mit einer Waffe Töten könnte!
    Ich Arbeite ja gerade an einen Selfmade Script und möchte so ein paar Missionen zwischen durch!
    Diese Mission ist für den Waffenschein damit man einen Waffenschein bekommt.!
    Also Ich habe es mir so gedacht im Walt soll ein kettensägen Mörder sein umwesen treiben!
    Damit du deinen Waffenschein bekommst musst du los und ihn suchen mach ein Foro von ihne!
    Und dann erschieße ihn wenn er Tod ist Mach ein Foto von ihn!
    Und Komm zurück zur Stadthalle!


    Halt das ich den Bot abballern kann damit diese Mission mehr Spaß macht
    wenn sowas gehen solle Sagt mir Please Wie danke

  • Downloade dir die Include 'OnPlayerShootPlayer' und mache das z.B. so:


    blabla OnPlayerShootPlayer blabla
    if(IsPlayerNPC(targetid)) {
    // Was passiert, wenn der Spieler einen NPC anschiesst
    }
    blabla


    Müsste THEORETISCH klappen, da OPSP (OnPlayerShootPlayer) so arbeitet, dass das aufgerufen wird, wenn der Spieler auf jemanden zielt und "KEY_FIRE" drückt (mein ich zumindest, einfach mal googeln :/)


  • Warum diese Include?


    Samp hat doch ein Callback dafür - OnPlayerGiveDamage

    Aber die arbeitet doch ganz anders bzw. ist nicht "kompatibel" mit Bots, oder?

  • ist nicht "kompatibel" mit Bots, oder?


    Ist mir nicht bekannt.
    OnPlayerTakeDamage arbeitet anders, das stimmt,
    aber Bots sind ja auch Spieler, auch wenn sie vom "Computer" gesteuert werden,
    deswegen sehe ich keinen Grund das es nicht funktionieren sollte

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • Okay Danke erstmal leute!
    Ich werde mal versuchen was ich so hinbekomme


    edit! Bekomme es iwie net hin Please kann mir jemand da helfen! weiß nicht wie ich anfangen / aufhöhren soll! :(


    edit: Habe es so


    public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid)
    {
    if(issuerid != INVALID_PLAYER_ID && weaponid == 34)
    {
    if(IsPlayerNPC(playerid))
    {
    SetPlayerHealth(playerid, 0.0);
    }
    }
    return 1;
    }


    Was ist daran falsch! Bot stirbt immer noch nicht!!!!!!!!!!!!!!!!! ?(

    2 Mal editiert, zuletzt von Ronny_Schulz () aus folgendem Grund: bekomme es nicht hin So habe ich es jetzt

  • Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

    ;)


    Bots sterben nicht bei 0HP,
    du musst denen eine Sterbeanimation geben.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Endwerder ich stelle mich gerade echt dumm an oder es klappt würklich nicht so habe ich es jetzt


    SetTimer("Onplayergivedamage",1000, 1);


    public Onplayergivedamage(playerid, issuerid, Float: amount, weaponid)
    {
    if(issuerid != INVALID_PLAYER_ID && weaponid == 34)
    {
    if(IsPlayerNPC(playerid))
    {
    SetPlayerSpecialAction(playerid,SPECIAL_ACTION_HANDSUP);
    }
    }
    return 1;
    }

  • naya, gibt sicher schöneres, tut aber seinen zweck...


    if(newkeys & KEY_FIRE) {
    new id=GetPlayerTargetPlayer(playerid);
    if(id!=INVALID_PLAYER_ID) {
    if(IsPlayerNPC(id)) {
    new damage=GetPVarInt(id, "damage");
    if(damage<80) SetPVarInt(id, "damage", damage+10);
    else {
    if(damage>=80) { //wenn damage zu hoch, dann spieler sterben lassen
    if(IsPlayerInAnyVehicle(id)) RemovePlayerFromVehicle(id); //anim funktioniert im car nicht
    OnPlayerDeath(id, playerid, 47);
    ApplyAnimation(id,"CRACK","crckdeth1",4.1,0,1,1,1,0,1);
    SetTimerEx("kickPlayer", 6000, false, "i", id);
    }
    }
    }
    }
    }


    dazu braucht man aber dann noch die public:


    forward kickPlayer(playerid);
    public kickPlayer(playerid)
    {
    Kick(playerid);
    return 1;
    }

  • Kein Wunder, wenn du oben "IsPlayerNPC(playerid)" schreibst. Dann wird ja überprüft, ob derjenige, wo schiesst, ein NPC ist.


    Schreib einfach "IsPlayerNPC(issuerid)"...

  • Also ich glaub nicht das man einen NPC in samp abkratzen lassen kann. Sowas geht z.B bei MMORPG`s etc.


    Oh mein Gott...

    Wer ist der Mensch hinter der Uniform? Ist euch das bekannt?
    Es ist der selbe der noch eben in Zivil neben euch stand.
    Warum wird er gehasst und so selten respektiert?
    Warum ist er derjenige der seinen Hals für euch riskiert?
    Trägt der Bulle eine Weste, das hat er früher nie gemacht,
    die Zeiten haben sich geändert und jeder Dienst ist ein Kampf!
    Warum gibt’s das SEK und warum sind sie so brutal?
    Und wieso hat wieder einer mit seinem Leben bezahlt?

  • Man kann NPCs nicht Spawnen. Deshalb kann man diese auch nicht Töten & nur per Animation "sterben" lassen, jedoch stehen die NPCs dann an der gleichen stelle wieder auf.


    MfG


    Was für ein Schwachsinn !


    Man kann NPC's mit dieser sterbe animation "sterben" lassen und dann einfach den Bot Kicken und den Bot neuladen, das ist ein "respawn" für ihn ^^


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S