This site works best with JavaScript enabled. Please enable JavaScript to get the best experience from this site.
A user of http://dev.bukkit.org/bukkit-plugins/arenactf/ provided this error log:https://www.dropbox.com/s/8i9vjzhknudbv03/ArenaCTF_CombatTag_Crash.txt?dl=0
Which I believe can be fixed by overloading the method isInCombat():
com.trc202.CombatTag.CombatTag.isInCombat(String);com.trc202.CombatTag.CombatTag.isInCombat(UUID);
UUID is used for persistency between server resets. It's used for saving player data.
Is this plugin saving player data ? If not, I don't believe UUID is necessary. A String parameter will be sufficient. Since if a player went to Mojang and changed their name, they would have to log out and log back in... in order to display their new name.
If you look at the page here: http://dev.bukkit.org/bukkit-plugins/combat-tag/pages/using-the-api/ you will see that isInCombat accepts a string or player, not a UUID. In any case, the issue is from the creator's import path for the api which is, in his plugin com.trc202.CombatTag.CombatTagApi. It should be com.trc202.CombatTagApi.CombatTagApi
To answer your UUID comment. I use UUIDs because they are preferable to player names in any case. Player names are fine and dandy, but when your plugin has to last through players logging out and back in over a long period of time, then UUIDs are almost required. UUID is used for persistence when players are logging out and back in. It allows me to keep track of who is online or offline and still tagged. If a player logs out tagged, changes their name, and logs back in, if I were only tracking player names then I'd say they were not tagged upon their login. That is why I use UUIDs.
@cheddar262: Go
http://dev.bukkit.org/bukkit-plugins/combat-tag/files/56-combat-tag-v6-1-0-1-7-2/
ArenaCTF was compiled against an older version of ComatTag: versions 6.1.0 or older have a method
com.trc202.CombatTag.CombatTag.isInCombat(String playerName);
This method was removed, which breaks ArenaCTF (and maybe other plugins too). I'm just asking that CombatTag support backwards compatibility with other, older plugins... Some of which are abandoned plugins (like ArenaCTF: The author, Alkarin, no longer develops bukkit plugins, or updates his existing ones). Eventho some of these plugins are abandoned, a lot of people would still like to use them.
So, what i'm suggesting is adding an overloaded method:
package com.trc202.CombatTag; public class CombatTag { // ... public boolean isInCombat(String playerName) { Player player = Bukkit.getPlayer(playerName); isInCombat(player.getUniqueID()); }
What do you think ? Overloaded method that supports older plugins ? I'm not the author of ArenaCTF, so I can't update the imports.
To post a comment, please login or register a new account.