Schusswaffen als Plugin Halbautomatisch/Vollautomatisch

A big new update is now available, introducing biomes, caves and much more!
Latest hotfix: 0.7.0.3 (2024-02-21)
  • Hallo zusammen,


    wie man ein eigenes Itemmodel ins Spiel bringt, es in den Händen ausrichtet und mit Animationen ausstattet, wurde nun durch die Beispielplugins sehr gut beschrieben.


    Ich wollte mal um etwas Hilfe bitten wie es nun bei einer Schusswaffe weitergehen würde im Code.


    Wie wird world.spawnProjectile eingebunden.
    Wie können dauerhaft in einem bestimmten Abstand Projektile geschossen werden beim gedrückt halten der linken Maustaste, wie wird trotz eines Loop ein soundfile korrekt abgespielt.


    Und das die entsprechende Munition im Inventar vorhanden sein muss zum schießen wäre noch ganz gut. :)

  • Du könntest als Grundlage dafür den Code der "PotatoGun" verwenden, darin ist zumindest schonmal das grundsätzliche Schießverhalten implementiert. Prinzipiell müsstest du lediglich den Part entfernen, in dem die Kartoffel gespawnt und "angeschubst" wird, und stattdessen mit der spawnProjectile() Funktion ersetzen. Du müsstest also dort in der "shootProjectile()" Funktion die Zeilen 120 bis 136 entfernen und zB durch sowas ersetzen:
    getWorld().spawnProjectile((byte) 5, weaponPosition, shootingDirection, 1f, true);


    Leider gibt es momentan noch keinen Zugriff über die API auch die Projektildefinitionen, aber ID 5 ist die M14-Kugel (1 == Muskete, 2 == Repetiergewehr, 3 == Pfeil, 4 == nicht-verwendeter Pfeil, 5 == M14 Projektil).


    Du könntest natürlich auch noch einen passenden Soundeffekt abspielen, das wäre zB "m14_shoot".


    Die shootProjectile() Fkt. könnte also zB so aussehen:



    Automatikwaffen sind leider etwas komplizierter, denn sowas ist momentan an die Animation gebunden, d.h. das würde nur mit einer Loop-Animation funktionieren (was auf die M14-Animation leider nicht zutrifft).

Participate now!

Don’t have an account yet? Create a new account now and be part of our community!