Posts by Minotorious

    It is not illegal (at least in the US, in europe it is) to do it and the tools to do it are nowadays freely available on the web.


    To avoid it you can use methods such as obfuscation but since plugins are no commercial application under copyright law I find it pointless to go to such lengths to hide your code. And in case you want to submit a copyright claim for your plugin again it is not illegal for someone to decompile the code and read it, but it is illegal for them to use the code they read. ;)


    e.g. the Rising World code is more or less fully decompilable and clearly readable, me and a few other community members have tried it out of curiosity and to admire red51's coding skills :D Again I repeat the fact that you can see the code doesn't mean you are allowed to use it. Rising World and JIW are registered Trademarks and fall under copyright law so if someone uses the code they see they can be sued depending where they come from even in their own country's judicial system, else there are international courts that try such cases.


    PS: sorry for the answer in english my german is not good enough for such legal stuff :/

    du solltest jeder Spieler im Area mit /addplayertoarea Gruppe SpielerName hinzufügen.
    e.g. /addplayertoarea Admin florian12261995


    die meistbenutzte Gruppe sind: Admin, Owner (nur 1 Spieler), Friend


    Wenn du die /addplayertoarea Kommando nutzst du solltest im Area sein ;)

    Das ist kein plugin aber ein Lua script, du solltest es im scripts ordner stellen ;)


    dann:
    1) /selectarea
    1.1) links click start punkt
    1.2) links click end punkt
    1.3) Größenänderung mit Pfeiltasten und PgUp/PgDn
    2) /createarea AreaName
    3) /addplayertoarea Gruppe SpielerName


    Hoffe es hilft :)

    What do you mean by if my routine worked? The code I posted above is fully functional and works inside the onPlayerSpawnEvent or the onPlayerCommandEvent.


    If the player you are trying to access is currently online you can get them via:


    Player player = getServer().getPlayer(playerName)
    UIDtest = player.getUID();


    This will work no matter if you call it in an event or a completely unrelated method.


    if the player is not online then there is no way to get their UID without accessing the world database

    Tbh I would like to also see the equivalent setWidth, and setHeight methods for labels as well as setTextAllignment methods wich will be then needed to control where the text will appear on the label.


    Currently the only way I can see to create a button of set size but with text on it is to first create a GuiImage to have the button border at a set size and then create a GuiLabel on that GuiImage to have the text label in the middle of the button. Then in my GuiListener have an if loop on the GuiClickEvent for either the label or the image being clicked to do the action my button needs to do.


    If I could set the label to the size I wanted then there would be no need for the extra GuiImage to create the border. I think that having the labels take the size of the text they hold by default without the ability to change it is a huge limitation in the current java API

    Now, firstly, is this already possible? In which case show me the way to Tipperary!

    Through the API you can shutdown the server but you cannot restart it after atm

    Step 2, stop any new connections to the server (not sure if this is possible? maybe set max players to 0?)

    Well you can use the .setCancelled(true) method in the PlayerConnectEvent for this ;)

    Step 4, restart server script (not sure how to automate via java? (which is preferable)

    There are some restart scripts on the forum but none for java, server restarts are moslty done via shell commands, not sure if SteamCMD has any options like that too :/

    oh just looked at your routines slightly .. not sure I am ready for prepared statements I am jut into string commands right now.. .. ooouf

    well a prepared statement is nothing more than a string statement to be executed on an SQLite or MySQL database. The point of using prepared statements is to avoid SQL injection attacks on the database, so it is nothing fancy just a way to stop people from messing with the database

    Much stress is created with the inability to bring your mount through a portal. It is restricting peoples decisions to travel and explore greater distances.

    This is probably my bad (at least if you are using my Portals plugin), will check if I can solve it and somehow teleport the horse too through the portals :D

    I will give you an example of something similar I have done for my new version of ServerTools (not yet released as it is not ready :D )


    I have a database with two columns PlayerName and PlayerUID. Then I have two methods one that inserts a new entry in the database and one that updates the name of the player based on their UID in case they log in the server with a different name.


    Method 1: Insert a new entry

    Method 2: Update Nam


    in my onSpawnEvent I have these two lines to check the name and update it using method 2 above

    Java
    if (!player.getName().equals(currentplayerName)){ //Note currentplayerName comes from the database i.e. it is the old, already stored name
    changePlayerNameInAutoGM1List(player.getUID(), player.getName());
    }

    And in my onCommandEvent I have this line to add the player to the database once they type my command:

    Java
    setInAutoGM1List(player.getUID(), player.getName());