ServerPlugin WorldGuard region erkennen/eigene flag erstellen

Dieses Thema im Forum "Programmierung" wurde erstellt von 2801MC, 10. Oktober 2015.

  1. 2801MC
    Offline

    2801MC

    Registriert seit:
    15. August 2013
    Beiträge:
    77
    Hallo,
    ich brauche mal wieder etwas hilfe, ich möchte nach z.b. allen 20 Sekunden, die ein spieler in einer bestimmten worldguard region steht, dass etwas passiert, für das was passieren soll habe ich schon eine Methode geschrieben, diese braucht den namen der region und den spieler! (bzw. der name des spielers würde auch schon reichen, wenns nicht anders geht!)
    Oder wäre das vielleicht irgendwie als eine neue flag machbar?
    Ich habe auch mal was davon gehört, dass es ein plugin gibt, mit dem man einfach eigene flags machen kann, aber ich glaube nicht, dass es dabei das gibt, was ich brauche!

    Danke jetzt schon, für jede hilfe! :)
     
    #1
  2. GPSforLEGENDS
    Offline

    GPSforLEGENDS

    Registriert seit:
    21. März 2014
    Beiträge:
    295
    Ort:
    Bürostuhl
    Minecraft:
    GPSforLEGENDS
    #2
  3. 2801MC
    Offline

    2801MC

    Registriert seit:
    15. August 2013
    Beiträge:
    77
    Danke, aber ich weiß nicht, wie ich überprüfen kann, ob er in einer der regionen ist...
     
    #3
  4. GPSforLEGENDS
    Offline

    GPSforLEGENDS

    Registriert seit:
    21. März 2014
    Beiträge:
    295
    Ort:
    Bürostuhl
    Minecraft:
    GPSforLEGENDS
    Code (Text):
    1. private WorldGuardPlugin getWorldGuard() {
    2.     Plugin plugin = getServer().getPluginManager().getPlugin("WorldGuard");
    3.     // WorldGuard may not be loaded
    4.     if (plugin == null || !(plugin instanceof WorldGuardPlugin)) {
    5.         return null; // Maybe you want throw an exception instead
    6.     }
    7.     return (WorldGuardPlugin) plugin;
    8. }
    Code (Text):
    1. import com.sk89q.worldguard.protection.managers.RegionManager;
    2. import com.sk89q.worldguard.protection.ApplicableRegionSet;
    3. import static com.sk89q.worldguard.bukkit.BukkitUtil.*;
    4. WorldGuardPlugin worldGuard = getWorldGuard();
    5. Vector pt = toVector(block); // This also takes a location
    6. RegionManager regionManager = worldGuard.getRegionManager(world);
    7. ApplicableRegionSet set = regionManager.getApplicableRegions(pt);
    Code (Text):
    1. for (ProtectedRegion region : set) {
    2.     // region here
    3. }
    Welche Stelle verstehst du nicht?
     
    #4
  5. 2801MC
    Offline

    2801MC

    Registriert seit:
    15. August 2013
    Beiträge:
    77
    Ich verstehe nicht, wie ich es mache, dass in einer variable gespeichert wird, in welcher region der spieler gerade steht... bzw. in welchen regionen...
    Und ich weiß nicht, wie das mit dem scheduler geht, weil ich brauchte den bis jetzt noch nie...
     
    #5
  6. GPSforLEGENDS
    Offline

    GPSforLEGENDS

    Registriert seit:
    21. März 2014
    Beiträge:
    295
    Ort:
    Bürostuhl
    Minecraft:
    GPSforLEGENDS
    Beim PlayerMoveEvent einfach den Code nutzen, den ich oben gepostet habe (Muss etwas abgeändert werden). Die Variable mit den Regionen ist set
    http://wiki.bukkit.org/Scheduler_Programming/de
     
    #6
  7. 2801MC
    Offline

    2801MC

    Registriert seit:
    15. August 2013
    Beiträge:
    77
    Ok, ich glaube ich habe es jetzt verstanden, danke! :)
     
    #7