Abend, Ihr kennt sicher den Bug von SAMP, das wenn man als beifahrer aus dem Fenster einen Auto schießt unverletzt bleibt. (Wenn man auf ihn Schießt)
Doch gibt es was wo der Beifahrer leben verliert?
Beifahrer im Auto sterben lassen können?
- Jimmy93432
- Geschlossen
- Erledigt
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
-
-
Vielleicht mit OnPlayerTakeDamage und OnPlayerGiveDamage?
Also du lässt überprüfen wer auf den Beifahrer schießt. Den Schaden gibst du dann per Script dem Beifahrer. So könnte ich mir das jetzt vorstellen.
MfG
-
Sry, da reicht leider meine Scripter Erfahrung nicht aus. Start Hilfe wäre gut
-
Ich bin selbst noch ein Anfänger, könnte es mir wie gesagt nur so logisch erklären. Vielleicht hilft dir das ja weiter:
http://wiki.sa-mp.com/wiki/OnPlayerGiveDamage
http://wiki.sa-mp.com/wiki/OnPlayerTakeDamageMfG
-
Welche script benutzt du den?
-
Undercut was hat das mit dem Script zu tun? Es soll Leute geben die nicht nur GF´s verwenden
-
Jop, mein eigenes.... Hat aber denke ich mit der Frage nicht´s zutun
-
Mach es mit OnPlayerGiveDamage und dann ziehst du dem opfer das leben ab.
-
Wie gesagt ich hatte bisher noch nicht damit zutun Start Hilfe wäre nett.
-
Ich glaube das wird sehr schwierig, da SAMP nicht erkennt das der Beifahrer Schaden nimmt, bzw beschossen wird. Wenn du das Abusen dieses Bugs verhindern möchtest würde ich dir als alternative empfehlen, dass sobald der Fahrer das Fahrzeug verlässt, und der Beifahrer rausschießt, der Beifahrer aus dem Auto geworfen wird.
Ich hoffe ich konnte dir mit einer Alternative helfen, lg
-
Die Alternative ist glaube ich dann noch besser als Garnichts, Danke
-
Naja OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid)
wird aufgerufen wenn die "playerid" in dem fall derjenige der schießt der "damagedid" Schaden ("amount") hinzufügt und zwar mit der entsprechenden "weaponid".Nun musst du ganz einfach abfragen ob die damagerid denn als Beifahrer im autositzt und dann ihm das entsprechende leben abziehen
-
Naja OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid)
wird aufgerufen wenn die "playerid" in dem fall derjenige der schießt der "damagedid" Schaden ("amount") hinzufügt und zwar mit der entsprechenden "weaponid".Nun musst du ganz einfach abfragen ob die damagerid denn als Beifahrer im autositzt und dann ihm das entsprechende leben abziehen
Und woher soll das Script erkennen, dass er nach Rechts zielt und nicht nach Links? -
Joa Simon das ist ja ne ganz tolle Idee, aber wenn der Bug ist, dass der Beifahrer keinen Schaden nimmt bringt es nichts abzufragen ob er Schaden nimmt, verstehst du?
-
Ich habe soweit ich mich errinnern kann das mal getestet mit OnPlayerTakeDamage und OnPlayerGiveDamage.
Dabei ist rausgekommen, soweit ich mich erinnern kann, dass OnPlayerGiveDamage trotzdem aufgerufen wird auch wenn der spieler gar kein Schaden nimmt.
Und zwar war "amount" auch immer so groß, wie der Verletzungswert der Waffe mit der er schießt, das heißt wenn er mit einer Deagle schießt, hat er egal ob der Spieler 20 oder 40 HP verloren hat, immer 40HP angegeben.
Und das auch obwohl er gar kein Schaden genommen hat weil er auf Desktop war.Es war eine idee wie man es lösen könnte, versuchen kann man es ja.
Und woher soll das Script erkennen, dass er nach Rechts zielt und nicht nach Links?
Wie meinst du das? und welchen Spieler meinst du?
Wenn du damit meinst woher ich wissen soll ob der Spieler im auto gerade zielt oder nicht, ich glaube da gibt es eine spezielle Animation die man abfragen kann, bin mir da aber nicht sicher.
Man kann aber auch abfragen ob der Spieler denn Schaden genommen hat indem man seine alte hp serverside speichert und dann bei OnPlayerTakeDamage überprüft.Keine Ahnung ob das klappt aber das wäre nun so eine Idee wie man es eventuell kontrollieren könnte.
-
Abend, Ihr kennt sicher den Bug von SAMP, das wenn man als beifahrer aus dem Fenster einen Auto schießt unverletzt bleibt
Ich verstehe diesen Satz nicht kannst du das vielleicht besser erklären dann kann ich bestimmt helfen.
-
Ich verstehe diesen Satz nicht kannst du das vielleicht besser erklären dann kann ich bestimmt helfen.
Wenn kein Fahrer in einem X Beliebigen Fahrzeug ist, dann kann der Beifahrer aus dem Fenster schießen, wenn aber dieser dann beschossen wird, verliert er kein Leben.
Kurz:
- Kein Fahrer = Beifahrer kann weiterschießen
- Beifahrer wird beschossen = kein - HP -
Wenn kein Fahrer in einem X Beliebigen Fahrzeug ist, dann kann der Beifahrer aus dem Fenster schießen, wenn aber dieser dann beschossen wird, verliert er kein Leben.
Kurz:
- Kein Fahrer = Beifahrer kann weiterschießen
- Beifahrer wird beschossen = kein - HPerstmal kann man das so machen bei onplayerstatechange bei playerstatepassenger macht man eine max_players schleife mit der fragt man einmal ab mit getplayervehicleid ob jemand die selbe hat wie playerid falls ja dann kann er drinne bleiben falls nicht nutzen wir einfach removeplayerfromvehicle ;).
-
Wie frage ich am besten ab, ob kein Fahrer im Fahrzeug ist?
Zudem sollte der Beifahrer nur aus dem Fahrzeug raus geworfen werden, wenn er die Schießhaltung einnimmt.
In dem Gebiet habe ich mich noch nicht zu gut vorgebildet, weiß nur das der Fahrer " PLAYER_STATE_DRIVER " heißt und der Beifahrer " PLAYER_STATE_PASSENGER "
Könnt mir einer da Helfen? -
Du kannst auch komplett ausstellen das er gar nicht erst in der lage ist zu schießen