getGround()-Methode

  • Es wäre Super, wenn es eine Methode gäbe, die sagt, wo der Boden ist (Position X Y Z), damit man sich dahin teleportieren kann um z.B. beim Fliegen Abstürze zu verhindern. Zusätzlich zu diesem Methode wäre es auch super, wenn auch gleich dabei wäre, welche Distanz zum Boden.
    Dann weiß mann, wie weit Unten oder Oben man ist.


    Was sagst du @red51!

  • Ich habe nun eine Methode gefunden, um einen Spieler auf den Boden zu teleportieren:


    Java
    public void getPlayerToGround(Player player, int collisionType){
    Vector3f boden = new Vector3f(player.getPosition().x,-1000,player.getPosition().z);
    player.raycast(boden.add(player.getPosition().x,-1000,player.getPosition().z), collisionType, (RayCastResult result) ->{
    if(result != null){
    Vector3f contact = new Vector3f(result.getCollisionPoint().x,result.getCollisionPoint().y + 1, result.getCollisionPoint().z);
    //player.sendTextMessage("Entfernung: " + contact); (MUSS NICHT SEIN)
    player.setPosition(contact);
    }
    });

    Aufgerufen, kann diese Methode z.B. so:


    plugin.getPlayerToGround(player, CollisionType.getBitmask(CollisionType.TERRAIN, CollisionType.CONSTRUCTIONS, CollisionType.OBJECTS));


    Viel Spaß damit! Diese Methode, kann in jedem Plugin genutzt werden!

Participate now!

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